diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6627203b17d769b8719beda1b188da1b25198643..a60f303c5421fce5a0c237eacb19a19af3ced989 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,213 +1,65 @@ -# variables: -# IMAGE_ORG: xpub -# IMAGE_NAME: xpub -# BASE_DOMAIN: gateway.xpub.semioticsquares.com -# CONFIGURATION_REPOSITORY: https://gitlab.coko.foundation/xpub/deployment-config.git +variables: + IMAGE_ORG: bogdandev + IMAGE_NAME: xpub-faraday -# stages: -# - build -# - test -# - review -# - staging -# - production -# - demo +stages: + - build + - test + - review + - staging + - demo -# build: -# image: docker:latest -# stage: build -# script: -# - docker version -# - docker build -t $IMAGE_ORG/$IMAGE_NAME:$CI_COMMIT_SHA . -# - if [ -z "$DOCKERHUB_USERNAME" ] || [ -z "$DOCKERHUB_PASSWORD" ]; then echo "Not pushing" && exit 0; fi -# - docker login -u $DOCKERHUB_USERNAME -p $DOCKERHUB_PASSWORD -# - echo "Ignore warning! Cannot perform an interactive login from a non TTY device" -# - docker push $IMAGE_ORG/$IMAGE_NAME:$CI_COMMIT_SHA +build: + image: docker:latest + stage: build + script: + - docker version + - docker build -t $IMAGE_ORG/$IMAGE_NAME:$CI_COMMIT_SHA . + - if [ -z "$DOCKERHUB_USERNAME" ] || [ -z "$DOCKERHUB_PASSWORD" ]; then echo "Not pushing" && exit 0; fi + - docker login -u $DOCKERHUB_USERNAME -p $DOCKERHUB_PASSWORD + - echo "Ignore warning! Cannot perform an interactive login from a non TTY device" + - docker push $IMAGE_ORG/$IMAGE_NAME:$CI_COMMIT_SHA -# lint: -# image: $IMAGE_ORG/$IMAGE_NAME:$CI_COMMIT_SHA -# stage: test -# variables: -# GIT_STRATEGY: none -# script: -# - cd ${HOME} -# - npm run lint +lint: + image: $IMAGE_ORG/$IMAGE_NAME:$CI_COMMIT_SHA + stage: test + variables: + GIT_STRATEGY: none + script: + - cd ${HOME} + - npm run lint -# test: -# image: $IMAGE_ORG/$IMAGE_NAME:$CI_COMMIT_SHA -# stage: test -# variables: -# GIT_STRATEGY: none -# script: -# - cd ${HOME} -# - npm run test +test: + image: $IMAGE_ORG/$IMAGE_NAME:$CI_COMMIT_SHA + stage: test + variables: + GIT_STRATEGY: none + script: + - cd ${HOME} + - npm run test -# push:latest: -# image: docker:latest -# stage: staging -# script: -# - if [ -z "$DOCKERHUB_USERNAME" ] || [ -z "$DOCKERHUB_PASSWORD" ]; then echo "Not pushing" && exit 0; fi -# - docker login -u $DOCKERHUB_USERNAME -p $DOCKERHUB_PASSWORD -# - echo "Ignore warning! Cannot perform an interactive login from a non TTY device" -# - docker build -t $IMAGE_ORG/$IMAGE_NAME:latest --label COMMIT_SHA=$CI_COMMIT_SHA . -# - docker push $IMAGE_ORG/$IMAGE_NAME:latest -# only: -# - master +push:latest: + image: docker:latest + stage: staging + script: + - if [ -z "$DOCKERHUB_USERNAME" ] || [ -z "$DOCKERHUB_PASSWORD" ]; then echo "Not pushing" && exit 0; fi + - docker login -u $DOCKERHUB_USERNAME -p $DOCKERHUB_PASSWORD + - echo "Ignore warning! Cannot perform an interactive login from a non TTY device" + - docker build -t $IMAGE_ORG/$IMAGE_NAME:latest --label COMMIT_SHA=$CI_COMMIT_SHA . + - docker push $IMAGE_ORG/$IMAGE_NAME:latest + only: + - master -# # ----------------------------------------------- -# # xpub-collabra --------------------------------- -# # ----------------------------------------------- - -# review:xpub-collabra: -# image: pubsweet/deployer:latest -# stage: review -# variables: -# PACKAGE_NAME: xpub-collabra -# FORCE_FRESH_DB: "yes" -# REQUIRES_PROVISIONING: "yes" -# environment: -# name: $PACKAGE_NAME/review/$CI_COMMIT_REF_NAME -# # !! kube-lego will fail if domain > 64 chars -# url: "http://${CI_ENVIRONMENT_SLUG}.${BASE_DOMAIN}" -# on_stop: stop_review:xpub-collabra -# except: -# - master -# script: -# - source deploy.sh -# - create_deployment - -# stop_review:xpub-collabra: -# image: pubsweet/deployer:latest -# stage: review -# variables: -# PACKAGE_NAME: xpub-collabra -# REQUIRES_PROVISIONING: "yes" -# GIT_STRATEGY: none -# environment: -# name: $PACKAGE_NAME/review/$CI_COMMIT_REF_NAME -# action: stop -# when: manual -# except: -# - master -# script: -# - source deploy.sh -# - delete_deployment -# - delete_objects_in_environment pvc - -# staging:xpub-collabra: -# image: pubsweet/deployer:latest -# stage: staging -# variables: -# PACKAGE_NAME: xpub-collabra -# environment: -# name: $PACKAGE_NAME/staging -# url: "https://${CI_ENVIRONMENT_SLUG}.${BASE_DOMAIN}" -# only: -# - master -# script: -# - source deploy.sh -# - create_deployment - -# production:xpub-collabra: -# image: pubsweet/deployer:latest -# stage: production -# variables: -# PACKAGE_NAME: xpub-collabra -# environment: -# name: $PACKAGE_NAME/production -# url: "https://${CI_ENVIRONMENT_SLUG}.${BASE_DOMAIN}" -# when: manual -# only: -# - master -# script: -# - source deploy.sh -# - create_deployment - -# demo:xpub-collabra: -# image: pubsweet/deployer:latest -# stage: demo -# variables: -# PACKAGE_NAME: xpub-collabra -# environment: -# name: $PACKAGE_NAME/demo -# url: "https://${CI_ENVIRONMENT_SLUG}.${BASE_DOMAIN}" -# when: manual -# script: -# - source deploy.sh -# - create_deployment - -# # ----------------------------------------------- -# # xpub-ui --------------------------------------- -# # ----------------------------------------------- - -# #review:xpub-ui: -# # image: pubsweet/deployer:latest -# # stage: review -# # variables: -# # PACKAGE_NAME: xpub-ui -# # environment: -# # name: $PACKAGE_NAME/review/$CI_COMMIT_REF_NAME -# # # !! kube-lego will fail if domain > 63 chars -# # url: "http://${CI_ENVIRONMENT_SLUG}.${BASE_DOMAIN}" -# # on_stop: stop_review:xpub-ui -# # except: -# # - master -# # script: -# # - source deploy.sh -# # - create_deployment -# # -# #stop_review:xpub-ui: -# # image: pubsweet/deployer:latest -# # stage: review -# # variables: -# # PACKAGE_NAME: xpub-ui -# # GIT_STRATEGY: none -# # when: manual -# # environment: -# # name: $PACKAGE_NAME/review/$CI_COMMIT_REF_NAME -# # action: stop -# # script: -# # - source deploy.sh -# # - delete_deployment -# # -# #staging:xpub-ui: -# # image: pubsweet/deployer:latest -# # stage: staging -# # variables: -# # PACKAGE_NAME: xpub-ui -# # environment: -# # name: $PACKAGE_NAME/staging -# # url: "https://${CI_ENVIRONMENT_SLUG}.${BASE_DOMAIN}" -# # only: -# # - master -# # script: -# # - source deploy.sh -# # - create_deployment -# # -# #production:xpub-ui: -# # image: pubsweet/deployer:latest -# # stage: production -# # variables: -# # PACKAGE_NAME: xpub-ui -# # environment: -# # name: $PACKAGE_NAME/production -# # url: "https://${CI_ENVIRONMENT_SLUG}.${BASE_DOMAIN}" -# # when: manual -# # only: -# # - master -# # script: -# # - source deploy.sh -# # - create_deployment -# # -# #demo:xpub-ui: -# # image: pubsweet/deployer:latest -# # stage: demo -# # variables: -# # PACKAGE_NAME: xpub-ui -# # environment: -# # name: $PACKAGE_NAME/demo -# # url: "https://${CI_ENVIRONMENT_SLUG}.${BASE_DOMAIN}" -# # when: manual -# # script: -# # - source deploy.sh -# # - create_deployment -# # +demo:xpub-faraday: + image: $IMAGE_ORG/$IMAGE_NAME:$CI_COMMIT_SHA + stage: demo + when: manual + variables: + PACKAGE_NAME: xpub-faraday + only: + - master + environment: + name: $PACKAGE_NAME/demo + url: $NOW_URL + script: + - echo $NOW_URL \ No newline at end of file