Skip to content
Snippets Groups Projects
.gitlab-ci.yml 3.20 KiB
variables:
  CI_DEFAULT_BRANCH: legacy-main
  CI_PROJECT_NAME: nshmp-haz-legacy
  PRODUCTION_BRANCH: legacy-production
  UPSTREAM_PATH: ghsc/nshmp/nshmp-haz

# Do not run for merge requests
workflow:
  rules:
    - if: $CI_COMMIT_TAG
    - if: $CI_COMMIT_BRANCH

stages:
  - build

####
# Environment Templates
####

##
# Rule for development environment
##
.development-env: &development-env
  if: >
    $CI_PROJECT_PATH != $UPSTREAM_PATH
    || (
      $CI_PROJECT_PATH == $UPSTREAM_PATH
      && (
        $CI_COMMIT_BRANCH != $CI_DEFAULT_BRANCH
        && $CI_COMMIT_BRANCH != $PRODUCTION_BRANCH
      )
    )
  variables:
    ENVIRONMENT: development

##
# Rule for staging environment
##
.staging-env: &staging-env
  if: >
    $CI_PROJECT_PATH == $UPSTREAM_PATH
    && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
  variables:
    ENVIRONMENT: staging

##
# Rule for production envrionment
##
.production-env: &production-env
  if: >
    $CI_PROJECT_PATH == $UPSTREAM_PATH
    && $CI_COMMIT_BRANCH == $PRODUCTION_BRANCH
  variables:
    ENVIRONMENT: production

####
# Docker Templates
####

##
# Docker in Docker
##
.dind:
  image: ${DEVOPS_REGISTRY}docker:19.03-git
  services:
    - alias: docker
      name: ${DEVOPS_REGISTRY}docker:19.03-dind
  variables:
    DOCKER_DRIVER: overlay2