Skip to content
Snippets Groups Projects
.gitlab-ci.yml 889 B
Newer Older
Pernille Welle-Watne's avatar
Pernille Welle-Watne committed
variables:
  HEROKU_APP_NAME: tdt4242-base
Pernille Welle-Watne's avatar
Pernille Welle-Watne committed
  HEROKU_REGISTRY_IMAGE: registry.heroku.com/${HEROKU_APP_NAME}/web
Pernille Welle-Watne's avatar
Pernille Welle-Watne committed
stages:
  - test
  - build_and_deploy

Pernille Welle-Watne's avatar
Pernille Welle-Watne committed
  image: python:3
  stage: test
  script:
Pernille Welle-Watne's avatar
Pernille Welle-Watne committed
  # this configures Django application to use attached postgres database that is run on `postgres` host
Pernille Welle-Watne's avatar
Pernille Welle-Watne committed
    - cd backend/secfit
    - apt-get update -qy
    - pip install -r requirements.txt
    - python manage.py test
Pernille Welle-Watne's avatar
Pernille Welle-Watne committed
build_and_deploy:
  image: docker:stable
  services:
    - docker:dind
Pernille Welle-Watne's avatar
Pernille Welle-Watne committed
  stage: build_and_deploy
  script:
Pernille Welle-Watne's avatar
Pernille Welle-Watne committed
    - apk add --no-cache curl
    - docker login -u _ -p $HEROKU_AUTH_TOKEN registry.heroku.com
    - docker pull $HEROKU_REGISTRY_IMAGE || true
    - docker build
      --cache-from $HEROKU_REGISTRY_IMAGE
      --tag $HEROKU_REGISTRY_IMAGE
      --file ./Dockerfile
      "."
    - docker push $HEROKU_REGISTRY_IMAGE
    - chmod +x ./release.sh
    - ./release.sh