CI: re-factored

This commit is contained in:
Dmitry Smirnov 2019-10-25 02:13:03 +11:00
parent bc92554850
commit 56c3f8d582
3 changed files with 31 additions and 165 deletions

178
debian/.gitlab-ci.yml vendored
View file

@ -1,153 +1,37 @@
---
variables:
GIT_DEPTH: 128
PB_RESULT: '${CI_PROJECT_DIR}/../${CI_PROJECT_NAME}_${CI_BUILD_REF}_${CI_JOB_NAME}_${CI_JOB_ID}'
LINTIAN_CMD: eval lintian --no-tag-display-limit --info --display-info --color=always --display-experimental --pedantic
# PDEBUILD_CMD: eval pdebuild --use-pdebuild-internal --pbuildersatisfydepends "/usr/lib/pbuilder/pbuilder-satisfydepends-classic" --buildresult "${PB_RESULT}" --debbuildopts -sa
PDEBUILD_CMD: eval pdebuild --debbuildopts "-sa" --use-pdebuild-internal --buildresult "${PB_RESULT}"
EATMYDATA: "yes"
AUTOCLEANAPTCACHE: "yes"
USE_PDEBUILD_INTERNAL: "yes"
# https://docs.gitlab.com/ce/ci/yaml/#include
include:
- remote: https://salsa.debian.org/onlyjob/ci/raw/master/onlyjob-ci.yml
.pre_build:
script: &pre_build |
uname -a
date
env
pwd
mkdir -v -p "${PB_RESULT}"
## "amd64-unstable" always runs by default followed by lintian.
.origtargz:
script: &origtargz |
origtargz --clean && origtargz --tar-only
rm -rf .git
if [ -x "debian/unpack-components.sh" ]; then debian/unpack-components.sh; fi
## Only for arch:all packages:
binary-indep:
extends: .build-indep
stages:
- check
- build
## Job to check Build-Depends versioning:
amd64-testing_unstable:
extends: .build
variables:
arch: amd64
dist: testing_unstable
dpkg-control:
stage: check
tags:
- cme
dependencies: []
i386-unstable:
extends: .build
variables:
arch: i386
dist: unstable
amd64-experimental:
extends: .build
variables:
arch: amd64
dist: experimental
amd64-stable:
extends: .build
when: manual
allow_failure: false
script:
- cme check dpkg-control
dpkg-copyright:
stage: check
tags:
- cme
dependencies: []
allow_failure: false
script: |
cme check dpkg-copyright
lintian:
stage: check
tags:
- lintian
dependencies: []
allow_failure: false
before_script:
- *pre_build
- cp -r debian "${PB_RESULT}"/
- cd "${PB_RESULT}"
script:
- *origtargz
- dpkg-buildpackage -S -sa -uc -us --no-check-builddeps --no-pre-clean
- ${LINTIAN_CMD}
yamllint:
stage: check
tags:
- yamllint
dependencies: []
allow_failure: false
script: |
yamllint -c debian/.yamllint debian/.*.yml
## Build
unstable-binary-indep:
stage: build
tags:
- pbuilder
- amd64
dependencies: []
allow_failure: false
before_script:
- *pre_build
script:
- *origtargz
- pdebuild --debbuildopts "-A" --use-pdebuild-internal --buildresult "${PB_RESULT}" --architecture all -- --binary-indep --basetgz /var/cache/pbuilder/unstable-amd64.tgz
testing_unstable-amd64:
stage: build
tags:
- pbuilder
- amd64
dependencies: []
allow_failure: false
before_script:
- *pre_build
script:
- *origtargz
- ${PDEBUILD_CMD} --architecture amd64 -- --basetgz /var/cache/pbuilder/testing_unstable-amd64.tgz
unstable-i386:
stage: build
tags:
- pbuilder
- amd64
dependencies: []
allow_failure: false
before_script:
- *pre_build
script:
- *origtargz
- ${PDEBUILD_CMD} --architecture i386 -- --basetgz /var/cache/pbuilder/unstable-i386.tgz
unstable-amd64:
stage: build
tags:
- pbuilder
- amd64
dependencies: []
allow_failure: false
before_script:
- *pre_build
script:
- *origtargz
- ${PDEBUILD_CMD} --architecture amd64 -- --basetgz /var/cache/pbuilder/unstable-amd64.tgz
- ${LINTIAN_CMD} "${PB_RESULT}"/*.changes
experimental-amd64:
stage: build
tags:
- pbuilder
- amd64
dependencies: []
allow_failure: false
before_script:
- *pre_build
script:
- *origtargz
- ${PDEBUILD_CMD} --architecture amd64 -- --basetgz /var/cache/pbuilder/experimental-amd64.tgz
- ${LINTIAN_CMD}
buster-amd64:
stage: build
tags:
- pbuilder
- amd64
dependencies: []
allow_failure: false
before_script:
- *pre_build
script:
- *origtargz
- ${PDEBUILD_CMD} --architecture amd64 -- --basetgz /var/cache/pbuilder/buster-amd64.tgz
variables:
arch: amd64
dist: stable

17
debian/.yamllint vendored
View file

@ -1,17 +0,0 @@
---
extends: default
rules:
line-length:
level: warning
max: 120
braces:
level: warning
max-spaces-inside: 8
trailing-spaces:
level: warning
colons:
level: warning
max-spaces-after: 16
empty-lines:
level: warning

1
debian/clean vendored
View file

@ -1,6 +1,5 @@
## Debian CI:
debian/.gitlab-ci.yml
debian/.yamllint
lib/tasks/haml-lint.rake
lib/tasks/rubocop.rake