forked from perfsonar/debian-docker-buildmachines
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
119 lines (105 loc) · 3.02 KB
/
docker-compose.yml
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
118
version: '3.9'
###
# Some repeated defaults:
# tmpfs and /sys/fs/cgroup volumes are needed for systemd to work properly
# /mnt/build is where the git repositories will be shared with the host
###
x-build-args:
&default-build-args
OSimage: "$OSimage"
REPO: "$REPO"
useproxy: "${useproxy:-without}"
proxy: "${proxy:-}"
x-tmpfs:
&default-tmpfs
- /run
- /run/lock
- /tmp
x-volumes:
&default-volumes
- ..:/mnt/build
###
# The first service is only to build the required images
# and to build the source package
###
services:
deb_build:
container_name: source-build
platform: "linux/amd64"
image: docker.io/ntw0n/psbuild.$REPO.$OSimage@sha256:b283d2be6b3ff5b273c3144a4844566b7d5f24816fea0164b88778e40428b480
privileged: true
tmpfs: *default-tmpfs
volumes: *default-volumes
###
# The binary build containers
###
amd64_build:
container_name: amd64-build
platform: "linux/amd64"
image: docker.io/ntw0n/psbuild.$REPO.$OSimage@sha256:b283d2be6b3ff5b273c3144a4844566b7d5f24816fea0164b88778e40428b480
privileged: true
tmpfs: *default-tmpfs
volumes: *default-volumes
arm64_build:
container_name: arm64-build
platform: "linux/arm64"
image: docker.io/ntw0n/psbuild.$REPO.$OSimage@sha256:4ef55a112077b5d06e7d70981cc05b9f3fe35f3cd977d23e40ac5505fb423219
privileged: true
tmpfs: *default-tmpfs
volumes: *default-volumes
armv7_build:
container_name: armv7-build
platform: "linux/arm/v7"
image: docker.io/ntw0n/psbuild.$REPO.$OSimage@sha256:6eeef78a874c8435c4bc886649677eca5c97759a3f67efc06d00200ff3b4e8ab
privileged: true
tmpfs: *default-tmpfs
volumes: *default-volumes
ppc64le_build:
container_name: ppc64le-build
platform: "linux/ppc64le"
image: docker.io/ntw0n/psbuild.$REPO.$OSimage@sha256:8442a44402accf06d1d8fc72733b8478697fc500ccf2f36893bf4c5613505bfb
privileged: true
tmpfs: *default-tmpfs
volumes: *default-volumes
###
# The testing containers
###
deb_test:
container_name: install-test
build:
context: .
target: test-image
args: *default-build-args
platform: "linux/amd64"
image: docker.io/ntw0n/install.$REPO.$OSimage
privileged: true
tmpfs: *default-tmpfs
volumes: *default-volumes
amd64_test:
container_name: amd64-test
platform: "linux/amd64"
image: docker.io/ntw0n/install.$REPO.$OSimage
privileged: true
tmpfs: *default-tmpfs
volumes: *default-volumes
arm64_test:
container_name: arm64-test
platform: "linux/arm64"
image: docker.io/ntw0n/install.$REPO.$OSimage
privileged: true
tmpfs: *default-tmpfs
volumes: *default-volumes
armv7_test:
container_name: armv7-test
platform: "linux/arm/v7"
image: docker.io/ntw0n/install.$REPO.$OSimage
privileged: true
tmpfs: *default-tmpfs
volumes: *default-volumes
ppc64le_test:
container_name: ppc64le-test
platform: "linux/ppc64le"
image: docker.io/ntw0n/install.$REPO.$OSimage
privileged: true
tmpfs: *default-tmpfs
volumes: *default-volumes