Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Plugin manager inside Jenkins does not show latest platformlabeler release #4148

Closed
MarkEWaite opened this issue Jun 23, 2024 · 10 comments
Closed
Assignees

Comments

@MarkEWaite
Copy link

MarkEWaite commented Jun 23, 2024

Service(s)

Update center

Summary

Latest release of platformlabeler plugin is not visible in Jenkins plugin manager or in plugin installation manager tool

Reproduction steps

A new platform labeler plugin release 2596.v4304971d3eb_b_ was created about 11 hours ago. When I open https://updates.jenkins.io/latest/platformlabeler.hpi?mirrorlist it shows that the new release is visible on 10 Jenkins mirrors. The new release is visible on plugins.jenkins.io . The update center JSON file includes an entry for the release:

      "name": "platformlabeler",
      "popularity": 235,
      "previousTimestamp": "2023-11-18T16:59:23.00Z",
      "previousVersion": "2325.v8f074df8840d",
      "releaseTimestamp": "2024-06-23T12:11:53.00Z",
      "requiredCore": "2.426.3",
      "scm": "https://github.com/jenkinsci/platformlabeler-plugin",
      "sha1": "5UGoh0ozyjx5Y8HlnrSdE18XSLk=",
      "sha256": "fOcdUYUPg3XYRtsxnr1n7IC8gSFQdMuQEGzTYo6IMf8=",
      "size": 35840,
      "title": "Platform Labeler",
      "url": "https://updates.jenkins.io/download/plugins/platformlabeler/2596.v4304971d3eb_b_/platformlabeler.hpi",
      "version": "2596.v4304971d3eb_b_",
      "wiki": "https://plugins.jenkins.io/platformlabeler"

However, the release is not displayed in the Jenkins plugin manager as a new release. The Jenkins plugin installation manager tool does not detect the new release of the plugin as an available update.

When the plugin installation manager tool requests the list of plugins, it seems to use the URL https://updates.jenkins.io/update-center.actual.json?version=2.452.2 . The contents of that URL does not include the most recent release of the platformlabeler plugin.

I assume some part of the update center processing is failing.

@MarkEWaite MarkEWaite added the triage Incoming issues that need review label Jun 23, 2024
@dduportal dduportal self-assigned this Jun 24, 2024
@dduportal dduportal added this to the infra-team-sync-2024-06-25 milestone Jun 24, 2024
@dduportal dduportal removed the triage Incoming issues that need review label Jun 24, 2024
@dduportal
Copy link
Contributor

  • Confirmed you are correct: the update_center2 job is failing since a few hours/days (1-2 days?) on trusted.ci
  • Found the following root cause in the error logs of the job:
ERROR: AADSTS7000222: The provided client secret keys for app **** are expired. Visit the Azure portal to create new keys for your app: https://aka.ms/NewClientSecret, or consider using certificate credentials for added security: https://aka.ms/certCreds. Trace ID: a03316bb-fbb5-4287-bcb8-71449cb77500 Correlation ID: 1aef7333-ef83-45d0-a221-95369f976465 Timestamp: 2024-06-24 07:37:24Z

=> there is an expired Azure SP. Work in progress to fix it as top priority

@dduportal
Copy link
Contributor

dduportal commented Jun 24, 2024

