Skip to content
.gitlab-ci.yml 1.21 KiB
Newer Older
Дмитрий Сафронов's avatar
Дмитрий Сафронов committed
# VARIABLES
variables:
  DOCKER_BUILDKIT: 1
  DOCKER_DRIVER: overlay2
  DOCKER_HOST: tcp://localhost:2375
  DOCKER_TLS_CERTDIR: ""

##########################################################################################################

## PIPELINE DEFINITION
stages:
Дмитрий Сафронов's avatar
Дмитрий Сафронов committed
  - shellcheck
  - ansible-lint
Дмитрий Сафронов's avatar
Дмитрий Сафронов committed

##########################################################################################################

### COMMON SECTION
.common: &common
  variables:
    GIT_DEPTH: 1
Дмитрий Сафронов's avatar
Дмитрий Сафронов committed
    GIT_SUBMODULE_STRATEGY: recursive
Дмитрий Сафронов's avatar
Дмитрий Сафронов committed
    ANSIBLE_FORCE_COLOR: "True"
Дмитрий Сафронов's avatar
Дмитрий Сафронов committed
  except:
    - /^master$/
Дмитрий Сафронов's avatar
Дмитрий Сафронов committed
  before_script:
    - chmod -R o-w ../

##########################################################################################################

### TEST SECTION
Дмитрий Сафронов's avatar
Дмитрий Сафронов committed

shellcheck:
  <<: *common
  stage: shellcheck
  image: registry.cyberbrain.pw/tools/shellcheck
  script:
    - shellcheck -s sh setup.sh
    - shellcheck -s sh -e SC2068 run.sh

ansible-lint:
Дмитрий Сафронов's avatar
Дмитрий Сафронов committed
  <<: *common
Дмитрий Сафронов's avatar
Дмитрий Сафронов committed
  stage: ansible-lint
Дмитрий Сафронов's avatar
Дмитрий Сафронов committed
  image: registry.cyberbrain.pw/ansible/ansible
  script:
Дмитрий Сафронов's avatar
Дмитрий Сафронов committed
    - sh setup.sh
Дмитрий Сафронов's avatar
Дмитрий Сафронов committed
    - find . -maxdepth 1 -mindepth 1 -name \*.yml -a -not -name requirements.yml -a -not -name .gitlab-ci.yml -type f -print0 | xargs -0 ansible-lint -v -x '204' -x '301' -x '305' -x '401'