-
Notifications
You must be signed in to change notification settings - Fork 16
117 lines (95 loc) · 2.72 KB
/
build-deb.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
name: Build debian packages
on:
push:
branches:
- main
tags:
- "*"
pull_request:
env:
DEBIAN_FRONTEND: noninteractive
DEBCONF_NONINTERACTIVE_SEEN: true
TERM: dumb
jobs:
build-deb-package:
name: Build ubuntu package
runs-on: ubuntu-latest
env:
AS_USER: runuser -u builder --
container:
image: ubuntu:devel
steps:
- name: Prepare container
run: |
echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/90aptyes
apt update
apt upgrade
apt install git
git config --system --add safe.directory $PWD
- name: Checkout authd code
uses: actions/checkout@v4
- name: Install dependencies
run: |
apt install equivs devscripts lintian
mk-build-deps -ir
- name: Setup build user
run: |
adduser --disabled-password --gecos "" builder
chown builder:builder . -R
- name: Build packages
run: |
export DEBEMAIL="$(git log -1 --format='%ae' HEAD)"
export DEBFULLNAME="$(git log -1 --format='%an' HEAD)"
$AS_USER dch --local "+git$(git rev-parse --short HEAD)" "CI: Autoamtic build"
$AS_USER dpkg-buildpackage -b --jobs=$(getconf _NPROCESSORS_ONLN)
mv -v ../*.deb .
ls -lht *.deb
- name: Archiving built debs
uses: actions/upload-artifact@v3
with:
name: debian-packages
path: ./*.*deb
if-no-files-found: error
- name: Install built debs
run: |
apt install --simulate ./*.deb
- name: Lint generated debs
run: |
$AS_USER lintian --pedantic --fail-on error ./*.deb
- name: Build package sources
run: |
dpkg-buildpackage -S
mkdir deb-sources
mv -v ../authd_* deb-sources
- name: Archiving source packages
uses: actions/upload-artifact@v3
with:
name: debian-packages-sources
path: deb-sources
if-no-files-found: error
run-autopkgtests:
name: Run autopkgtests
needs: build-deb-package
runs-on: ubuntu-latest
container:
image: ubuntu:devel
steps:
- name: Prepare container
run: |
echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/90aptyes
apt update
apt upgrade
apt install git
git config --system --add safe.directory $PWD
- name: Download artifacts
uses: actions/download-artifact@v3
- name: Install dependencies
run: |
apt install autopkgtest
- name: Run autopkgtests
run: |
find
mv ./debian-packages-sources/* .
mv ./debian-packages/* .
autopkgtest --apt-pocket proposed --apt-upgrade --no-built-binaries \
*.deb *.changes -- null