hopefully finish troubleshooting, fix api test #37
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
name: ci | |
on: | |
push: | |
branches: [main] | |
env: | |
REGISTRY: ghcr.io | |
IMAGE_NAME: ${{ github.repository }} | |
jobs: | |
ci: | |
runs-on: ubuntu-22.04 | |
permissions: | |
contents: read | |
packages: write | |
steps: | |
- uses: actions/checkout@v2 | |
# COMMIT STAGE: (compile, unit test, analysis, build installers in under 5 minutes) | |
- name: 'COMMIT STAGE: Comple & test UI' | |
run: | | |
echo Building UI image | |
docker-compose -f docker-compose.yaml -f docker-compose.dev.yaml -f docker-compose.test.yaml up --build --abort-on-container-exit frontend | |
- name: 'COMMIT STAGE: Comple & test API' | |
run: | | |
echo Building API image | |
docker-compose -f docker-compose.yaml -f docker-compose.dev.yaml -f docker-compose.test.yaml up --build --abort-on-container-exit api | |
- name: Clean up | |
if: always() | |
run: docker-compose -f docker-compose.yaml -f docker-compose.dev.yaml -f docker-compose.test.yaml down | |
- name: 'COMMIT STAGE: Log in to the Container registry' | |
uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1 | |
with: | |
registry: ${{ env.REGISTRY }} | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: 'COMMIT STAGE: Extract metadata for UI image' | |
id: meta-ui | |
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7 | |
with: | |
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} | |
tags: type=raw,value=ui-{{branch}}-{{sha}} | |
- name: 'COMMIT STAGE: Build and push UI image' | |
uses: docker/build-push-action@f2a1d5e99d037542a71f64918e516c093c6f3fc4 | |
with: | |
context: "{{defaultContext}}:ui/react-app" | |
push: true | |
tags: ${{ steps.meta-ui.outputs.tags }} | |
- name: 'COMMIT STAGE: Extract metadata for API image' | |
id: meta-api | |
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7 | |
with: | |
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} | |
tags: type=raw,value=api-{{branch}}-{{sha}} | |
- name: 'COMMIT STAGE: Build and push API image' | |
uses: docker/build-push-action@f2a1d5e99d037542a71f64918e516c093c6f3fc4 | |
with: | |
context: "{{defaultContext}}:api/flask_api" | |
push: true | |
tags: ${{ steps.meta-api.outputs.tags }} | |
- name: 'Artifact/release candidate with a unique id' | |
run: echo 'This is where I will publish my package (on github?)' | |
- name: 'Acceptance testing in prod-like envrionment' | |
run: echo 'This is where the acceptance tests will run' | |
- name: 'Production' | |
run: echo 'This is where the application will be deployed' | |