Skip to content
Snippets Groups Projects
.gitlab-ci.yml 2.15 KiB
Newer Older
  • Learn to ignore specific revisions
  • image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/node:18
    
    cache:
      paths:
        - node_modules
    
    default:
      tags:
        - docker
      before_script:
        - npm --version  # For debugging
    
        - npm install --no-fund
    
    
    lint:
      stage: test
      script:
        - npm run lint
    
    
    build:
      stage: build
      script:
        - npm run build-only
      artifacts:
        paths:
          - dist
    
    publish-main-docker-container-job:
    
      stage: deploy
      image:
    
        name: gcr.io/kaniko-project/executor:v1.20.0-debug
    
        entrypoint: [""]
      only:
        refs:
    
        - echo "{\"auths\":{\"${CI_REGISTRY}\":{\"auth\":\"$(printf "%s:%s" "${CI_REGISTRY_USER}" "${CI_REGISTRY_PASSWORD}" | base64 | tr -d '\n')\"},\"$(echo -n $CI_DEPENDENCY_PROXY_SERVER | awk -F[:] '{print $1}')\":{\"auth\":\"$(printf "%s:%s" ${CI_DEPENDENCY_PROXY_USER} "${CI_DEPENDENCY_PROXY_PASSWORD}" | base64 | tr -d '\n')\"}}}" > /kaniko/.docker/config.json
    
      script:
        - /kaniko/executor
          --context "${CI_PROJECT_DIR}"
          --dockerfile "${CI_PROJECT_DIR}/Dockerfile"
    
          --destination "${CI_REGISTRY_IMAGE}:main-${CI_COMMIT_SHA}"
          --destination "${CI_REGISTRY_IMAGE}:main-latest"
    
    publish-docker-container-job:
    
      stage: deploy
      image:
    
        name: gcr.io/kaniko-project/executor:v1.20.0-debug
    
        entrypoint: [""]
      only:
        - tags
      before_script:
    
        - echo "{\"auths\":{\"${CI_REGISTRY}\":{\"auth\":\"$(printf "%s:%s" "${CI_REGISTRY_USER}" "${CI_REGISTRY_PASSWORD}" | base64 | tr -d '\n')\"},\"$(echo -n $CI_DEPENDENCY_PROXY_SERVER | awk -F[:] '{print $1}')\":{\"auth\":\"$(printf "%s:%s" ${CI_DEPENDENCY_PROXY_USER} "${CI_DEPENDENCY_PROXY_PASSWORD}" | base64 | tr -d '\n')\"}}}" > /kaniko/.docker/config.json
    
      script:
        - /kaniko/executor
          --context "${CI_PROJECT_DIR}"
          --dockerfile "${CI_PROJECT_DIR}/Dockerfile"
          --destination "${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG}"
          --destination "${CI_REGISTRY_IMAGE}:$(echo ${CI_COMMIT_TAG} | cut -d'.' -f1-2)"
          --destination "${CI_REGISTRY_IMAGE}:$(echo ${CI_COMMIT_TAG} | cut -d'.' -f1)"
          --destination "${CI_REGISTRY_IMAGE}:latest"