3
3
{{- $gitRepoUrl := (printf "%s/%s" "deckhouse" $gitRepoName) }}
4
4
{{- $version := get $.Core $gitRepoName }}
5
5
6
+ {{- $name := print $.ImageName "-dependencies" -}}
7
+ {{- define "$name" -}}
8
+ binaries :
9
+ - /cdi-binaries/cdi-importer
10
+ - /cdi-binaries/cdi-source-update-poller
11
+ packages :
12
+ - libnbd
13
+ {{- end -}}
14
+
15
+ {{ $builderDependencies := include "$name" . | fromYaml }}
6
16
7
17
image : {{ .ModuleNamePrefix }}{{ .ImageName }}-src-artifact
8
18
final : false
@@ -21,7 +31,6 @@ secrets:
21
31
shell :
22
32
install :
23
33
- |
24
- mkdir -p ~/.ssh && echo "StrictHostKeyChecking accept-new" > ~/.ssh/config
25
34
echo "Git clone CDI repository..."
26
35
git clone --depth 1 --branch {{ $version }} $(cat /run/secrets/SOURCE_REPO)/{{ $gitRepoUrl }} /src/containerized-data-importer
27
36
@@ -30,38 +39,40 @@ shell:
30
39
---
31
40
image : {{ .ModuleNamePrefix }}{{ .ImageName }}
32
41
final : false
33
- fromImage : {{ eq $.SVACE_ENABLED "false" | ternary "builder/golang-bookworm-1.23 " "builder/alt-go-svace" }}
42
+ fromImage : {{ eq $.SVACE_ENABLED "false" | ternary "builder/alt " "builder/alt-go-svace" }}
34
43
mount :
35
- - fromPath : ~/go-pkg-cache
36
- to : /go/pkg
37
- import :
38
- - image : {{ .ModuleNamePrefix }}{{ .ImageName }}-src-artifact
39
- add : /src/containerized-data-importer
40
- to : /containerized-data-importer
41
- before : install
44
+ - fromPath : ~/go-pkg-cache
45
+ to : /go/pkg
42
46
secrets :
43
47
- id : SOURCE_REPO
44
48
value : {{ $.SOURCE_REPO }}
45
49
- id : GOPROXY
46
50
value : {{ .GOPROXY }}
51
+ import :
52
+ - image : {{ .ModuleNamePrefix }}{{ .ImageName }}-src-artifact
53
+ add : /src/containerized-data-importer
54
+ to : /containerized-data-importer
55
+ before : install
56
+ {{- include "importPackageImages" (list . $builderDependencies.packages "install") -}}
47
57
shell :
48
58
beforeInstall :
49
- {{- if eq $.SVACE_ENABLED "false" }}
50
- {{- include "debian packages proxy" . | nindent 2 }}
51
- - apt-get install --yes libnbd-dev
52
- {{- include "debian packages clean" . | nindent 2 }}
53
- {{- else }}
54
59
{{- include "alt packages proxy" . | nindent 2 }}
55
- - apt-get -qq install -y libnbd-devel
60
+ - |
61
+ apt-get -qq install -y libxml2-devel \
62
+ git binutils make gcc glibc-pthread glibc-devel glibc-devel-static golang
56
63
{{- include "alt packages clean" . | nindent 2 }}
57
- {{- end }}
58
-
59
64
install :
60
65
- |
61
- export GOPROXY=$(cat /run/secrets/GOPROXY)
62
- mkdir -p ~/.ssh && echo "StrictHostKeyChecking accept-new" > ~/.ssh/config
66
+ # Install packages
67
+ PKGS="{{ $builderDependencies.packages | join " " }}"
68
+ for pkg in $PKGS; do
69
+ cp -a /$pkg/. /
70
+ rm -rf /$pkg
71
+ done
63
72
64
73
- |
74
+ export GOPROXY=$(cat /run/secrets/GOPROXY)
75
+
65
76
echo Download Go modules.
66
77
cd /containerized-data-importer
67
78
go mod download
@@ -133,7 +144,6 @@ shell:
133
144
{{- $_ := set $ "ProjectName" (list $.ImageName "cdi-source-update-poller" | join "/") }}
134
145
{{- include "image-build.build" (set $ "BuildCommand" `go build -ldflags="-s -w" -o /cdi-binaries/cdi-source-update-poller ./tools/cdi-source-update-poller`) | nindent 6 }}
135
146
136
-
137
147
- chown -R 64535:64535 /cdi-binaries/*
138
148
- ls -la /cdi-binaries
139
149
0 commit comments