@@ -7,74 +7,10 @@ import:
77 add : /out
88 to : /{{ $.ImageName }}
99 before : setup
10-
1110---
12- {{- $version := get .PackageVersion .ImageName }}
13- {{- $gitRepoUrl := "json-c/json-c.git" }}
14- image : {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-src-artifact
15- final : false
16- fromImage : builder/src
17- secrets :
18- - id : SOURCE_REPO
19- value : {{ $.SOURCE_REPO_GIT }}
20- shell :
21- install :
22- - git clone --depth=1 $(cat /run/secrets/SOURCE_REPO)/{{ $gitRepoUrl }} --branch {{ $version }} /src
23- ---
24-
25- {{- $name := print $.ImageName "-dependencies" -}}
26- {{- define "$name" -}}
27- altPackages :
28- - gcc git make libtool gettext-tools cmake
29- - tree
30- {{- end -}}
31-
32- {{ $builderDependencies := include "$name" . | fromYaml }}
33-
34-
3511image : {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-builder
3612final : false
37- fromImage : builder/alt
38- secrets :
39- - id : SOURCE_REPO
40- value : {{ $.SOURCE_REPO_GIT }}
41- import :
42- - image : {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-src-artifact
43- add : /src
44- to : /src
45- before : install
13+ fromImage : builder/distroless
4614shell :
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-
5515 install :
56- - |
57- OUTDIR=/out
58- cd /src
59- cmake \
60- -DCMAKE_BUILD_TYPE=Release \
61- -DCMAKE_INSTALL_LIBDIR=/usr/lib64 \
62- -DBUILD_STATIC_LIBS:BOOL=OFF \
63- -DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo \
64- -DCMAKE_C_FLAGS_RELEASE:STRING="" \
65- -DDISABLE_BSYMBOLIC:BOOL=OFF \
66- -DDISABLE_WERROR:BOOL=OFF \
67- -DENABLE_RDRAND:BOOL=OFF \
68- -DENABLE_THREADING:BOOL=ON
69-
70- cmake --build . --parallel $(nproc)
71- DESTDIR=$OUTDIR cmake --install .
72- rm -rf $OUTDIR/usr/share/man
73- rm -rf $OUTDIR/usr/lib64/cmake
74- find $OUTDIR -type f -executable | while read -r execfile; do
75- if strip "$execfile"; then
76- echo "Stripped: $execfile"
77- fi
78- done
79- tree -hp $OUTDIR
80-
16+ - pm install json-c -d /out
0 commit comments