CI - E2E - Containers #20
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# TODO: remove this workflow once we use containers in the other workflows. This | |
# workflow is intended to prevent regressions until that has been achieved. | |
name: CI - E2E - Containers | |
on: | |
workflow_dispatch: | |
workflow_run: | |
workflows: ['CI - Node.js'] | |
types: | |
- completed | |
# TODO: refactor with a workflow_call | |
pull_request: | |
paths-ignore: | |
- 'docs/**' | |
branches: | |
- 'main' | |
- 'next-**' | |
- 'e2e-**' | |
jobs: | |
build-client: | |
name: Build Client (Container) | |
runs-on: ubuntu-22.04 | |
strategy: | |
matrix: | |
node-version: [20.x] | |
steps: | |
- name: Checkout Source Files | |
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
with: | |
submodules: 'recursive' | |
- name: Create Image | |
run: | | |
docker build \ | |
--build-arg HOME_LOCATION=http://localhost:8000 \ | |
--build-arg API_LOCATION=http://localhost:3000 \ | |
--build-arg FORUM_LOCATION=https://forum.freecodecamp.org \ | |
--build-arg NEWS_LOCATION=https://www.freecodecamp.org/news \ | |
--build-arg RADIO_LOCATION=https://coderadio.freecodecamp.org \ | |
--build-arg CLIENT_LOCALE=english \ | |
--build-arg CURRICULUM_LOCALE=english \ | |
--build-arg ALGOLIA_APP_ID=app_id_from_algolia_dashboard \ | |
--build-arg ALGOLIA_API_KEY=api_key_from_algolia_dashboard \ | |
--build-arg STRIPE_PUBLIC_KEY=pk_from_stripe_dashboard \ | |
--build-arg PAYPAL_CLIENT_ID=id_from_paypal_dashboard \ | |
--build-arg PATREON_CLIENT_ID=id_from_patreon_dashboard \ | |
--build-arg DEPLOYMENT_ENV=staging \ | |
--build-arg SHOW_UPCOMING_CHANGES=false \ | |
--build-arg SHOW_NEW_CURRICULUM=false \ | |
--build-arg GROWTHBOOK_URI=api_URI_from_Growthbook_dashboard \ | |
--build-arg FREECODECAMP_NODE_ENV=development \ | |
-t fcc-client \ | |
-f docker/web/Dockerfile . | |
build-api: | |
name: Build Api (Container) | |
runs-on: ubuntu-22.04 | |
strategy: | |
matrix: | |
node-version: [20.x] | |
steps: | |
- name: Checkout Source Files | |
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
with: | |
submodules: 'recursive' | |
- name: Create Image | |
run: | | |
docker build \ | |
-t fcc-api \ | |
-f docker/api/Dockerfile . | |
build-new-api: | |
name: Build New Api (Container) | |
runs-on: ubuntu-22.04 | |
strategy: | |
matrix: | |
node-version: [20.x] | |
steps: | |
- name: Checkout Source Files | |
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
with: | |
submodules: 'recursive' | |
- name: Create Image | |
run: | | |
docker build \ | |
-t fcc-new-api \ | |
-f docker/new-api/Dockerfile . |