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

CI (Buildkite): on pull request builds, build the merge commit (e.g. refs/pull/1234/merge) #42403

Closed
wants to merge 6 commits into from

Conversation

DilumAluthge
Copy link
Member

No description provided.

@DilumAluthge DilumAluthge added domain:ci Continuous integration backport 1.6 Change should be backported to release-1.6 backport 1.7 labels Sep 28, 2021
@DilumAluthge DilumAluthge requested a review from a team as a code owner September 28, 2021 04:24
@DilumAluthge DilumAluthge removed the request for review from a team September 28, 2021 04:24
@DilumAluthge
Copy link
Member Author

DilumAluthge commented Sep 28, 2021

@staticfloat If master advances after the packager starts (but before the tester starts), the SHA of the merge commit changes. Then when the tester tries to download the artifact, it has a different filename than the file uploaded by the packager.

@DilumAluthge
Copy link
Member Author

What we really want is a way to:

  1. At the beginning of the build, get the SHA of the merge commit.
  2. Use that same SHA for all jobs in the build, regardless of when they start.

@staticfloat
Copy link
Sponsor Member

Easiest fix; just use wildcards with buildkite-agent artifact download.

@DilumAluthge
Copy link
Member Author

Easiest fix; just use wildcards with buildkite-agent artifact download.

Yeah I think this is the easiest solution. I'll also have to use wildcards a few other places, e.g. when I rename julia-COMMIT-linux64.tar.gz to julia-latest-linux64.tar.gz before uploading it to S3.

@giordano
Copy link
Contributor

What happens if there is a merge conflict?

@DilumAluthge
Copy link
Member Author

What happens if there is a merge conflict?

On other CI providers (e.g. Travis), CI will not start if there is a merge conflict.

For us, we can decide whether we want to:

  1. Error out.
  2. Run CI on the PR head branch instead.

Copy link
Sponsor Member

@staticfloat staticfloat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I vote that we error out if we can't find a merge commit.

.buildkite/utilities/merge_commit/merge_commit.sh Outdated Show resolved Hide resolved
Co-authored-by: Elliot Saba <staticfloat@gmail.com>
@DilumAluthge
Copy link
Member Author

I'm closing this PR in favor of using the new plugin: https://github.com/JuliaCI/merge-commit-buildkite-plugin

@DilumAluthge DilumAluthge deleted the dpa/buildkite-merge-commit branch November 16, 2021 01:31
@KristofferC KristofferC removed the backport 1.6 Change should be backported to release-1.6 label Nov 19, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
domain:ci Continuous integration
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants