jenkinsci / gitlab-plugin

A Jenkins plugin for interfacing with GitLab
https://plugins.jenkins.io/gitlab-plugin/
GNU General Public License v2.0
1.44k stars 614 forks source link

`insufficient_scope` error with a correctly configured token #1698

Closed CastilloDel closed 1 week ago

CastilloDel commented 1 week ago

Jenkins and plugins versions report

Environment Jenkins: 2.462.1 OS: Linux - 5.14.0-362.13.1.el9_3.x86_64 Java: 17.0.10 - Eclipse Adoptium (OpenJDK 64-Bit Server VM) --- antisamy-markup-formatter:162.v0e6ec0fcfcf6 apache-httpcomponents-client-4-api:4.5.14-208.v438351942757 asm-api:9.7-33.v4d23ef79fcc8 authentication-tokens:1.119.v50285141b_7e1 blueocean:1.27.14 blueocean-autofavorite:1.2.5 blueocean-bitbucket-pipeline:1.27.14 blueocean-commons:1.27.14 blueocean-config:1.27.14 blueocean-core-js:1.27.14 blueocean-dashboard:1.27.14 blueocean-display-url:2.4.3 blueocean-events:1.27.14 blueocean-git-pipeline:1.27.14 blueocean-github-pipeline:1.27.14 blueocean-i18n:1.27.14 blueocean-jira:1.27.14 blueocean-jwt:1.27.14 blueocean-personalization:1.27.14 blueocean-pipeline-api-impl:1.27.14 blueocean-pipeline-editor:1.27.14 blueocean-pipeline-scm-api:1.27.14 blueocean-rest:1.27.14 blueocean-rest-impl:1.27.14 blueocean-web:1.27.14 bootstrap5-api:5.3.3-1 bouncycastle-api:2.30.1.78.1-248.ve27176eb_46cb_ branch-api:2.1178.v969d9eb_c728e build-monitor-plugin:1.14-908.vd91a_186b_9121 build-timeout:1.33 caffeine-api:3.1.8-133.v17b_1ff2e0599 categorized-view:1.13 checks-api:2.2.0 cloudbees-bitbucket-branch-source:888.v8e6d479a_1730 cloudbees-folder:6.942.vb_43318a_156b_2 command-launcher:115.vd8b_301cc15d0 commons-lang3-api:3.16.0-82.ve2b_07d659d95 commons-text-api:1.12.0-129.v99a_50df237f7 configuration-as-code:1849.v3a_d20568000a_ credentials:1371.vfee6b_095f0a_3 credentials-binding:681.vf91669a_32e45 dashboard-view:2.517.v776a_b_811a_b_4e data-tables-api:2.1.4-1 deploy:1.16 display-url-api:2.204.vf6fddd8a_8b_e9 docker-commons:443.v921729d5611d docker-compose-build-step:1.0 docker-workflow:580.vc0c340686b_54 durable-task:568.v8fb_5c57e8417 echarts-api:5.5.1-1 eddsa-api:0.3.0-4.v84c6f0f4969e email-ext:1814.v404722f34263 favorite:2.221.v19ca_666b_62f5 font-awesome-api:6.6.0-1 git:5.4.1 git-client:5.0.0 git-server:126.v0d945d8d2b_39 github:1.40.0 github-api:1.321-468.v6a_9f5f2d5a_7e github-branch-source:1797.v86fdb_4d57d43 gitlab-api:5.6.0-97.v6603a_83f8690 gitlab-branch-source:704.vc7f1202d7e14 gitlab-plugin:1.8.1 gradle:2.12.1 gravatar:100.v01b_7c57f04fb_ gson-api:2.11.0-41.v019fcf6125dc handy-uri-templates-2-api:2.1.8-30.v7e777411b_148 htmlpublisher:1.36 instance-identity:185.v303dc7c645f9 ionicons-api:74.v93d5eb_813d5f jackson2-api:2.17.0-379.v02de8ec9f64c jakarta-activation-api:2.1.3-1 jakarta-mail-api:2.1.3-1 javax-activation-api:1.2.0-7 javax-mail-api:1.6.2-10 jaxb:2.3.9-1 jdk-tool:80.v8a_dee33ed6f0 jenkins-design-language:1.27.14 jersey2-api:2.44-151.v6df377fff741 jira:3.13 jjwt-api:0.11.5-112.ve82dfb_224b_a_d joda-time-api:2.12.7-29.v5a_b_e3a_82269a_ jquery3-api:3.7.1-2 jsch:0.2.16-86.v42e010d9484b_ json-api:20240303-41.v94e11e6de726 json-path-api:2.9.0-58.v62e3e85b_a_655 junit:1296.vb_f538b_c88630 ldap:725.v3cb_b_711b_1a_ef lockable-resources:1255.vf48745da_35d0 mailer:472.vf7c289a_4b_420 mapdb-api:1.0.9-40.v58107308b_7a_7 matrix-auth:3.2.2 matrix-project:832.va_66e270d2946 mattermost:3.1.3 mina-sshd-api-common:2.13.2-125.v200281b_61d59 mina-sshd-api-core:2.13.2-125.v200281b_61d59 oic-auth:4.303.v84089a_708ea_7 okhttp-api:4.11.0-172.vda_da_1feeb_c6e pam-auth:1.11 pipeline-build-step:540.vb_e8849e1a_b_d8 pipeline-github-lib:61.v629f2cc41d83 pipeline-graph-analysis:216.vfd8b_ece330ca_ pipeline-groovy-lib:730.ve57b_34648c63 pipeline-input-step:495.ve9c153f6067b_ pipeline-milestone-step:119.vdfdc43fc3b_9a_ pipeline-model-api:2.2205.vc9522a_9d5711 pipeline-model-definition:2.2205.vc9522a_9d5711 pipeline-model-extensions:2.2205.vc9522a_9d5711 pipeline-rest-api:2.34 pipeline-stage-step:312.v8cd10304c27a_ pipeline-stage-tags-metadata:2.2205.vc9522a_9d5711 pipeline-stage-view:2.34 plain-credentials:183.va_de8f1dd5a_2b_ plugin-util-api:4.1.0 prism-api:1.29.0-17 publish-over:0.22 publish-over-ssh:1.25 pubsub-light:1.18 resource-disposer:0.23 scm-api:696.v778d637b_a_762 script-security:1354.va_70a_fe478c7f snakeyaml-api:2.2-121.v5a_68b_9300b_d4 sse-gateway:1.27 ssh-agent:376.v8933585c69d3 ssh-credentials:343.v884f71d78167 ssh-slaves:2.973.v0fa_8c0dea_f9f sshd:3.330.vc866a_8389b_58 structs:338.v848422169819 subversion:1275.va_7b_014f3fc2c thinBackup:2.1.1 timestamper:1.27 token-macro:400.v35420b_922dcb_ trilead-api:2.147.vb_73cc728a_32e variant:60.v7290fc0eb_b_cd workflow-aggregator:600.vb_57cdd26fdd7 workflow-api:1336.vee415d95c521 workflow-basic-steps:1058.vcb_fc1e3a_21a_9 workflow-cps:3946.v7935cb_edb_f82 workflow-durable-task-step:1371.vb_7cec8f3b_95e workflow-job:1436.vfa_244484591f workflow-multibranch:795.ve0cb_1f45ca_9a_ workflow-scm-step:427.v4ca_6512e7df1 workflow-step-api:678.v3ee58b_469476 workflow-support:920.v59f71ce16f04 ws-cleanup:0.46 xvfb:1.2

