Skip to content

Commit a506029

Browse files
eofffValeriy Khorunzhinuniversal-itengineernevermarine
authored
chore(ci): build more libs (#1375)
Signed-off-by: Valeriy Khorunzhin <[email protected]> Co-authored-by: Valeriy Khorunzhin <[email protected]> Co-authored-by: Nikita Korolev <[email protected]> Co-authored-by: Maxim Fedotov <[email protected]>
1 parent 577a561 commit a506029

File tree

21 files changed

+591
-51
lines changed

21 files changed

+591
-51
lines changed

build/components/versions.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,3 +86,7 @@ package:
8686
snappy: 1.2.2 # libsnappy
8787
zlib: v1.3.1
8888
zstd: v1.5.7
89+
krb5: krb5-1.21.3-final
90+
lz4: v1.9.4
91+
lzo: lzo-2.10
92+
xz: v5.4.5

images/cdi-artifact/werf.inc.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ binaries:
1010
- /cdi-binaries/cdi-source-update-poller
1111
packages:
1212
- libnbd
13+
- libxml2
14+
- xz
1315
- libtasn1
1416
{{- end -}}
1517

images/cdi-importer/werf.inc.yaml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ imageSpec:
1818
{{- define "cdi-importer-deps" -}}
1919
libraries:
2020
- libsqlite3
21-
- libxml2-devel
2221
binaries:
2322
# nbd bins and libs
2423
- /usr/sbin/nbdkit
@@ -30,7 +29,7 @@ binaries:
3029
- /usr/bin/cdi-image-size-detection /usr/bin/cdi-importer /usr/bin/cdi-source-update-poller
3130
packages:
3231
- nbdkit libnbd
33-
- libtasn1
32+
- libtasn1 libxml2
3433
{{- end -}}
3534

3635
{{ $cdiImporterDependencies := include "cdi-importer-deps" . | fromYaml }}

images/dvcr-artifact/werf.inc.yaml

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44
altPackages:
55
- gcc glibc-pthread glibc-devel glibc-devel-static
66
- git golang make binutils
7-
- libxml2-devel
87
packages:
98
- libnbd
9+
- libxml2
1010
{{- end -}}
1111

1212
{{ $builderDeps := include "$nameDeps" . | fromYaml }}
@@ -68,8 +68,6 @@ shell:
6868
---
6969
{{- $name := print $.ImageName "-dependencies" -}}
7070
{{- define "$name" -}}
71-
altPackages:
72-
- libxml2-devel
7371
binaries:
7472
- /usr/local/bin/dvcr-importer
7573
- /usr/sbin/nbd*
@@ -83,7 +81,7 @@ binaries:
8381
- /usr/bin/qemu-nbd
8482
- /usr/lib64/libnbd.s*
8583
packages:
86-
- bzip2 file nbdkit libnbd
84+
- bzip2 file nbdkit libnbd xz libxml2
8785
{{- end -}}
8886

8987
{{ $builderDependencies := include "$name" . | fromYaml }}
@@ -109,12 +107,6 @@ import:
109107
to: /qemu-img
110108
before: install
111109
shell:
112-
beforeInstall:
113-
{{- include "alt packages proxy" . | nindent 2 }}
114-
- |
115-
apt-get install -y \
116-
{{ $builderDependencies.altPackages | join " " }}
117-
{{- include "alt packages clean" . | nindent 2 }}
118110
install:
119111
- |
120112
# Install packages

images/libvirt/werf.inc.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ packages:
8787
- openssl libcurl e2fsprogs libxcrypt numactl
8888
- zlib p11-kit
8989
- libssh libssh2 libjson-c5 keyutils
90+
- krb5 xz
9091
- readline
9192
- selinux
9293
- cyrus-sasl2

images/packages/file/werf.inc.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ altPackages:
3535
- bzlib-devel liblzma-devel libseccomp-devel libcap-devel lzip ncompress strace
3636
- tree
3737
packages:
38-
- zlib zstd
38+
- zlib zstd xz
3939
{{- end -}}
4040

4141

images/packages/krb5/README.md

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
└── [drwxr-xr-x 4096] usr
2+
├── [drwxr-xr-x 4096] include
3+
│ ├── [drwxr-xr-x 4096] gssapi
4+
│ │ ├── [-rw-r--r-- 30083] gssapi.h
5+
│ │ ├── [-rw-r--r-- 2640] gssapi_alloc.h
6+
│ │ ├── [-rw-r--r-- 21165] gssapi_ext.h
7+
│ │ ├── [-rw-r--r-- 2217] gssapi_generic.h
8+
│ │ ├── [-rw-r--r-- 12027] gssapi_krb5.h
9+
│ │ └── [-rw-r--r-- 1652] mechglue.h
10+
│ ├── [-rw-r--r-- 181] gssapi.h
11+
│ ├── [drwxr-xr-x 4096] gssrpc
12+
│ │ ├── [-rw-r--r-- 6441] auth.h
13+
│ │ ├── [-rw-r--r-- 4840] auth_gss.h
14+
│ │ ├── [-rw-r--r-- 4333] auth_gssapi.h
15+
│ │ ├── [-rw-r--r-- 2896] auth_unix.h
16+
│ │ ├── [-rw-r--r-- 9654] clnt.h
17+
│ │ ├── [-rw-r--r-- 2442] netdb.h
18+
│ │ ├── [-rw-r--r-- 3429] pmap_clnt.h
19+
│ │ ├── [-rw-r--r-- 3841] pmap_prot.h
20+
│ │ ├── [-rw-r--r-- 2303] pmap_rmt.h
21+
│ │ ├── [-rw-r--r-- 10034] rename.h
22+
│ │ ├── [-rw-r--r-- 3143] rpc.h
23+
│ │ ├── [-rw-r--r-- 5107] rpc_msg.h
24+
│ │ ├── [-rw-r--r-- 11402] svc.h
25+
│ │ ├── [-rw-r--r-- 3976] svc_auth.h
26+
│ │ ├── [-rw-r--r-- 3628] types.h
27+
│ │ └── [-rw-r--r-- 11781] xdr.h
28+
│ ├── [drwxr-xr-x 4096] kadm5
29+
│ │ ├── [-rw-r--r-- 20688] admin.h
30+
│ │ ├── [-rw-r--r-- 1548] chpass_util_strings.h
31+
│ │ └── [-rw-r--r-- 4345] kadm_err.h
32+
│ ├── [-rw-r--r-- 64259] kdb.h
33+
│ ├── [-rw-r--r-- 8933] krad.h
34+
│ ├── [drwxr-xr-x 4096] krb5
35+
│ │ ├── [-rw-r--r-- 4213] ccselect_plugin.h
36+
│ │ ├── [-rw-r--r-- 5864] certauth_plugin.h
37+
│ │ ├── [-rw-r--r-- 15529] clpreauth_plugin.h
38+
│ │ ├── [-rw-r--r-- 5460] hostrealm_plugin.h
39+
│ │ ├── [-rw-r--r-- 12482] kadm5_auth_plugin.h
40+
│ │ ├── [-rw-r--r-- 6161] kadm5_hook_plugin.h
41+
│ │ ├── [-rw-r--r-- 5320] kdcpolicy_plugin.h
42+
│ │ ├── [-rw-r--r-- 18241] kdcpreauth_plugin.h
43+
│ │ ├── [-rw-r--r-- 348689] krb5.h
44+
│ │ ├── [-rw-r--r-- 5881] localauth_plugin.h
45+
│ │ ├── [-rw-r--r-- 2686] locate_plugin.h
46+
│ │ ├── [-rw-r--r-- 2090] plugin.h
47+
│ │ ├── [-rw-r--r-- 1774] preauth_plugin.h
48+
│ │ └── [-rw-r--r-- 4426] pwqual_plugin.h
49+
│ ├── [-rw-r--r-- 402] krb5.h
50+
│ ├── [-rw-r--r-- 12154] profile.h
51+
│ ├── [-rw-r--r-- 6640] verto-module.h
52+
│ └── [-rw-r--r-- 19437] verto.h
53+
└── [drwxr-xr-x 4096] lib64
54+
├── [drwxr-xr-x 4096] krb5
55+
│ └── [drwxr-xr-x 4096] plugins
56+
│ ├── [drwxr-xr-x 4096] authdata
57+
│ ├── [drwxr-xr-x 4096] kdb
58+
│ │ └── [-rwxr-xr-x 112496] db2.so
59+
│ ├── [drwxr-xr-x 4096] libkrb5
60+
│ ├── [drwxr-xr-x 4096] preauth
61+
│ │ ├── [-rwxr-xr-x 32520] otp.so
62+
│ │ ├── [-rwxr-xr-x 154992] pkinit.so
63+
│ │ ├── [-rwxr-xr-x 93936] spake.so
64+
│ │ └── [-rwxr-xr-x 21824] test.so
65+
│ └── [drwxr-xr-x 4096] tls
66+
│ └── [-rwxr-xr-x 29120] k5tls.so
67+
├── [lrwxrwxrwx 21] libgssapi_krb5.so -> libgssapi_krb5.so.2.2
68+
├── [lrwxrwxrwx 21] libgssapi_krb5.so.2 -> libgssapi_krb5.so.2.2
69+
├── [-rwxr-xr-x 392192] libgssapi_krb5.so.2.2
70+
├── [lrwxrwxrwx 16] libgssrpc.so -> libgssrpc.so.4.2
71+
├── [lrwxrwxrwx 16] libgssrpc.so.4 -> libgssrpc.so.4.2
72+
├── [-rwxr-xr-x 145832] libgssrpc.so.4.2
73+
├── [lrwxrwxrwx 18] libk5crypto.so -> libk5crypto.so.3.1
74+
├── [lrwxrwxrwx 18] libk5crypto.so.3 -> libk5crypto.so.3.1
75+
├── [-rwxr-xr-x 201744] libk5crypto.so.3.1
76+
├── [lrwxrwxrwx 19] libkadm5clnt.so -> libkadm5clnt_mit.so
77+
├── [lrwxrwxrwx 24] libkadm5clnt_mit.so -> libkadm5clnt_mit.so.12.0
78+
├── [lrwxrwxrwx 24] libkadm5clnt_mit.so.12 -> libkadm5clnt_mit.so.12.0
79+
├── [-rwxr-xr-x 105088] libkadm5clnt_mit.so.12.0
80+
├── [lrwxrwxrwx 18] libkadm5srv.so -> libkadm5srv_mit.so
81+
├── [lrwxrwxrwx 23] libkadm5srv_mit.so -> libkadm5srv_mit.so.12.0
82+
├── [lrwxrwxrwx 23] libkadm5srv_mit.so.12 -> libkadm5srv_mit.so.12.0
83+
├── [-rwxr-xr-x 137216] libkadm5srv_mit.so.12.0
84+
├── [lrwxrwxrwx 15] libkdb5.so -> libkdb5.so.10.0
85+
├── [lrwxrwxrwx 15] libkdb5.so.10 -> libkdb5.so.10.0
86+
├── [-rwxr-xr-x 96008] libkdb5.so.10.0
87+
├── [lrwxrwxrwx 14] libkrad.so -> libkrad.so.0.0
88+
├── [lrwxrwxrwx 14] libkrad.so.0 -> libkrad.so.0.0
89+
├── [-rwxr-xr-x 44456] libkrad.so.0.0
90+
├── [lrwxrwxrwx 14] libkrb5.so -> libkrb5.so.3.3
91+
├── [lrwxrwxrwx 14] libkrb5.so.3 -> libkrb5.so.3.3
92+
├── [-rwxr-xr-x 1054216] libkrb5.so.3.3
93+
├── [lrwxrwxrwx 21] libkrb5support.so -> libkrb5support.so.0.1
94+
├── [lrwxrwxrwx 21] libkrb5support.so.0 -> libkrb5support.so.0.1
95+
├── [-rwxr-xr-x 63408] libkrb5support.so.0.1
96+
├── [lrwxrwxrwx 15] libverto.so -> libverto.so.0.0
97+
├── [lrwxrwxrwx 15] libverto.so.0 -> libverto.so.0.0
98+
├── [-rwxr-xr-x 47696] libverto.so.0.0
99+
└── [drwxr-xr-x 4096] pkgconfig
100+
├── [-rw-r--r-- 241] gssrpc.pc
101+
├── [-rw-r--r-- 262] kadm-client.pc
102+
├── [-rw-r--r-- 258] kadm-server.pc
103+
├── [-rw-r--r-- 293] kdb.pc
104+
├── [-rw-r--r-- 199] krb5-gssapi.pc
105+
├── [-rw-r--r-- 324] krb5.pc
106+
├── [-rw-r--r-- 249] mit-krb5-gssapi.pc
107+
└── [-rw-r--r-- 396] mit-krb5.pc
108+
109+
16 directories, 92 files

images/packages/krb5/werf.inc.yaml

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
---
2+
image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ $.ImageName }}
3+
final: false
4+
fromImage: builder/scratch
5+
import:
6+
- image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ $.ImageName }}-builder
7+
add: /out
8+
to: /{{ $.ImageName }}
9+
before: setup
10+
11+
---
12+
{{- $version := get $.PackageVersion $.ImageName }}
13+
{{- $gitRepoUrl := "krb5/krb5.git" }}
14+
15+
image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-src-artifact
16+
final: false
17+
fromImage: builder/src
18+
secrets:
19+
- id: SOURCE_REPO
20+
value: {{ $.SOURCE_REPO_GIT }}
21+
shell:
22+
install:
23+
- git clone --depth=1 $(cat /run/secrets/SOURCE_REPO)/{{ $gitRepoUrl }} --branch {{ $version }} /src
24+
25+
---
26+
{{- $name := print $.ImageName "-dependencies" -}}
27+
{{- define "$name" -}}
28+
altPackages:
29+
- git gcc automake make tree
30+
- flex bison
31+
packages:
32+
- linux-pam openssl e2fsprogs keyutils ncurses
33+
{{- end -}}
34+
35+
{{ $builderDependencies := include "$name" . | fromYaml }}
36+
37+
image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ $.ImageName }}-builder
38+
final: false
39+
fromImage: builder/alt
40+
import:
41+
- image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-src-artifact
42+
add: /src
43+
to: /src
44+
before: install
45+
{{- include "importPackageImages" (list . $builderDependencies.packages "install") -}}
46+
shell:
47+
beforeInstall:
48+
{{- include "alt packages proxy" . | nindent 2 }}
49+
- |
50+
apt-get install -y \
51+
{{ $builderDependencies.altPackages | join " " }}
52+
53+
{{- include "alt packages clean" . | nindent 2 }}
54+
55+
install:
56+
- |
57+
# Install packages
58+
PKGS="{{ $builderDependencies.packages | join " " }}"
59+
for pkg in $PKGS; do
60+
cp -a /$pkg/. /
61+
rm -rf /$pkg
62+
done
63+
OUTDIR=/out
64+
65+
cd /src/src
66+
export YACC="bison -y"
67+
export CFLAGS="-O2 -fcommon"
68+
69+
autoreconf
70+
71+
./configure \
72+
--prefix=/usr \
73+
--libdir=/usr/lib64 \
74+
--exec-prefix=/usr \
75+
--enable-shared --disable-static \
76+
--enable-dns-for-realm \
77+
--enable-pkinit \
78+
--with-system-et \
79+
--with-system-ss \
80+
--with-pkinit-crypto-impl=openssl \
81+
--with-tls-impl=openssl
82+
83+
make -j$(nproc)
84+
make DESTDIR=$OUTDIR install
85+
86+
rm -rf $OUTDIR/usr/share
87+
rm -rf $OUTDIR/usr/var
88+
89+
find $OUTDIR -type f -executable | while read -r execfile; do
90+
if strip "$execfile"; then
91+
echo "Stripped: $execfile"
92+
fi
93+
done
94+
95+
tree -sp $OUTDIR

