-
Notifications
You must be signed in to change notification settings - Fork 37
/
Copy pathbuild-in-docker.sh
executable file
·35 lines (30 loc) · 1.51 KB
/
build-in-docker.sh
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
#!/bin/bash
set -e
debuild -S
finish() {
docker stop $container >/dev/null
docker container rm $container >/dev/null
}
docker pull ubuntu:22.04
container=`docker run -dit -e TZ='Etc/UTC' -e DEBIAN_FRONTEND='noninteractive' ubuntu:22.04 `
trap finish EXIT
docker exec $container apt-get -y update
docker exec $container apt-get -y install apt-utils devscripts sudo #dpkg-dev
docker exec $container apt-get -y install libsqlite3-dev
docker exec $container mkdir -p /root/repo
docker exec $container useradd user
docker exec $container mkdir /home/user
docker exec $container chown user.user /home/user
docker exec $container sudo -u user mkdir /home/user/build
docker cp ../bitgesell_0.1.13.dsc $container:/root/repo/
docker cp ../bitgesell_0.1.13.tar.xz $container:/root/repo/
# docker exec -w /root/repo $container sh -c "dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz"
docker exec -w /root/repo $container sh -c "apt-ftparchive sources . > Sources"
docker exec $container sh -c "echo deb-src [trusted=yes] file:/root/repo ./ >> /etc/apt/sources.list"
docker exec $container apt-get -y -o APT::Sandbox::User=root update
docker exec $container apt-get -y build-dep bitgesell
docker exec $container chmod a+rX /root
docker exec $container chmod -R a+rX /root/repo
docker exec -w /home/user/build $container sudo -u user apt-get -y source bitgesell
docker exec -w /home/user/build/bitgesell-0.1.13 $container sudo -u user debuild -b
docker cp $container:/home/user/build/bitgesell_0.1.13_amd64.deb bitgesell_0.1.13_amd64.deb