stages: - prebuild_and_test - deploy cache: paths: - _build - deps variables: POSTGRES_PASSWORD: "postgres" POSTGRES_USER: "postgres" DATABASE_URL: "postgres" MIX_ENV: "test" DOCKER_TLS_CERTDIR: "/certs" services: - name: postgres:12 - name: docker:19.03.12-dind prebuild: stage: prebuild_and_test image: docker:19.03.12 script: - docker pull $CI_REGISTRY_IMAGE:latest || true - docker build --cache-from $CI_REGISTRY_IMAGE:latest -t $CI_REGISTRY_IMAGE . test: stage: prebuild_and_test image: "elixir:1.10" script: script/cibuild deploy: stage: deploy image: "circleci/node:14.5" script: - echo $CI_REGISTRY - export DOCKER_USERNAME=$CI_REGISTRY_USER - export DOCKER_PASSWORD=$CI_REGISTRY_PASSWORD - npm install - npx semantic-release