images/packages/libfuse3/README.md

Lines changed: 25 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,30 @@
11
# libfuse3
22
/libfuse3
33
```
4-
.
5-
`-- usr
6-
|-- bin
7-
| `-- fusermount3
8-
|-- etc
9-
| `-- fuse.conf
10-
|-- include
11-
| `-- fuse3
12-
| |-- cuse_lowlevel.h
13-
| |-- fuse.h
14-
| |-- fuse_common.h
15-
| |-- fuse_log.h
16-
| |-- fuse_lowlevel.h
17-
| |-- fuse_opt.h
18-
| `-- libfuse_config.h
19-
|-- lib64
20-
| |-- libfuse3.so -> libfuse3.so.3
21-
| |-- libfuse3.so.3 -> libfuse3.so.3.16.2
22-
| |-- libfuse3.so.3.16.2
23-
| `-- pkgconfig
24-
| `-- fuse3.pc
25-
|-- sbin
26-
| `-- mount.fuse3
27-
`-- share
28-
`-- man
29-
|-- man1
30-
| `-- fusermount3.1
31-
`-- man8
32-
`-- mount.fuse3.8
4+
[drwxr-xr-x 7] usr
5+
├── [drwxr-xr-x 3] bin
6+
│ └── [-rwsr-xr-x 39K] fusermount3
7+
├── [drwxr-xr-x 3] include
8+
│ └── [drwxr-xr-x 9] fuse3
9+
│ ├── [-rw-r--r-- 2.5K] cuse_lowlevel.h
10+
│ ├── [-rw-r--r-- 46K] fuse.h
11+
│ ├── [-rw-r--r-- 29K] fuse_common.h
12+
│ ├── [-rw-r--r-- 1.9K] fuse_log.h
13+
│ ├── [-rw-r--r-- 71K] fuse_lowlevel.h
14+
│ ├── [-rw-r--r-- 7.4K] fuse_opt.h
15+
│ └── [-rw-r--r-- 157] libfuse_config.h
16+
├── [drwxr-xr-x 3] lib
17+
│ └── [drwxr-xr-x 3] udev
18+
│ └── [drwxr-xr-x 3] rules.d
19+
│ └── [-rw-r--r-- 28] 99-fuse3.rules
20+
├── [drwxr-xr-x 6] lib64
21+
│ ├── [lrwxrwxrwx 13] libfuse3.so -> libfuse3.so.3
22+
│ ├── [lrwxrwxrwx 18] libfuse3.so.3 -> libfuse3.so.3.16.2
23+
│ ├── [-rwxr-xr-x 280K] libfuse3.so.3.16.2
24+
│ └── [drwxr-xr-x 3] pkgconfig
25+
│ └── [-rw-r--r-- 229] fuse3.pc
26+
└── [drwxr-xr-x 3] sbin
27+
└── [-rwxr-xr-x 19K] mount.fuse3
3328
34-
13 directories, 16 files
29+
11 directories, 14 files
3530
```

images/packages/libfuse3/werf.inc.yaml

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ packages:
55
- gcc git
66
- make rpm-macros-alternatives meson
77
- ninja-build libudev-devel
8+
- tree
89
{{- end -}}
910

1011
{{- $builderDependencies := include "$name" . | fromYaml }}
@@ -62,6 +63,25 @@ shell:
6263
OUTDIR=/out
6364
6465
cd /src
65-
meson setup build -Duseroot=false -Dprefix=$OUTDIR/usr
66+
meson setup build \
67+
--prefix=/usr \
68+
--libdir=/usr/lib64 \
69+
--sbindir=/usr/sbin \
70+
--buildtype=release
71+
6672
meson compile -C build
73+
DESTDIR=${OUTDIR} meson install -C build
74+
75+
find $OUTDIR -type f -executable | while read -r execfile; do
76+
if strip "$execfile"; then
77+
echo "Stripped: $execfile"
78+
fi
79+
done
80+
6781
meson install -C build
82+
83+
rm -rf /out/usr/share
84+
rm -rf /out/dev
85+
rm -rf /out/etc
86+
87+
tree -hp /out

0 commit comments

Comments
 (0)