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鈥檒l occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add new build pipeline #2735
Add new build pipeline #2735
Conversation
c3d3c66
to
d6cd599
Compare
This PR merely lays out the foundation for the test, but doesn't enable it. I plan to do this in a follow-up PR. The order of operations I intend is:
|
Note to self: update |
e52abac
to
1241617
Compare
馃煝 No significant changes to |
@BPScott @AndrewMusgrave @tmlayton @danrosenthal @daniedleroux @kyledurand @alex-page Hey team, this is the PR updating the consumer build test You don't need to comment on this if you don't feel comfortable giving feedback on it, but I thought it would be good for you to be aware of these changes. If you have any questions feel free to ask! It seems like there's some interest around this, so I'll also be creating a meeting to go over what it took to ship this, and hopefully giving some insight into how Shopify's infrastructure is managed and orchestrated. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
馃槏
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few things inline.
Also, naming is annoying - we've been grumbling about 'polaris' being an overloaded word - would naming the pipeline polaris-react-system-integration-test
or something that's not just polaris-...
help with that?
86b50b5
to
9eeb75f
Compare
- Rename "Consumer Build Test" -> "System Integration Test" - Rename pipeline "polaris-react" -> "polaris-system-integration-test" - Pipeline now builds and uploads assets to GCP using a custom bucket and IAM auth key created solely for this purpose - After uploading asset, triggers a build in web that downloads said asset from GCP and uses it - Reports results in polaris-react's pipeline
23960b3
to
886c6b4
Compare
Just waiting for CI to be green before merging |
WHY are these changes introduced?
The consumer build test has long been an unstable part of polaris-react's CI. We meant to introduce the current test as a temporary measure to improve shipping confidence, while also working on an improved version of the test that was more reliable. This is that version.
In the first implementation of the test, we duplicated web's Buildkite pipeline in polaris-react, and ran a build there. The problems with this are:
This PR addresses this by building web in web's pipeline, and building polaris-react in polaris-react's pipeline. By separating the environments, we solve the problems outlined above.
WHAT is this pull request doing?
The new test works as follows:
yarn pack
, to create a package similar to what is uploaded to npmI also created a web pipeline over at https://github.com/Shopify/web/pull/23433. This pipeline runs the same as any other web pipeline, but it downloads and installs the package we uploaded to the bucket earlier.
Improvements to the test:
How to 馃帺
Trigger a new build here:
https://buildkite.com/shopify/polaris-system-integration-test