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

Make it easier to manually trigger CI runs on third party PRs #135

Open
bensze01 opened this issue Oct 12, 2023 · 2 comments
Open

Make it easier to manually trigger CI runs on third party PRs #135

bensze01 opened this issue Oct 12, 2023 · 2 comments
Labels
enhancement New feature or request

Comments

@bensze01
Copy link
Contributor

Currently triggering a manual CI run on third party PRs requires a developer to navigate to various pages of the Classis Jenkins UI and search for the PR by its number, then click the "Launch new build" button. This issue gathers some options we could implement to make this user experience better.

Ordered from easiest to implement to hardest to implement:

  • Send a status report to GitHub when a new commit is pushed to a third party PR
    • Developer flow: "details" on status notification, then click the replay button
      • Since clicking the replay button is a user action, the current filtering logic will let the replayed build run
    • Since each status notification is associated with a commit hash natively, we can handle the per-hash allowlisting of PR commits without needing the developer to input hashes manually
  • Send status report with custom target URL
    • Developer flow: Clicking on the "details" URL launches a new build automatically
      • Pros: One less click! + the pros of the solution above
      • Cons: No way to rename the link, "Details" might be misleading
        • Explain the function of the URL in the Context/Description of the status
  • Triggering the CI build using a specially formatted developer comment
    • Needs extra logic to associate with commit hash
      • Manual copying of hash by developers seems cumbersome
  • Trigger CI build upon review approval by a team member
    • Needs extra logic to associate review approval with commit hashes
  • Implement a custom button using the Checks API
@bensze01 bensze01 added the enhancement New feature or request label Oct 12, 2023
@tom-cosgrove-arm
Copy link
Contributor

Needs extra logic to associate with commit hash

For both of these, can't it just be based on timestamps, i.e. special comment or approval that is more recent than the commit, and CI hasn't run on that commit? i.e. all we want to do is avoid running the CI on a commit that is newer than the comment or the approval

@gilles-peskine-arm
Copy link
Contributor

Triggering the CI build using a specially formatted developer comment

This has my preference. It doesn't involve any navigation of CI systems. It means I don't need to be on the internal Arm network to start on the internal CI. It makes the association between the approved commit ID and the commit ID that the CI will pick straightforward.

Manual copying of hash by developers seems cumbersome

It's easy to grab the hash from the github interface. Just please allow copy-pasting the whole URL.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants