# this test is based on the docker image described in env/bitbucket/Dockerfile image: iterativ/vbv-lernwelt-bitbucket ## job definition for running Cypress tests in parallel e2e: &e2e name: cypress test worker max-time: 45 services: - postgres caches: - node - clientnode - vbvpip - cypress script: - export CURRENTS_KEY=etzp5VXtJcSX8Z4H - export IT_SERVE_VUE=false - export IT_ALLOW_LOCAL_LOGIN=true - source ./env/bitbucket/prepare_for_test.sh - pip install -r server/requirements/requirements-dev.txt - npm install - npm run build - ./prepare_server_cypress.sh --start-background - npm run cypress:ci artifacts: - cypress/**/*.png - cypress/**/*.mp4 deploy: &deploy name: deploy max-time: 30 caches: - node - clientnode - vbvpip - docker services: - docker script: - source ./env/bitbucket/prepare_for_deployment.sh # it will by default take the branch name, when there is no provided parameter - ./caprover_deploy.sh ${DEPLOY_ENVIRONMENT:-} - cat /tmp/caprover_app_url.txt pipelines: default: - parallel: - step: <<: *e2e - step: <<: *e2e - step: name: python tests max-time: 15 services: - postgres caches: - vbvpip script: - source ./env/bitbucket/prepare_for_test.sh - pip install -r server/requirements/requirements-dev.txt - ./server/run_tests_coverage.sh - step: name: python linting max-time: 15 services: - postgres caches: - vbvpip script: - source ./env/bitbucket/prepare_for_test.sh - pip install -r server/requirements/requirements-dev.txt - git-crypt status -e | sort > git-crypt-encrypted-files-check.txt && diff -w git-crypt-encrypted-files.txt git-crypt-encrypted-files-check.txt - trufflehog --exclude_paths trufflehog-exclude-patterns.txt --allow trufflehog-allow.json --entropy=True --max_depth=100 . - ufmt check server - step: name: js tests max-time: 15 caches: - node - clientnode script: - cd client - pwd - npm install - npm test - step: name: js linting max-time: 15 caches: - node - clientnode script: - cd client - pwd - npm install - npm run prettier:check - npm run lint - npm run typecheck - step: <<: *deploy name: deploy feature trigger: manual tags: v202*: - step: name: prepare prod deployment script: - echo "Release ready!" - step: name: deploy prod deployment: prod trigger: manual script: - source ./env/bitbucket/prepare_for_deployment.sh - ./caprover_deploy.sh myvbv custom: deploy-stage: - step: <<: *deploy deployment: stage deploy-dev: - step: <<: *deploy deployment: dev definitions: caches: cypress: /root/.cache/Cypress vbvpip: /opt/atlassian/pipelines/agent/build/vbvvenv/ clientnode: /opt/atlassian/pipelines/agent/build/client/node_modules/ services: postgres: image: postgres memory: 512 variables: POSTGRES_HOST_AUTH_METHOD: trust