-
Notifications
You must be signed in to change notification settings - Fork 555
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
Commercial bundle updater 0% test #27578
Conversation
0088f55
to
82d946c
Compare
0a2fd77
to
133db01
Compare
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.
Just to clarify my understanding based on the PR description and the CommercialBundle.scala file: The frontend will fetch the commercial bundle URL from the parameter store and cache it, instead of using the version from package.json. The key in the parameter store will be updated by a Riff-Raff deploy in the commercial repo. Is this correct?
Overall, the changes look good to me. Approving the PR.
Seen on FRONTS-PROD (merged by @Jakeii 12 minutes and 15 seconds ago)
|
Seen on ADMIN-PROD (merged by @Jakeii 12 minutes and 24 seconds ago)
|
What does this change?
Add a 0% test that will fetch the commercial bundle url from parameter store and cache it for 1 minute instead of using the version from
package.json
, the key in parameter store will be updated by a riff-raff deploy in the commercial repo (corresponding PR guardian/commercial#1693).Why
Deploying commercial at the moment is a very arduous process with poor developer experience, it requires adding a changeset, releasing a version, waiting 3 times for checks to run in the commercial repo (feature PR, version bump PR and on main). Then bumping the version here in frontend rebuilding and redeploying the entirety of this project just to change a script on the page.
We can use riff-raff and cloudformation to upload the commercial bundle to S3 and set a parameter store key with it's current hashed url, which frontend will can read, which will allow practically instant deploys!