The Azure SP marked as expired is the one used for file storage (it is NOT the one updated in jenkins-infra/azure#712).

The file share is defined by the following module named trusted_ci_jenkins_io_fileshare_serviceprincipal_writer: https://github.com/jenkins-infra/azure/blob/4c8cf5ec70512fa8e7da96ce61254f33f7350707/trusted.ci.jenkins.io.tf#L76-L87

@dduportal
Copy link
Contributor

dduportal commented Jun 24, 2024

The Azure SP marked as expired is the one used for file storage (it is NOT the one updated in jenkins-infra/azure#712).

The file share is defined by the following module named trusted_ci_jenkins_io_fileshare_serviceprincipal_writer: https://github.com/jenkins-infra/azure/blob/4c8cf5ec70512fa8e7da96ce61254f33f7350707/trusted.ci.jenkins.io.tf#L76-L87

Aaaand the expiry date is 2024-06-20T19:00:00Z: https://github.com/jenkins-infra/azure/blob/4c8cf5ec70512fa8e7da96ce61254f33f7350707/trusted.ci.jenkins.io.tf#L83 which explains the error

@dduportal
Copy link
Contributor

  • Short term fix:
    • Manage the expiry date with the new Terraform Azure YAML setup - @lemeurherve
    • Track expiry date with updatecli (PR body pointing to here for now - short term) - @lemeurherve
    • Update SP from the new automated PR - @dduportal (with screen recording)
  • Long term fix:
    • Update the updatecli PR body from screen recording to get proper instruction

lemeurherve added a commit to jenkins-infra/azure that referenced this issue Jun 24, 2024
…ates to `updatecli/values.yaml` (#748)

This PR moves `trusted.ci.jenkins.io.tf` service principal writer end
dates to `updatecli/values.yaml`.

A dedicated updatecli manifest will be added in a follow-up pull request
so it can be properly validated. (Will adapt the existing manifest at
the same time)

Ref:
-
jenkins-infra/helpdesk#4148 (comment)
dduportal pushed a commit to jenkins-infra/azure that referenced this issue Jun 24, 2024
…rincipal writer end-dates (#749)

This PR adds a manifest to track the File Share service principal writer
end dates defined in trusted.ci.jenkins.io.tf file.

Follow-up of:
- #748

Ref:
-
jenkins-infra/helpdesk#4148 (comment)
@dduportal
Copy link
Contributor

Update:

dduportal pushed a commit to jenkins-infra/azure that referenced this issue Jun 24, 2024
…rvice principal writer on trusted.ci.jenkins.io (#751)

This PR updates the end date of updates.jenkins.io File Share service
principal writer used in trusted.ci.jenkins.io.

The current end date is set to `2024-06-20T19:00:00Z`.

After merging this PR, a new password will be generated.

> [!IMPORTANT]
> You'll have to ensure that `TODO: to be identified, related to
updates.jenkins.io` is updated with this new password!

If you don't, updates.jenkins.io File Share won't be updated by
trusted.ci.jenkins.io jobs anymore.

> [!NOTE]
> This message is a work in progress that needs to be improved
> Check jenkins-infra/helpdesk#4148 for the
next steps.


---



<Actions>
<action
id="b5fb1e71d1df97c82b35e01fd5134623e0b6966675ef4045788014d42ab4d03e">
<h3>Generate new end date for updates.jenkins.io File Share service
principal writer</h3>
<details
id="4191ba5f46dbb754c1e7d30549ffcee986a6a05817c850ea79cf471743ba992d">
<summary>generate new end date 2024-09-22 for updates.jenkins.io File
Share service principal writer on trusted.ci.jenkins.io</summary>
<p>change detected:&#xA;&#x9;* key
&#34;$.end_dates.trusted_ci_jenkins_io.trusted_ci_jenkins_io_fileshare_serviceprincipal_writer.end_date&#34;
updated from &#34;\&#34;2024-06-20T19:00:00Z\&#34;&#34; to
&#34;2024-09-22T00:00:00Z&#34;, in file
&#34;updatecli/values.yaml&#34;</p>
        </details>
<a
href="https://infra.ci.jenkins.io/job/updatecli/job/azure/job/main/270/">Jenkins
pipeline link</a>
    </action>
</Actions>

---

<table>
  <tr>
    <td width="77">
<img src="https://www.updatecli.io/images/updatecli.png" alt="Updatecli
logo" width="50" height="50">
    </td>
    <td>
      <p>
Created automatically by <a
href="https://www.updatecli.io/">Updatecli</a>
      </p>
      <details><summary>Options:</summary>
        <br />
<p>Most of Updatecli configuration is done via <a
href="https://www.updatecli.io/docs/prologue/quick-start/">its
manifest(s)</a>.</p>
        <ul>
<li>If you close this pull request, Updatecli will automatically reopen
it, the next time it runs.</li>
<li>If you close this pull request and delete the base branch, Updatecli
will automatically recreate it, erasing all previous commits made.</li>
        </ul>
        <p>
Feel free to report any issues at <a
href="https://github.com/updatecli/updatecli/issues">github.com/updatecli/updatecli</a>.<br
/>
If you find this tool useful, do not hesitate to star <a
href="https://github.com/updatecli/updatecli/stargazers">our GitHub
repository</a> as a sign of appreciation, and/or to tell us directly on
our <a
href="https://matrix.to/#/#Updatecli_community:gitter.im">chat</a>!
        </p>
      </details>
    </td>
  </tr>
</table>

Co-authored-by: Jenkins Infra Bot (updatecli) <[email protected]>
dduportal pushed a commit to jenkins-infra/azure that referenced this issue Jun 24, 2024
…Share service principal writer on trusted.ci.jenkins.io (#752)

This PR updates the end date of updates.jenkins.io (httpd) File Share
service principal writer used in trusted.ci.jenkins.io.

The current end date is set to `2024-06-20T19:00:00Z`.

After merging this PR, a new password will be generated.

> [!IMPORTANT]
> You'll have to ensure that `TODO: to be identified, related to
updates.jenkins.io (httpd)` is updated with this new password!

If you don't, updates.jenkins.io (httpd) File Share won't be updated by
trusted.ci.jenkins.io jobs anymore.

> [!NOTE]
> This message is a work in progress that needs to be improved
> Check jenkins-infra/helpdesk#4148 for the
next steps.


---



<Actions>
<action
id="0a91c498b152abfdc7bbbacffc13c2e1d6a572d3c8d382bf9d883e7b21d72184">
<h3>Generate new end date for updates.jenkins.io (httpd) File Share
service principal writer</h3>
<details
id="4191ba5f46dbb754c1e7d30549ffcee986a6a05817c850ea79cf471743ba992d">
<summary>generate new end date 2024-09-22 for updates.jenkins.io (httpd)
File Share service principal writer on trusted.ci.jenkins.io</summary>
<p>change detected:&#xA;&#x9;* key
&#34;$.end_dates.trusted_ci_jenkins_io.trustedci_updates_jenkins_io_httpd_fileshare_serviceprincipal_writer.end_date&#34;
updated from &#34;\&#34;2024-06-20T19:00:00Z\&#34;&#34; to
&#34;2024-09-22T00:00:00Z&#34;, in file
&#34;updatecli/values.yaml&#34;</p>
        </details>
<a
href="https://infra.ci.jenkins.io/job/updatecli/job/azure/job/main/270/">Jenkins
pipeline link</a>
    </action>
</Actions>

---

<table>
  <tr>
    <td width="77">
<img src="https://www.updatecli.io/images/updatecli.png" alt="Updatecli
logo" width="50" height="50">
    </td>
    <td>
      <p>
Created automatically by <a
href="https://www.updatecli.io/">Updatecli</a>
      </p>
      <details><summary>Options:</summary>
        <br />
<p>Most of Updatecli configuration is done via <a
href="https://www.updatecli.io/docs/prologue/quick-start/">its
manifest(s)</a>.</p>
        <ul>
<li>If you close this pull request, Updatecli will automatically reopen
it, the next time it runs.</li>
<li>If you close this pull request and delete the base branch, Updatecli
will automatically recreate it, erasing all previous commits made.</li>
        </ul>
        <p>
Feel free to report any issues at <a
href="https://github.com/updatecli/updatecli/issues">github.com/updatecli/updatecli</a>.<br
/>
If you find this tool useful, do not hesitate to star <a
href="https://github.com/updatecli/updatecli/stargazers">our GitHub
repository</a> as a sign of appreciation, and/or to tell us directly on
our <a
href="https://matrix.to/#/#Updatecli_community:gitter.im">chat</a>!
        </p>
      </details>
    </td>
  </tr>
</table>

Co-authored-by: Jenkins Infra Bot (updatecli) <[email protected]>
@dduportal
Copy link
Contributor

Update:

@dduportal
Copy link
Contributor

Update: build 911315 of update_center2 succeeded

@dduportal
Copy link
Contributor

  • 3 builds in a row succeeding \o/
  • The plugin is now available on ci.jenkins.io:
Capture d’écran 2024-06-24 à 15 09 03

Next step before closing: updating the PR body for the credential expiry in jenkins-infra/azure#753 to give instructions

@MarkEWaite
Copy link
Author

Thanks very much! I've confirmed that there are now 3 plugin updates waiting for my controller through the Jenkins plugin manager page:

  • Pipeline graph view
  • Platform labeler
  • Build timeout

Same results for plugin installation manager tool.

Thanks again!

@dduportal
Copy link
Contributor

dduportal commented Jun 24, 2024

The crawler job is also successful again

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants