Skip to content

Commit 42c149a

Browse files
authored
chore(core): build xorriso (#966)
Build the xorriso package, replace it in virt-launcher and virt-handler images. --------- Signed-off-by: Daniil Antoshin <daniil.antoshin@flant.com>
1 parent 5a9492a commit 42c149a

4 files changed

Lines changed: 81 additions & 6 deletions

File tree

component_versions/version_map.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@ firmware:
44
edk2: stable202411
55
package:
66
swtpm: 0.10.0
7+
xorriso: 1.5.6
78
numactl: 2.0.19
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
---
2+
image: {{ $.ImageType }}/{{ $.ImageName }}
3+
final: false
4+
fromImage: builder/scratch
5+
import:
6+
- image: {{ $.ImageType }}/{{ $.ImageName }}-builder
7+
add: /out
8+
to: /xorriso
9+
before: setup
10+
11+
---
12+
{{- $version := get $.Package $.ImageName }}
13+
{{- $gitRepoUrl := "libburnia/libisoburn.git" }}
14+
15+
{{- $name := print $.ImageName "-dependencies" -}}
16+
{{- define "$name" -}}
17+
packages:
18+
- gcc
19+
- git pkg-config trousers
20+
- automake autoconf make makeinfo libtool
21+
- libburn-devel libisofs-devel
22+
{{- end -}}
23+
24+
{{ $builderDependencies := include "$name" . | fromYaml }}
25+
26+
image: {{ $.ImageType }}/{{ $.ImageName }}-builder
27+
final: false
28+
fromImage: builder/alt
29+
secrets:
30+
- id: SOURCE_REPO
31+
value: {{ $.SOURCE_REPO_GIT }}
32+
shell:
33+
beforeInstall:
34+
- |
35+
apt-get update && apt-get install -y \
36+
{{ $builderDependencies.packages | join " " }}
37+
apt-get clean
38+
rm --recursive --force /var/lib/apt/lists/ftp.altlinux.org* /var/cache/apt/*.bin
39+
40+
install:
41+
- |
42+
OUTDIR=/out
43+
mkdir -p ~/.ssh && echo "StrictHostKeyChecking accept-new" > ~/.ssh/config
44+
45+
git clone --depth=1 $(cat /run/secrets/SOURCE_REPO)/{{ $gitRepoUrl }} --branch release-{{ $version }} /src
46+
cd /src
47+
48+
./bootstrap
49+
50+
./configure --prefix=/usr --libdir=/usr/lib64
51+
52+
make -j$(nproc)
53+
54+
make DESTDIR=$OUTDIR install
55+
56+
strip $OUTDIR/usr/bin/xorriso
57+
58+
# We don't need man, test and samples files
59+
rm -rf $OUTDIR/usr/include
60+
rm -rf $OUTDIR/usr/share
61+
rm -rf $OUTDIR/usr/lib64/pkgconfig

images/virt-handler/werf.inc.yaml

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@ packages:
5454
- acl
5555
- nftables
5656
- qemu-img
57-
- xorriso
5857
binaries:
5958
- /usr/bin/qemu-img
6059
- /usr/bin/qemu-nbd
@@ -72,17 +71,22 @@ binaries:
7271

7372
{{ $virtHandlerDependencies := include "$name" . | fromYaml }}
7473

75-
7674
image: {{ $.ImageName }}-bins
7775
final: false
7876
fromImage: base-alt-p11-binaries
77+
import:
78+
- image: packages/binaries/xorriso
79+
add: /xorriso
80+
to: /xorriso
81+
before: install
7982
shell:
8083
install:
8184
- |
8285
apt-get update && apt-get install --yes \
8386
{{ $virtHandlerDependencies.packages | join " " }}
8487
- apt-get clean
8588
- rm --recursive --force /var/lib/apt/lists/ftp.altlinux.org* /var/cache/apt/*.bin
89+
- cp -a /xorriso/. /
8690
setup:
8791
- |
8892
/relocate_binaries.sh -i "{{ $virtHandlerDependencies.binaries | join " " }}" -o /relocate
@@ -91,9 +95,9 @@ shell:
9195
echo "root:x:0:0:root:/root:/bin/bash" >> /relocate/etc/passwd
9296
echo "root:x:0:" >> /relocate/etc/group
9397
echo "root:x:::::::" >> /relocate/etc/shadow
94-
98+
9599
echo "qemu:x:107:107::/home/qemu:/bin/bash" >> /relocate/etc/passwd
96100
echo "qemu:x:107:" >> /relocate/etc/group
97101
mkdir -p /relocate/home/qemu
98102
chown -R 107:107 /relocate/home/qemu
99-
103+

images/virt-launcher/werf.inc.yaml

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,7 @@ libs:
103103
- libsystemd-devel
104104
- libjson-c-devel
105105
- systemtap-sdt-devel
106+
- libacl
106107
- libacl-devel
107108
- libtpms-devel libtpms
108109
- glib2-devel
@@ -112,6 +113,8 @@ libs:
112113
- libtirpc-devel
113114
- libclocale
114115
- libLLVMSPIRVLib-devel
116+
- libisofs
117+
- libburn
115118
packages:
116119
- acl
117120
- attr
@@ -131,7 +134,6 @@ packages:
131134
- policycoreutils
132135
- psmisc
133136
- msulogin
134-
- xorriso
135137
binaries:
136138
# Gnu utils (requared for swtpm)
137139
- /usr/bin/certtool
@@ -142,7 +144,7 @@ binaries:
142144
# Openssl
143145
- /usr/bin/openssl
144146
# Xorriso (Creates an image of an ISO9660 filesystem)
145-
- /usr/bin/xorriso-dd-target /usr/bin/xorrisofs
147+
- /usr/bin/xorriso-dd-target /usr/bin/xorrisofs /usr/bin/xorriso
146148
# Swtpm
147149
- /usr/bin/swtpm /usr/bin/swtpm_bios /usr/bin/swtpm_cert /usr/bin/swtpm_ioctl /usr/bin/swtpm_localca /usr/bin/swtpm_setup
148150
# Dmidecode
@@ -244,6 +246,12 @@ import:
244246
to: /numactl
245247
before: install
246248

249+
250+
- image: packages/binaries/xorriso
251+
add: /xorriso
252+
to: /xorriso
253+
before: install
254+
247255
- image: tools/coreutils
248256
add: /
249257
to: /relocate
@@ -305,6 +313,7 @@ shell:
305313
306314
cp -a /VBINS/. /relocate
307315
316+
cp -a /xorriso/. /
308317
cp -a /swtpm/. /
309318
cp -a /numactl/. /
310319

0 commit comments

Comments
 (0)