Skip to content
Snippets Groups Projects
.gitlab-ci.yml 2.81 KiB
Newer Older
Chris Hines's avatar
Chris Hines committed
stages:
  - build
  - deploy

Chris Hines's avatar
Chris Hines committed
  stage: build
  image: docker:19.03.0
Chris Hines's avatar
Chris Hines committed
  services:
    - docker:19.03.0-dind
Chris Hines's avatar
Chris Hines committed
  variables:
    DOCKER_DRIVER: overlay2
    DOCKER_TLS_CERTDIR: "/certs"
    - echo $DOCKERHUBUSER
Chris Hines's avatar
Chris Hines committed
    - echo $DOCKERHUBPASSWORD
Chris Hines's avatar
Chris Hines committed
    - docker login -u $DOCKERHUBUSER -p $DOCKERHUBPASSWORD docker.io
Chris Hines's avatar
Chris Hines committed
    - docker build --tag=l1ll1/strudel2_backend .
    - docker push l1ll1/strudel2_backend:latest
Chris Hines's avatar
Chris Hines committed
  tags:
Chris Hines's avatar
Chris Hines committed
    - build_strudel2_backend
Chris Hines's avatar
Chris Hines committed
    - test@hpc-team/strudel2_backend
  variables:
    DOCKER_HOST: unix:///var/run/docker.sock
    - echo "deploying dev"
    - docker login -u $DOCKERHUBUSER -p $DOCKERHUBPASSWORD docker.io
    - docker stop strudel2_backend || echo "Failed to stop existing container"
    - docker ps -a -q | xargs -I{} docker rm  {} || echo "No containers to remove"
    - docker images -q | xargs -I{} docker rmi {} || echo "No images to remove"
    - docker pull l1ll1/strudel2_backend:latest
    - docker run --mount type=bind,source=/messages,target=/messages -d -p 8080:8080 -p 8090:8090 --name strudel2_backend l1ll1/strudel2_backend:latest || echo "Unable to start image ... possibly the old wsgi process is still running?"
  dependencies:
    - build

deploy_dev:
  stage: deploy
Chris Hines's avatar
Chris Hines committed
    - dev@hpc-team/strudel2_backend
    - deploy_dev
Chris Hines's avatar
Chris Hines committed
  variables:
    DOCKER_HOST: unix:///var/run/docker.sock
  script:
    - echo "deploying dev"
    - docker login -u $DOCKERHUBUSER -p $DOCKERHUBPASSWORD docker.io
    - docker stop strudel2_backend || echo "Failed to stop existing container"
    - docker ps -a -q | xargs -I{} docker rm  {} || echo "No containers to remove"
    - docker images -q | xargs -I{} docker rmi {} || echo "No images to remove"
    - docker pull l1ll1/strudel2_backend:latest
    - docker run --mount type=bind,source=/messages,target=/messages -d -p 8080:8080 -p 8090:8090 --name strudel2_backend l1ll1/strudel2_backend:latest || echo "Unable to start image ... possibly the old wsgi process is still running?"
Chris Hines's avatar
Chris Hines committed
  dependencies:
    - build
    
deploy_dev_pawsey:
  stage: deploy
  only:
    - dev@hpc-team/strudel2_backend
  tags: 
Chris Hines's avatar
Chris Hines committed
    - deploy_dev_pawsey
  variables:
Chris Hines's avatar
Chris Hines committed
    DOCKER_HOST: unix:///var/run/docker.sock
  script:
    - echo "deploying dev"
Chris Hines's avatar
Chris Hines committed
    - docker login -u $DOCKERHUBUSER -p $DOCKERHUBPASSWORD docker.io
    - docker stop strudel2_backend || echo "Failed to stop existing container"
    - docker ps -a -q | xargs -I{} docker rm  {} || echo "No containers to remove"
    - docker images -q | xargs -I{} docker rmi {} || echo "No images to remove"
Chris Hines's avatar
Chris Hines committed
    - docker pull l1ll1/strudel2_backend:latest
Chris Hines's avatar
Chris Hines committed
    - docker run -d -p 8080:8080 -p 8090:8090 --name strudel2_backend l1ll1/strudel2_backend:latest || echo "Unable to start image ... possibly the old wsgi process is still running?"