Page MenuHomePhabricator

[CI] Add `backup_build` workflow to Buildkite/GH Actions
ClosedPublic

Authored by atul on Jun 28 2022, 11:11 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Dec 26, 5:29 PM
Unknown Object (File)
Thu, Dec 26, 7:28 AM
Unknown Object (File)
Sat, Dec 21, 2:58 AM
Unknown Object (File)
Sat, Dec 21, 2:01 AM
Unknown Object (File)
Fri, Dec 20, 11:52 PM
Unknown Object (File)
Fri, Dec 20, 8:51 PM
Unknown Object (File)
Mon, Dec 16, 12:06 AM
Unknown Object (File)
Mon, Dec 16, 12:05 AM

Details

Summary

This was previously handled as part of the "Services CI" workflow which will be deprecated later in this stack. This diff allows us to increase concurrency as we move over to the autoscaling EC2 instances.

Differences on Buildkite side:

  1. We use the actual shell command (cd services && docker-compose build --no-cache backup-server) instead of yarn build-backup-service because the autoscaling instances are intended to be as minimal as possible and don't include node, yarn, etc.
  1. We use the --no-cache flag to force a new complete build on each run. The previous "Services CI" workflow depended heavily on caches, because running 3-4 complete builds would take a long time. Now we can separate these out and take advantage of the concurrency provided by the autoscaling instances.
Test Plan

Buildkite: Copy/pasted from what I have in the Buildkite GUI that has been "active" for the last 2-3 days without issue.

GitHub: Will see what happens when it lands, but fairly confident it should be good to go.

Diff Detail

Repository
rCOMM Comm
Branch
landjuly1 (branched from master)
Lint
No Lint Coverage
Unit
No Test Coverage

Event Timeline

atul requested review of this revision.Jun 28 2022, 11:21 PM
tomek added a subscriber: karol.

On Comm @karol-bisztyga suggested that we should run ./scripts/run_server_image.sh backup

karol added inline comments.
.buildkite/backup_build.yml
2 ↗(On Diff #13923)

Can we use the bash script instead?

./scripts/run_server_image.sh backup
.github/workflows/backup_build.yml
21 ↗(On Diff #13923)

Can we use the bash script instead?

./scripts/run_server_image.sh backup
This revision now requires changes to proceed.Jun 29 2022, 6:16 AM
atul requested review of this revision.Jun 29 2022, 11:39 AM
atul added inline comments.
.buildkite/backup_build.yml
2 ↗(On Diff #13923)

In addition to docker-compose build $SERVICE-server, doesn't this also invoke docker-compose up $SERVICE-server?

We were previously running yarn build-all for the Services CI which was an "alias" for docker-compose build, is there a reason we want to change that now?

If we only want to build, it is reasonable to not run the container. @karol-bisztyga what is the reason behind suggesting run_server_image script? Are there any additional benefits?

This revision is now accepted and ready to land.Jul 1 2022, 7:18 AM

rebase after cherrypicking and before landing

This revision was landed with ongoing or failed builds.Jul 1 2022, 1:03 PM
This revision was automatically updated to reflect the committed changes.