fxa/.circleci
Ankita Shrivastava ef96fcbe30
Merge pull request #14542 from mozilla/run-subscription-tests-on-CI
Increase resource size and fix a few flaky tests and enable subplat tests to run on CircleCi
2022-11-30 09:05:03 -05:00
..
README.md feat(services): remove fxa-auth-db-mysql, fxa-email-event-proxy, and fxa-email-service 2022-01-13 16:23:22 -08:00
assert-branch.sh feat(services): remove fxa-auth-db-mysql, fxa-email-event-proxy, and fxa-email-service 2022-01-13 16:23:22 -08:00
base-install.sh feat(tests): implement prod smoke tests in playwright 2021-11-17 10:19:19 -08:00
build-all.sh feat(docker): publish fxa-mono docker image 2020-08-28 10:10:14 -07:00
build.sh chore(build): stop building docker images for each service by default 2020-10-28 13:07:44 -07:00
config.yml Merge pull request #14542 from mozilla/run-subscription-tests-on-CI 2022-11-30 09:05:03 -05:00
deploy-all.sh feat(docker): publish fxa-mono docker image 2020-08-28 10:10:14 -07:00
deploy.sh chore(docs): Replace 'master' with 'main' throughout 2020-06-25 13:44:28 -07:00
modules-to-test.js feat(services): remove fxa-auth-db-mysql, fxa-email-event-proxy, and fxa-email-service 2022-01-13 16:23:22 -08:00
test-package.sh task(ci): Enable tracing in CI 2022-10-18 17:04:04 -07:00

README.md

CircleCI

config.yml defines the jobs and workflows of our CircleCI deployment.

Scripts

This directory contains scripts used by config.yml to run jobs. More general scripts should be located in ../_scripts or in individual package directories.

Conventions

Tests

Packages are tested with ./test-package.sh. The default action is to run:

yarn install
yarn test

Packages may define a scripts/test-ci.sh as a custom test script.

Builds

By default packages are built using docker. The standard Dockerfile is the preferred method. Packages may define a scripts/build-ci.sh as a custom build script.

Deploys

Packages that create docker images are deployed to docker hub.

New packages require username and password environment variables in CircleCI project settings in order to deploy.

Triggering manual jobs

curl -u $CIRCLECI_API_TOKEN \
     -d build_parameters[CIRCLE_JOB]=$JOB_NAME \
     https://circleci.com/api/v1.1/project/github/mozilla/fxa/tree/$GITHUB_BRANCH
  • $CIRCLECI_API_TOKEN is your personal API token from https://app.circleci.com/settings/user/tokens
  • $JOB_NAME is the job to run from config.yml, test-content-server-remote for example
  • $GITHUB_BRANCH is the branch you'd like to build & deploy to docker hub (this may be main)

Local Testing

With the CircleCI CLI you can run some jobs locally. Deploy jobs will fail to run.

For example, to run the test-many job:

circleci config process .circleci/config.yml > .circleci/local.yml
circleci local execute -c .circleci/local.yml --job test-many