This repository was archived by the owner on Oct 3, 2023. It is now read-only.
File tree Expand file tree Collapse file tree 13 files changed +136
-16
lines changed Expand file tree Collapse file tree 13 files changed +136
-16
lines changed Original file line number Diff line number Diff line change 1
1
#syntax=docker/dockerfile:1.4.3
2
2
3
3
ARG ref=main
4
- FROM ghcr.io/nicholasdille/docker-setup/base:${ref} AS prepare
5
4
5
+ FROM ghcr.io/nicholasdille/docker-setup/cosign:${ref} AS cosign
6
+
7
+ FROM ghcr.io/nicholasdille/docker-setup/base:${ref} AS prepare
8
+ COPY --from=cosign / /
6
9
ARG name
7
10
ARG version
8
-
9
11
RUN <<EOF
10
- curl --silent --location --output "${prefix}${target}/bin/kube-apiserver" \
11
- "https://storage.googleapis.com/kubernetes- release/release/ v${version}/bin/linux/${alt_arch} /kube-apiserver"
12
+ curl --silent --location --fail -- output "${prefix}${target}/bin/kube-apiserver" \
13
+ "https://dl.k8s.io/ release/v${version}/bin/linux/amd64 /kube-apiserver"
12
14
chmod +x "${prefix}${target}/bin/kube-apiserver"
15
+
16
+ if test "$(echo -e "1.26.0-beta.0\n${version}" | sort -V | head -n 1)" == "1.26.0-beta.0"; then
17
+ echo "Verifying keyless signature for kube-apiserver"
18
+ curl --silent --location --fail --output "/tmp/kube-apiserver.sig" \
19
+ "https://dl.k8s.io/release/v${version}/bin/linux/amd64/kube-apiserver.sig"
20
+ curl --silent --location --fail --output "/tmp/kube-apiserver.cert" \
21
+ "https://dl.k8s.io/release/v${version}/bin/linux/amd64/kube-apiserver.cert"
22
+ COSIGN_EXPERIMENTAL=1 cosign verify-blob "${prefix}${target}/bin/kube-apiserver" \
23
+ --signature "/tmp/kube-apiserver.sig" \
24
+ --certificate "/tmp/kube-apiserver.cert" \
25
+ --certificate-oidc-issuer https://accounts.google.com \
26
+ --certificate-email krel-staging@k8s-releng-prod.iam.gserviceaccount.com
27
+ rm -f \
28
+ "/tmp/kube-apiserver.sig" \
29
+ "/tmp/kube-apiserver.cert"
30
+ fi
13
31
EOF
Original file line number Diff line number Diff line change 1
1
name : kube-apiserver
2
2
version : " 1.25.4"
3
3
check : ${binary} --version | cut -d' ' -f2 | tr -d v
4
+ dependencies :
5
+ - cosign
4
6
tags :
5
7
- org/cncf
6
8
- org/kubernetes
Original file line number Diff line number Diff line change 1
1
#syntax=docker/dockerfile:1.4.3
2
2
3
3
ARG ref=main
4
- FROM ghcr.io/nicholasdille/docker-setup/base:${ref} AS prepare
5
4
5
+ FROM ghcr.io/nicholasdille/docker-setup/cosign:${ref} AS cosign
6
+
7
+ FROM ghcr.io/nicholasdille/docker-setup/base:${ref} AS prepare
8
+ COPY --from=cosign / /
6
9
ARG name
7
10
ARG version
8
-
9
11
RUN <<EOF
10
12
curl --silent --location --output "${prefix}${target}/bin/kube-controller-manager" \
11
13
"https://storage.googleapis.com/kubernetes-release/release/v${version}/bin/linux/${alt_arch}/kube-controller-manager"
12
14
chmod +x "${prefix}${target}/bin/kube-controller-manager"
15
+
16
+ if test "$(echo -e "1.26.0-beta.0\n${version}" | sort -V | head -n 1)" == "1.26.0-beta.0"; then
17
+ echo "Verifying keyless signature for kube-controller-manager"
18
+ curl --silent --location --fail --output "/tmp/kube-controller-manager.sig" \
19
+ "https://dl.k8s.io/release/v${version}/bin/linux/amd64/kube-controller-manager.sig"
20
+ curl --silent --location --fail --output "/tmp/kube-controller-manager.cert" \
21
+ "https://dl.k8s.io/release/v${version}/bin/linux/amd64/kube-controller-manager.cert"
22
+ COSIGN_EXPERIMENTAL=1 cosign verify-blob "${prefix}${target}/bin/kube-controller-manager" \
23
+ --signature "/tmp/kube-controller-manager.sig" \
24
+ --certificate "/tmp/kube-controller-manager.cert" \
25
+ --certificate-oidc-issuer https://accounts.google.com \
26
+ --certificate-email krel-staging@k8s-releng-prod.iam.gserviceaccount.com
27
+ rm -f \
28
+ "/tmp/kube-controller-manager.sig" \
29
+ "/tmp/kube-controller-manager.cert"
30
+ fi
13
31
EOF
Original file line number Diff line number Diff line change 1
1
name : kube-controller-manager
2
2
version : " 1.25.4"
3
3
check : ${binary} --version | cut -d' ' -f2 | tr -d v
4
+ dependencies :
5
+ - cosign
4
6
tags :
5
7
- org/cncf
6
8
- org/kubernetes
Original file line number Diff line number Diff line change 1
1
#syntax=docker/dockerfile:1.4.3
2
2
3
3
ARG ref=main
4
- FROM ghcr.io/nicholasdille/docker-setup/base:${ref} AS prepare
5
4
5
+ FROM ghcr.io/nicholasdille/docker-setup/cosign:${ref} AS cosign
6
+
7
+ FROM ghcr.io/nicholasdille/docker-setup/base:${ref} AS prepare
8
+ COPY --from=cosign / /
6
9
ARG name
7
10
ARG version
8
-
9
11
RUN <<EOF
10
12
curl --silent --location --output "${prefix}${target}/bin/kube-proxy" \
11
13
"https://storage.googleapis.com/kubernetes-release/release/v${version}/bin/linux/${alt_arch}/kube-proxy"
12
14
chmod +x "${prefix}${target}/bin/kube-proxy"
15
+
16
+ if test "$(echo -e "1.26.0-beta.0\n${version}" | sort -V | head -n 1)" == "1.26.0-beta.0"; then
17
+ echo "Verifying keyless signature for kube-proxy"
18
+ curl --silent --location --fail --output "/tmp/kube-proxy.sig" \
19
+ "https://dl.k8s.io/release/v${version}/bin/linux/amd64/kube-proxy.sig"
20
+ curl --silent --location --fail --output "/tmp/kube-proxy.cert" \
21
+ "https://dl.k8s.io/release/v${version}/bin/linux/amd64/kube-proxy.cert"
22
+ COSIGN_EXPERIMENTAL=1 cosign verify-blob "${prefix}${target}/bin/kube-proxy" \
23
+ --signature "/tmp/kube-proxy.sig" \
24
+ --certificate "/tmp/kube-proxy.cert" \
25
+ --certificate-oidc-issuer https://accounts.google.com \
26
+ --certificate-email krel-staging@k8s-releng-prod.iam.gserviceaccount.com
27
+ rm -f \
28
+ "/tmp/kube-proxy.sig" \
29
+ "/tmp/kube-proxy.cert"
30
+ fi
13
31
EOF
Original file line number Diff line number Diff line change 1
1
name : kube-proxy
2
2
version : " 1.25.4"
3
3
check : ${binary} --version | cut -d' ' -f2 | tr -d v
4
+ dependencies :
5
+ - cosign
4
6
tags :
5
7
- org/cncf
6
8
- org/kubernetes
Original file line number Diff line number Diff line change 1
1
#syntax=docker/dockerfile:1.4.3
2
2
3
3
ARG ref=main
4
- FROM ghcr.io/nicholasdille/docker-setup/base:${ref} AS prepare
5
4
5
+ FROM ghcr.io/nicholasdille/docker-setup/cosign:${ref} AS cosign
6
+
7
+ FROM ghcr.io/nicholasdille/docker-setup/base:${ref} AS prepare
8
+ COPY --from=cosign / /
6
9
ARG name
7
10
ARG version
8
-
9
11
RUN <<EOF
10
12
curl --silent --location --output "${prefix}${target}/bin/kube-scheduler" \
11
13
"https://storage.googleapis.com/kubernetes-release/release/v${version}/bin/linux/${alt_arch}/kube-scheduler"
12
14
chmod +x "${prefix}${target}/bin/kube-scheduler"
15
+
16
+ if test "$(echo -e "1.26.0-beta.0\n${version}" | sort -V | head -n 1)" == "1.26.0-beta.0"; then
17
+ echo "Verifying keyless signature for kube-scheduler"
18
+ curl --silent --location --fail --output "/tmp/kube-scheduler.sig" \
19
+ "https://dl.k8s.io/release/v${version}/bin/linux/amd64/kube-scheduler.sig"
20
+ curl --silent --location --fail --output "/tmp/kube-scheduler.cert" \
21
+ "https://dl.k8s.io/release/v${version}/bin/linux/amd64/kube-scheduler.cert"
22
+ COSIGN_EXPERIMENTAL=1 cosign verify-blob "${prefix}${target}/bin/kube-scheduler" \
23
+ --signature "/tmp/kube-scheduler.sig" \
24
+ --certificate "/tmp/kube-scheduler.cert" \
25
+ --certificate-oidc-issuer https://accounts.google.com \
26
+ --certificate-email krel-staging@k8s-releng-prod.iam.gserviceaccount.com
27
+ rm -f \
28
+ "/tmp/kube-scheduler.sig" \
29
+ "/tmp/kube-scheduler.cert"
30
+ fi
13
31
EOF
Original file line number Diff line number Diff line change 1
1
name : kube-scheduler
2
2
version : " 1.25.4"
3
3
check : ${binary} --version | cut -d' ' -f2 | tr -d v
4
+ dependencies :
5
+ - cosign
4
6
tags :
5
7
- org/cncf
6
8
- org/kubernetes
Original file line number Diff line number Diff line change 1
1
#syntax=docker/dockerfile:1.4.3
2
2
3
3
ARG ref=main
4
- FROM ghcr.io/nicholasdille/docker-setup/base:${ref} AS prepare
5
4
5
+ FROM ghcr.io/nicholasdille/docker-setup/cosign:${ref} AS cosign
6
+
7
+ FROM ghcr.io/nicholasdille/docker-setup/base:${ref} AS prepare
8
+ COPY --from=cosign / /
6
9
ARG name
7
10
ARG version
8
-
9
11
COPY kubelet.service ${prefix}/etc/systemd/system/
10
-
11
12
RUN <<EOF
12
13
curl --silent --location --output "${prefix}${target}/bin/kubeadm" \
13
14
"https://storage.googleapis.com/kubernetes-release/release/v${version}/bin/linux/${alt_arch}/kubeadm"
14
15
chmod +x "${prefix}${target}/bin/kubeadm"
16
+
17
+ if test "$(echo -e "1.26.0-beta.0\n${version}" | sort -V | head -n 1)" == "1.26.0-beta.0"; then
18
+ echo "Verifying keyless signature for kubeadm"
19
+ curl --silent --location --fail --output "/tmp/kubeadm.sig" \
20
+ "https://dl.k8s.io/release/v${version}/bin/linux/amd64/kubeadm.sig"
21
+ curl --silent --location --fail --output "/tmp/kubeadm.cert" \
22
+ "https://dl.k8s.io/release/v${version}/bin/linux/amd64/kubeadm.cert"
23
+ COSIGN_EXPERIMENTAL=1 cosign verify-blob "${prefix}${target}/bin/kubeadm" \
24
+ --signature "/tmp/kubeadm.sig" \
25
+ --certificate "/tmp/kubeadm.cert" \
26
+ --certificate-oidc-issuer https://accounts.google.com \
27
+ --certificate-email krel-staging@k8s-releng-prod.iam.gserviceaccount.com
28
+ rm -f \
29
+ "/tmp/kubeadm.sig" \
30
+ "/tmp/kubeadm.cert"
31
+ fi
32
+
15
33
"${prefix}${target}/bin/kubeadm" completion bash >"${prefix}${target}/share/bash-completion/completions/kubeadm"
16
34
"${prefix}${target}/bin/kubeadm" completion zsh >"${prefix}${target}/share/zsh/vendor-completions/_kubeadm"
17
35
EOF
Original file line number Diff line number Diff line change @@ -3,6 +3,7 @@ version: "1.25.4"
3
3
check : ${binary} version --output short | tr -d v
4
4
dependencies :
5
5
- kubelet
6
+ - cosign
6
7
tags :
7
8
- org/cncf
8
9
- org/kubernetes
You can’t perform that action at this time.
0 commit comments