deploy #741
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: deploy | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
paths: | |
- 'src/test/e2e/**' | |
- 'src/main/resources/**' | |
- 'Dockerfile' | |
- 'docker-compose.yml' | |
- '.dockerignore' | |
- '.github/workflows/integration.yml' | |
schedule: | |
- cron: '0 0 1,15 * *' | |
jobs: | |
docker: | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: "actions/[email protected]" | |
- name: start backend containers | |
run: docker compose up -d backend populate | |
env: | |
SAMPLE_URL: http://aaew64.bbaw.de/resources/tla-data/tla-sample-20210115-1000t.tar.gz | |
ES_PORT: 9201 | |
- name: start frontend container | |
run: docker compose up -d frontend | |
env: | |
LISTEN_PORT: 8080 | |
- name: show tla-backend container logs | |
run: docker compose logs backend | |
- name: wait for backend to be populated with lemma data | |
run: bash .github/scripts/wait_for_response.sh | |
env: | |
url: http://localhost:8090/lemma/get/100690 | |
interval: 5 | |
timeout: 120 | |
continue-on-error: true | |
- name: wait for backend to be populated with meta data | |
run: bash .github/scripts/wait_for_response.sh | |
env: | |
url: http://localhost:8090/version | |
interval: 3 | |
timeout: 60 | |
continue-on-error: true | |
- name: wait for backend to be populated with thesaurus data | |
run: bash .github/scripts/wait_for_response.sh | |
env: | |
url: http://localhost:8090/ths/get/7pupjz | |
interval: 5 | |
timeout: 120 | |
- name: show tla-ingest container logs | |
run: docker compose logs populate | |
if: always() | |
- name: query backend endpoint URL paths list | |
run: curl -s localhost:8090/ | |
- name: query backend version info | |
run: curl -s localhost:8090/version | |
- name: wait for frontend to respond | |
run: bash .github/scripts/wait_for_response.sh | |
env: | |
url: http://localhost:8080 | |
interval: 2 | |
timeout: 120 | |
- name: curl frontend from shell | |
run: curl -s localhost:8080/ | |
- name: run cypress e2e tests | |
run: docker compose run e2e | |
env: | |
CYPRESS_BASE_URL: http://localhost:8080 | |
CYPRESS_VIDEO: false | |
CYPRESS_BROWSER: firefox | |
- name: upload cypress screenshots | |
if: failure() | |
uses: "actions/[email protected]" | |
with: | |
path: src/test/e2e/cypress/screenshots | |
name: cypress-screenshots | |
... |