aboutsummaryrefslogtreecommitdiffstats
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r--.gitlab-ci.yml55
1 files changed, 43 insertions, 12 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index a0241e994..8229c6575 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -5,22 +5,30 @@
5# and fedora:latest for new setups 5# and fedora:latest for new setups
6# 3. Alpine for installing directly from source 6# 3. Alpine for installing directly from source
7# Also builds apparmor package for Ubuntu LTS 7# Also builds apparmor package for Ubuntu LTS
8
8build_ubuntu_package: 9build_ubuntu_package:
9 image: ubuntu:rolling 10 image: ubuntu:rolling
10 script: 11 script:
11 - apt-get update -qq 12 - apt-get update -qq
12 - DEBIAN_FRONTEND=noninteractive apt-get install -y -qq build-essential lintian libapparmor-dev pkg-config python3 gawk 13 - >
14 DEBIAN_FRONTEND=noninteractive apt-get install -y -qq
15 build-essential lintian libapparmor-dev pkg-config python3 gawk
16 - ./ci/printenv.sh
13 - ./configure 17 - ./configure
14 - make deb 18 - make deb
15 - dpkg -i firejail*.deb 19 - dpkg -i firejail*.deb
16 - command -V firejail && firejail --version 20 - command -V firejail && firejail --version
21 # - python3 --version
17 # - python3 contrib/sort.py etc/profile-*/*.profile etc/inc/*.inc 22 # - python3 contrib/sort.py etc/profile-*/*.profile etc/inc/*.inc
18 23
19build_debian_package: 24build_debian_package:
20 image: debian:stretch 25 image: debian:stretch
21 script: 26 script:
22 - apt-get update -qq 27 - apt-get update -qq
23 - apt-get install -y -qq build-essential lintian libapparmor-dev pkg-config gawk 28 - >
29 apt-get install -y -qq
30 build-essential lintian libapparmor-dev pkg-config gawk
31 - ./ci/printenv.sh
24 - ./configure 32 - ./configure
25 - make deb 33 - make deb
26 - dpkg -i firejail*.deb 34 - dpkg -i firejail*.deb
@@ -31,6 +39,7 @@ build_redhat_package:
31 script: 39 script:
32 - dnf update -y 40 - dnf update -y
33 - dnf install -y rpm-build gcc make 41 - dnf install -y rpm-build gcc make
42 - ./ci/printenv.sh
34 - ./configure --prefix=/usr 43 - ./configure --prefix=/usr
35 - make rpms 44 - make rpms
36 - rpm -i firejail*.rpm 45 - rpm -i firejail*.rpm
@@ -41,10 +50,12 @@ build_fedora_package:
41 script: 50 script:
42 - dnf update -y 51 - dnf update -y
43 - dnf install -y rpm-build gcc make 52 - dnf install -y rpm-build gcc make
53 - ./ci/printenv.sh
44 - ./configure --prefix=/usr 54 - ./configure --prefix=/usr
45 - make rpms 55 - make rpms
46 - rpm -i firejail*.rpm 56 - rpm -i firejail*.rpm
47 - command -V firejail && firejail --version 57 - command -V firejail && firejail --version
58 # - python3 --version
48 # - python3 contrib/sort.py etc/profile-*/*.profile etc/inc/*.inc 59 # - python3 contrib/sort.py etc/profile-*/*.profile etc/inc/*.inc
49 60
50build_src_package: 61build_src_package:
@@ -53,17 +64,22 @@ build_src_package:
53 - apk update 64 - apk update
54 - apk upgrade 65 - apk upgrade
55 - apk add build-base linux-headers python3 gawk 66 - apk add build-base linux-headers python3 gawk
67 - ./ci/printenv.sh
56 - ./configure --prefix=/usr 68 - ./configure --prefix=/usr
57 - make 69 - make
58 - make install-strip 70 - make install-strip
59 - command -V firejail && firejail --version 71 - command -V firejail && firejail --version
60 # - python3 contrib/sort.py etc/*.{profile,inc} 72 # - python3 --version
73 # - python3 contrib/sort.py etc/profile-*/*.profile etc/inc/*.inc
61 74
62build_no_apparmor: 75build_no_apparmor:
63 image: ubuntu:latest 76 image: ubuntu:latest
64 script: 77 script:
65 - apt-get update -qq 78 - apt-get update -qq
66 - DEBIAN_FRONTEND=noninteractive apt-get install -y -qq build-essential lintian pkg-config gawk 79 - >
80 DEBIAN_FRONTEND=noninteractive apt-get install -y -qq
81 build-essential lintian pkg-config gawk
82 - ./ci/printenv.sh
67 - ./configure 83 - ./configure
68 - make dist 84 - make dist
69 - ./mkdeb.sh --disable-apparmor 85 - ./mkdeb.sh --disable-apparmor
@@ -77,21 +93,36 @@ debian_ci:
77 DEBFULLNAME: "$GITLAB_USER_NAME" 93 DEBFULLNAME: "$GITLAB_USER_NAME"
78 DEBEMAIL: "$GITLAB_USER_EMAIL" 94 DEBEMAIL: "$GITLAB_USER_EMAIL"
79 before_script: 95 before_script:
80 - git checkout -B ci_build $CI_COMMIT_SHA 96 - git checkout -B ci_build "$CI_COMMIT_SHA"
81 - gitlab-ci-enable-sid 97 - gitlab-ci-enable-sid
82 - gitlab-ci-enable-experimental 98 - gitlab-ci-enable-experimental
83 - echo "deb-src http://deb.debian.org/debian sid main" >> /etc/apt/sources.list 99 - |
84 - echo "deb-src http://deb.debian.org/debian experimental main" >> /etc/apt/sources.list 100 cat >>/etc/apt/sources.list <<EOF
101 deb-src http://deb.debian.org/debian sid main
102 deb-src http://deb.debian.org/debian experimental main
103 EOF
85 - apt-get update 104 - apt-get update
86 - git config user.name "$DEBFULLNAME" 105 - git config user.name "$DEBFULLNAME"
87 - git config user.email "$DEBEMAIL" 106 - git config user.email "$DEBEMAIL"
88 - cd $CI_PROJECT_DIR/.. && (apt-get source --download-only -t experimental firejail || apt-get source --download-only firejail) 107 - |
89 - cd $CI_PROJECT_DIR && tar xf ../firejail_*.debian.tar.* 108 cd "$CI_PROJECT_DIR/.."
109 apt-get source --download-only -t experimental firejail ||
110 apt-get source --download-only firejail
111 - |
112 cd "$CI_PROJECT_DIR"
113 tar xf ../firejail_*.debian.tar.*
90 - rm -rf debian/patches/ 114 - rm -rf debian/patches/
91 - VERSION=$(grep ^PACKAGE_VERSION= configure | cut -d"'" -f2) && dch -v ${VERSION}-0.1~ci "Non-maintainer upload." && git archive -o ../firejail_${VERSION}.orig.tar.gz HEAD && pristine-tar commit ../firejail_${VERSION}.orig.tar.gz ci_build && git branch -m pristine-tar origin/pristine-tar 115 - |
92 - git add debian && git commit -m "add debian/" 116 VERSION="$(grep ^PACKAGE_VERSION= configure | cut -d "'" -f 2)"
93 - export CI_COMMIT_SHA=$(git rev-parse HEAD) 117 dch -v "${VERSION}-0.1~ci" 'Non-maintainer upload.'
118 git archive -o "../firejail_${VERSION}.orig.tar.gz" HEAD
119 pristine-tar commit "../firejail_${VERSION}.orig.tar.gz" ci_build
120 git branch -m pristine-tar origin/pristine-tar
121 - git add debian
122 - git commit -m 'add debian/'
123 - export CI_COMMIT_SHA="$(git rev-parse HEAD)"
94 script: 124 script:
95 - apt-get --no-install-recommends install -y -qq gawk 125 - apt-get --no-install-recommends install -y -qq gawk
126 - ./ci/printenv.sh
96 - gitlab-ci-git-buildpackage 127 - gitlab-ci-git-buildpackage
97 - gitlab-ci-lintian 128 - gitlab-ci-lintian