Add initial pipeline
Agustin Henze
5 years ago
0 | # Warning! This file is autogenerated by salsa pipeline bot. Any change made | |
1 | # over this document will be lost. Customization and changes must be made over | |
2 | # the template yaml. | |
3 | variables: | |
4 | DEBFULLNAME: "Salsa Pipeline" | |
5 | DEBEMAIL: "<salsa-pipeline@debian.org>" | |
6 | DEBIAN_FRONTEND: noninteractive | |
7 | DEB_BUILD_OPTIONS: nocheck | |
8 | WORKING_DIR: ./debian/output | |
9 | ||
10 | stages: | |
11 | - build | |
12 | - test | |
13 | ||
14 | image: debian:unstable | |
15 | ||
16 | build package: | |
17 | stage: build | |
18 | artifacts: | |
19 | expire_in: 180 day | |
20 | name: "$CI_BUILD_NAME" | |
21 | paths: | |
22 | - ${WORKING_DIR}/ | |
23 | script: | |
24 | - apt-get update | |
25 | - apt-get install eatmydata -y | |
26 | - eatmydata apt-get build-dep -y . | |
27 | - eatmydata apt-get install git-buildpackage -y | |
28 | - gbp pull --ignore-branch | |
29 | - gbp buildpackage --git-ignore-branch --git-export-dir=${WORKING_DIR} -us -uc | |
30 | ||
31 | run autopkgtest: | |
32 | stage: test | |
33 | script: | |
34 | - apt-get update && apt-get install autopkgtest eatmydata -y --no-install-recommends | |
35 | - eatmydata autopkgtest ${WORKING_DIR}/*.deb -- null | |
36 | ||
37 | run lintian: | |
38 | stage: test | |
39 | script: | |
40 | - apt-get update && apt-get install lintian -y --no-install-recommends | |
41 | - lintian -iI ${WORKING_DIR}/*.changes | |
42 | ||
43 | run reprotest: | |
44 | stage: test | |
45 | image: genericpipeline/reprotest-docker | |
46 | script: | |
47 | - apt-get update && apt-get install eatmydata -y | |
48 | - eatmydata apt-get build-dep -y . | |
49 | - eatmydata reprotest . -- null | |
50 | tags: | |
51 | - privileged | |
52 | ||
53 | run piuparts: | |
54 | stage: test | |
55 | image: genericpipeline/piuparts-docker | |
56 | services: | |
57 | - docker:dind | |
58 | script: | |
59 | - CHROOT_PATH=/tmp/debian-unstable | |
60 | - CONTAINER_ID=$(docker run --rm -d debian:unstable sleep infinity) | |
61 | - docker exec ${CONTAINER_ID} bash -c "apt-get update && apt-get install eatmydata -y" | |
62 | - mkdir -p ${CHROOT_PATH} | |
63 | - docker export ${CONTAINER_ID} | tar -C ${CHROOT_PATH} -xf - | |
64 | - mknod -m 666 ${CHROOT_PATH}/dev/urandom c 1 9 | |
65 | - piuparts --hard-link -e ${CHROOT_PATH} ${WORKING_DIR}/*.deb | |
66 | tags: | |
67 | - privileged |