Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
.gitlab-ci.yml 10.15 KiB
# .gitlab-ci.yml
#
# polkadot
#
# pipelines can be triggered manually in the web
# setting DEPLOY_TAG will only deploy the tagged image

stages:
  - test
  - build
  - publish
  - deploy

image:                             paritytech/ci-linux:production

variables:
  GIT_STRATEGY:                    fetch
  GIT_DEPTH:                       100
  CI_SERVER_NAME:                  "GitLab CI"
  DOCKER_OS:                       "debian:stretch"
  ARCH:                            "x86_64"

.collect-artifacts:                &collect-artifacts
  artifacts:
    name:                          "${CI_JOB_NAME}_${CI_COMMIT_REF_NAME}"
    when:                          on_success
    expire_in:                     28 days
    paths:
      - artifacts/

.kubernetes-env:                   &kubernetes-env
  tags:
    - kubernetes-parity-build
  environment:
    name: parity-build

.docker-env:                       &docker-env
  retry:
    max: 2
    when:
      - runner_system_failure
      - unknown_failure
      - api_failure
  interruptible:                   true
  dependencies:                    []
  tags:
    - linux-docker

.compiler_info:                    &compiler_info
  before_script:
    - rustup show
    - cargo --version
    - sccache -s

.build-refs:                       &build-refs
  only:
    - master
    - schedules
    - web
    - /^v[0-9]+\.[0-9]+.*$/        # i.e. v1.0, v2.1rc1

.test-refs:                        &test-refs
  only:
    - master
    - schedules
    - web
    - /^v[0-9]+\.[0-9]+.*$/        # i.e. v1.0, v2.1rc1
    - /^[0-9]+$/

#### stage:                        test