stages: - test-and-build - build-docker - deploy cache: key: one-key-to-rule-them-all paths: - opencv/src - opencv/contrib - emtest/target - venv test: stage: test-and-build tags: - i7 before_script: - if ! test -d venv; then python3 -m venv venv; fi - source venv/bin/activate - pip3 install -r requirements.txt script: - make opencv - make -C alg qrtool - make test build-alg: stage: test-and-build tags: - i7 script: - make opencv - make build/alg/qrtool artifacts: paths: - build - alg/qrtool build-web: stage: test-and-build tags: - i7 before_script: - (cd web; npm install) script: - make web artifacts: paths: - build build-docker: stage: build-docker tags: - i7 script: - make docker-build - make docker-push dependencies: - build-web - build-alg except: - main deploy-dev: stage: deploy tags: - i7 only: - dev script: - make deploy-api-dev cache: [] dev-smoke: stage: test-and-build tags: - i7 allow_failure: true script: - ./scripts/emcli --env dev activate 0074253255108 - ./api/scripts/api_smoke.py -p $EMBLEM_CI_PASSWORD cache: [] deploy-prod: stage: deploy tags: - i7 only: - main script: - make docker-push-prod - make deploy-api-prod cache: [] deploy-roi-worker: tags: - emblem-s1 stage: deploy when: manual script: - make deploy-roi-worker cache: []