Because:
- We want to run smoke tests in parallel for faster deployments.
This Commit:
- Adds pipeline flags required to support remote execution of pipelines
- Updates readme
As part of updating to node v16 we found the "normal" upgrade path for mozilla/fxa-circleci to be problematic.
CircleCI has also changed their recommended base image to be cimg/node.
Our mozilla/fxa-circleci image has shrunk over time to now be a thin wrapper over circleci/node that adds firefox esr. Instead of maintaining our own image the recommended circleci/browser-tools orb can take care of firefox version for us.
Including fxa-circleci in the /packages folder was awkward
since it isn't part of the deployment and needed some special
handling in the test/build process.
This attempts to make that better.
In order to reduce our CI resource usage we've combined
some jobs and changed what runs for each workflow.
Most packages have fast test runs. We've combined these
under one job. Packages with slower runs use their own
job so they can be run in parallel. Also, we've added
branch filters to the rarely changing, but resource
intensive jobs.
We now have three workflows that run at different times.
1. test_pull_request: runs only on PR branches and
only runs tests.
2. deploy_master: runs only on master and only builds
and deploys docker images
3. test_and_deploy_tag: runs only on tags and tests,
builds, and deploys