What Operating System are you using (both controller, and any agents involved in the problem)?

Linux 5.14.0-362.13.1.el9_3.x86_64 Red Hat Enterprise Linux 9.3

Reproduction steps

I was trying to setup the Gitlab Jenkins integration. I followed the instructions in https://github.com/jenkinsci/gitlab-plugin/tree/master#jenkins-to-gitlab-authentication. I tried to setup a personal token and a group token, with only the api scope or with all the available scopes.

Expected Results

I expected Jenkins to be able to notify gitlab of the status of the pipeline.

Actual Results

Gitlab can't get the status of the pipeline and looking at the logs from Jenkins I get this:

2024-09-30 09:19:38.426+0000 [id=56193142]      INFO    c.d.g.webhook.GitLabWebHook#getDynamic: WebHook called with url: /project/EDAQ
2024-09-30 09:19:39.327+0000 [id=56292209]      INFO    i.j.p.g.h.GitLabPipelineStatusNotifier$JobScheduledListener#lambda$onEnterWaiting$0: Querying the current revision of branch testito...
2024-09-30 09:19:39.445+0000 [id=56292209]      INFO    i.j.p.g.h.GitLabPipelineStatusNotifier$JobScheduledListener#lambda$onEnterWaiting$0: Current revision of branch testito is f2c9a30779fe433f1e7dde8e85c490beb5960ed6
2024-09-30 09:19:39.445+0000 [id=56292209]      INFO    i.j.p.g.h.GitLabPipelineStatusNotifier$JobScheduledListener#lambda$onEnterWaiting$0: Notifying branch pending build EDAQ/testito
2024-09-30 09:19:39.539+0000 [id=56292209]      WARNING i.j.p.g.h.GitLabPipelineStatusNotifier$JobScheduledListener#lambda$onEnterWaiting$0: Exception caught: insufficient_scope

Anything else?

No

Are you interested in contributing a fix?

Just reporting it

CastilloDel commented 1 week ago

I'll close this. In the end, it was caused because this plugin and other gitlab plugin (I think it is https://plugins.jenkins.io/gitlab-api/) create different Gitlab sections in the Jenkins options.