diff options
author | Carsten Leonhardt <leo@debian.org> | 2020-08-30 15:44:27 +0200 |
---|---|---|
committer | Carsten Leonhardt <leo@debian.org> | 2020-08-30 15:44:27 +0200 |
commit | 40aa938173b254716347d5c36f7ed14d41993a4c (patch) | |
tree | 2b82eaa8781ac76f539a4a845ea8379adf8320a8 | |
parent | 8b0cfce0bae559b9cc4589e1413ffccf68f8121c (diff) |
Revert "Use same gitlab CI config as current master"debian/9.4.2-2+deb10u1
This reverts commit 57b90f50479ec8fc5813e333ad05bffa7f132c3f.
-rw-r--r-- | debian/.gitlab-ci.yml | 121 |
1 files changed, 115 insertions, 6 deletions
diff --git a/debian/.gitlab-ci.yml b/debian/.gitlab-ci.yml index 0613e0b1..027db83d 100644 --- a/debian/.gitlab-ci.yml +++ b/debian/.gitlab-ci.yml @@ -1,10 +1,38 @@ -include: - - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml - - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml - variables: - RELEASE: 'testing' - REGISTRY_BASE_URL: "registry.salsa.debian.org/salsa-ci-team/images" + DEBFULLNAME: "Salsa Pipeline" + DEBEMAIL: "<salsa-pipeline@debian.org>" + DEBIAN_FRONTEND: noninteractive + WORKING_DIR: ${CI_PROJECT_DIR}/debian/output + REGISTRY_BASE_URL: "registry.salsa.debian.org/bacula-team/images" + RELEASE: 'unstable' + +stages: + - build + - test + +build full: + stage: build + image: ${REGISTRY_BASE_URL}/gbp + services: + - docker:dind + artifacts: + name: "$CI_JOB_NAME:$CI_COMMIT_REF_NAME" + paths: + - ${WORKING_DIR}/ + cache: + paths: + - ${CCACHE_WORK_DIR} + variables: + CCACHE_TMP_DIR: ${CI_PROJECT_DIR}/../.ccache + CCACHE_WORK_DIR: ${WORKING_DIR}/.ccache + script: + - | + curl https://prittiau.debian.net/post -X POST --data "{\"project_id\":$CI_PROJECT_ID, \"pipeline_id\":$CI_PIPELINE_ID}" --header "Content-Type: application/json" + - mkdir -p ${CCACHE_WORK_DIR} + - mv ${CCACHE_WORK_DIR} ${CCACHE_TMP_DIR} + - gbp pull --ignore-branch --pristine-tar --track-missing + - gbp buildpackage --git-ignore-branch --git-export-dir=${WORKING_DIR} --git-builder="docker-build.sh ${REGISTRY_BASE_URL}/dockerbuilder:${RELEASE} --build=full" + - mv ${CCACHE_TMP_DIR} ${CCACHE_WORK_DIR} build arch: stage: build @@ -46,6 +74,22 @@ build indep: - gbp buildpackage --git-ignore-branch --git-export-dir=${WORKING_DIR} --git-builder="docker-build.sh ${REGISTRY_BASE_URL}/dockerbuilder:${RELEASE} --build=all" - mv ${CCACHE_TMP_DIR} ${CCACHE_WORK_DIR} +lintian: + stage: test + image: ${REGISTRY_BASE_URL}/lintian:${RELEASE} + variables: + GIT_STRATEGY: none + script: + - lintian -EIL +pedantic --no-tag-display-limit --profile debian/main ${WORKING_DIR}/*.changes + +build log scanner: + stage: test + image: ${REGISTRY_BASE_URL}/blhc + variables: + GIT_STRATEGY: none + script: + - blhc --debian --line-numbers --color ${WORKING_DIR}/*.build + autopkgtest sqlite3: stage: test image: ${REGISTRY_BASE_URL}/autopkgtest:${RELEASE} @@ -64,3 +108,68 @@ autopkgtest pgsql: script: - eatmydata autopkgtest --override-control=debian/tests/control-pgsql -U ${WORKING_DIR}/*.changes -- null || [ $? -eq 8 ] +reprotest: + stage: test + image: ${REGISTRY_BASE_URL}/reprotest + artifacts: + name: "$CI_JOB_NAME:$CI_COMMIT_REF_NAME" + paths: + - ./reprotest.log + when: always + script: + - apt-get update + - eatmydata apt-get build-dep -y . + - export DEB_BUILD_OPTIONS=nocheck + - eatmydata reprotest --min-cpus $(nproc --all) . -- null |& tee "${CI_PROJECT_DIR}/reprotest.log" + +piuparts sqlite3: + stage: test + image: ${REGISTRY_BASE_URL}/piuparts + variables: + GIT_STRATEGY: none + services: + - docker:dind + script: + - CHROOT_PATH=/tmp/debian-chroot + - CONTAINER_ID=$(docker run --rm -d debian:${RELEASE} sleep infinity) + - docker exec ${CONTAINER_ID} bash -c "apt-get update && apt-get install eatmydata -y" + - mkdir -p ${CHROOT_PATH} + - docker export ${CONTAINER_ID} | tar -C ${CHROOT_PATH} -xf - + - mknod -m 666 ${CHROOT_PATH}/dev/urandom c 1 9 + - TESTDEBS=$(ls ${WORKING_DIR}/*.deb | egrep -v "pgsql|mysql") + - piuparts --keep-sources-list --scriptsdir /etc/piuparts/scripts --allow-database --warn-on-leftovers-after-purge -d ${RELEASE} --distupgrade-to-testdebs --hard-link -e ${CHROOT_PATH} ${TESTDEBS} + +piuparts mysql: + stage: test + image: ${REGISTRY_BASE_URL}/piuparts + variables: + GIT_STRATEGY: none + services: + - docker:dind + script: + - CHROOT_PATH=/tmp/debian-chroot + - CONTAINER_ID=$(docker run --rm -d debian:${RELEASE} sleep infinity) + - docker exec ${CONTAINER_ID} bash -c "apt-get update && apt-get install eatmydata -y" + - mkdir -p ${CHROOT_PATH} + - docker export ${CONTAINER_ID} | tar -C ${CHROOT_PATH} -xf - + - mknod -m 666 ${CHROOT_PATH}/dev/urandom c 1 9 + - TESTDEBS=$(ls ${WORKING_DIR}/*.deb | egrep -v "pgsql|sqlite3") + - piuparts --keep-sources-list --scriptsdir /etc/piuparts/scripts --allow-database --warn-on-leftovers-after-purge -d ${RELEASE} --distupgrade-to-testdebs --hard-link -e ${CHROOT_PATH} ${TESTDEBS} + +piuparts pgsql: + stage: test + image: ${REGISTRY_BASE_URL}/piuparts + variables: + GIT_STRATEGY: none + services: + - docker:dind + script: + - CHROOT_PATH=/tmp/debian-chroot + - CONTAINER_ID=$(docker run --rm -d debian:${RELEASE} sleep infinity) + - docker exec ${CONTAINER_ID} bash -c "apt-get update && apt-get install eatmydata -y" + - mkdir -p ${CHROOT_PATH} + - docker export ${CONTAINER_ID} | tar -C ${CHROOT_PATH} -xf - + - mknod -m 666 ${CHROOT_PATH}/dev/urandom c 1 9 + - TESTDEBS=$(ls ${WORKING_DIR}/*.deb | egrep -v "mysql|sqlite3") + - piuparts --keep-sources-list --scriptsdir /etc/piuparts/scripts --allow-database --warn-on-leftovers-after-purge -d ${RELEASE} --distupgrade-to-testdebs --hard-link -e ${CHROOT_PATH} ${TESTDEBS} + |