Skip to content

Commit d8e0639

Browse files
authored
add cni
Signed-off-by: Evan Baker <[email protected]>
1 parent 2023e4a commit d8e0639

File tree

5 files changed

+78
-12
lines changed

5 files changed

+78
-12
lines changed

Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -811,6 +811,7 @@ test-k8se2e-only: ## Run k8s network conformance test, use TYPE=basic for only d
811811

812812
dockerfiles: tools ## Render all Dockerfile templates with current state of world
813813
@make -f build/images.mk render PATH=cns
814+
@make -f build/images.mk render PATH=cni
814815

815816

816817
$(REPO_ROOT)/.git/hooks/pre-push:

cni/Dockerfile

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
1+
# !! AUTOGENERATED - DO NOT EDIT !!
2+
# SOURCE: cni/Dockerfile.tmpl
13
ARG ARCH
24
ARG DROPGZ_VERSION=v0.0.12
35
ARG OS_VERSION
46
ARG OS
57

6-
# skopeo inspect docker://mcr.microsoft.com/oss/go/microsoft/golang:1.23.2-cbl-mariner2.0 --format "{{.Name}}@{{.Digest}}"
7-
FROM --platform=linux/${ARCH} mcr.microsoft.com/oss/go/microsoft/golang@sha256:f8613198423d5cb702961f1547f9cb061f8da1c6ca9ce8da4824eb47db663cd7 AS go
8+
# mcr.microsoft.com/oss/go/microsoft/golang:1.23-cbl-mariner2.0
9+
FROM --platform=linux/${ARCH} mcr.microsoft.com/oss/go/microsoft/golang@sha256:220fcfd381b16cd55b89edee97e2cff24b3a0d39f8be8005e719ab0976aeea90 AS go
810

9-
# skopeo inspect docker://mcr.microsoft.com/cbl-mariner/base/core:2.0 --format "{{.Name}}@{{.Digest}}"
10-
FROM --platform=linux/${ARCH} mcr.microsoft.com/cbl-mariner/base/core@sha256:a490e0b0869dc570ae29782c2bc17643aaaad1be102aca83ce0b96e0d0d2d328 AS mariner-core
11+
# mcr.microsoft.com/cbl-mariner/base/core:2.0
12+
FROM --platform=linux/${ARCH} mcr.microsoft.com/cbl-mariner/base/core@sha256:ae7b5fdffdbec3a8be8201d0ba2ae46dbcf495dea77baf0d4b653902e1bb797b AS mariner-core
1113

1214
FROM go AS azure-vnet
1315
ARG OS
@@ -51,7 +53,9 @@ FROM scratch AS linux
5153
COPY --from=dropgz /go/bin/dropgz dropgz
5254
ENTRYPOINT [ "/dropgz" ]
5355

54-
# skopeo inspect docker://mcr.microsoft.com/oss/kubernetes/windows-host-process-containers-base-image:v1.0.0 --format "{{.Name}}@{{.Digest}}"
55-
FROM mcr.microsoft.com/oss/kubernetes/windows-host-process-containers-base-image@sha256:b4c9637e032f667c52d1eccfa31ad8c63f1b035e8639f3f48a510536bf34032b as windows
56+
# mcr.microsoft.com/oss/kubernetes/windows-host-process-containers-base-image:v1.0.0
57+
FROM --platform=windows/${ARCH} mcr.microsoft.com/oss/kubernetes/windows-host-process-containers-base-image@sha256:b4c9637e032f667c52d1eccfa31ad8c63f1b035e8639f3f48a510536bf34032b as hpc
58+
59+
FROM hpc as windows
5660
COPY --from=dropgz /go/bin/dropgz dropgz.exe
5761
ENTRYPOINT [ "/dropgz.exe" ]

cni/Dockerfile.tmpl

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# {{.RENDER_MSG}}
2+
# SOURCE: {{.SRC}}
3+
ARG ARCH
4+
ARG DROPGZ_VERSION=v0.0.12
5+
ARG OS_VERSION
6+
ARG OS
7+
8+
# {{.GO_IMG}}
9+
FROM --platform=linux/${ARCH} {{.GO_PIN}} AS go
10+
11+
# {{.MARINER_CORE_IMG}}
12+
FROM --platform=linux/${ARCH} {{.MARINER_CORE_PIN}} AS mariner-core
13+
14+
FROM go AS azure-vnet
15+
ARG OS
16+
ARG VERSION
17+
ARG CNI_AI_PATH
18+
ARG CNI_AI_ID
19+
WORKDIR /azure-container-networking
20+
COPY . .
21+
RUN GOOS=$OS CGO_ENABLED=0 go build -a -o /go/bin/azure-vnet -trimpath -ldflags "-X main.version="$VERSION"" -gcflags="-dwarflocationlists=true" cni/network/plugin/main.go
22+
RUN GOOS=$OS CGO_ENABLED=0 go build -a -o /go/bin/azure-vnet-telemetry -trimpath -ldflags "-X main.version="$VERSION" -X "$CNI_AI_PATH"="$CNI_AI_ID"" -gcflags="-dwarflocationlists=true" cni/telemetry/service/telemetrymain.go
23+
RUN GOOS=$OS CGO_ENABLED=0 go build -a -o /go/bin/azure-vnet-ipam -trimpath -ldflags "-X main.version="$VERSION"" -gcflags="-dwarflocationlists=true" cni/ipam/plugin/main.go
24+
RUN GOOS=$OS CGO_ENABLED=0 go build -a -o /go/bin/azure-vnet-stateless -trimpath -ldflags "-X main.version="$VERSION"" -gcflags="-dwarflocationlists=true" cni/network/stateless/main.go
25+
26+
FROM mariner-core AS compressor
27+
ARG OS
28+
WORKDIR /payload
29+
COPY --from=azure-vnet /go/bin/* /payload/
30+
COPY --from=azure-vnet /azure-container-networking/cni/azure-$OS.conflist /payload/azure.conflist
31+
COPY --from=azure-vnet /azure-container-networking/cni/azure-$OS-swift.conflist /payload/azure-swift.conflist
32+
COPY --from=azure-vnet /azure-container-networking/cni/azure-linux-multitenancy-transparent-vlan.conflist /payload/azure-multitenancy-transparent-vlan.conflist
33+
COPY --from=azure-vnet /azure-container-networking/cni/azure-$OS-swift-overlay.conflist /payload/azure-swift-overlay.conflist
34+
COPY --from=azure-vnet /azure-container-networking/cni/azure-$OS-swift-overlay-dualstack.conflist /payload/azure-swift-overlay-dualstack.conflist
35+
COPY --from=azure-vnet /azure-container-networking/cni/azure-$OS-multitenancy.conflist /payload/azure-multitenancy.conflist
36+
COPY --from=azure-vnet /azure-container-networking/telemetry/azure-vnet-telemetry.config /payload/azure-vnet-telemetry.config
37+
RUN cd /payload && sha256sum * > sum.txt
38+
RUN gzip --verbose --best --recursive /payload && for f in /payload/*.gz; do mv -- "$f" "${f%%.gz}"; done
39+
40+
FROM go AS dropgz
41+
ARG DROPGZ_VERSION
42+
ARG OS
43+
ARG VERSION
44+
RUN go mod download github.com/azure/azure-container-networking/dropgz@$DROPGZ_VERSION
45+
WORKDIR /go/pkg/mod/github.com/azure/azure-container-networking/dropgz\@$DROPGZ_VERSION
46+
COPY --from=compressor /payload/* pkg/embed/fs/
47+
RUN GOOS=$OS CGO_ENABLED=0 go build -a -o /go/bin/dropgz -trimpath -ldflags "-X github.com/Azure/azure-container-networking/dropgz/internal/buildinfo.Version="$VERSION"" -gcflags="-dwarflocationlists=true" main.go
48+
49+
FROM scratch AS bins
50+
COPY --from=azure-vnet /go/bin/* /
51+
52+
FROM scratch AS linux
53+
COPY --from=dropgz /go/bin/dropgz dropgz
54+
ENTRYPOINT [ "/dropgz" ]
55+
56+
# {{.WIN_HPC_IMG}}
57+
FROM --platform=windows/${ARCH} {{.WIN_HPC_PIN}} as hpc
58+
59+
FROM hpc as windows
60+
COPY --from=dropgz /go/bin/dropgz dropgz.exe
61+
ENTRYPOINT [ "/dropgz.exe" ]

cns/Dockerfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,6 @@ FROM mcr.microsoft.com/cbl-mariner/base/core@sha256:ae7b5fdffdbec3a8be8201d0ba2a
1313
# mcr.microsoft.com/cbl-mariner/distroless/minimal:2.0
1414
FROM mcr.microsoft.com/cbl-mariner/distroless/minimal@sha256:e301d8bfb230bf48c650379ac3c3066c0698a490dcca2003c77b1e35ea8ba9b4 AS mariner-distroless
1515

16-
# mcr.microsoft.com/oss/kubernetes/windows-host-process-containers-base-image:v1.0.0
17-
FROM --platform=windows/${ARCH} mcr.microsoft.com/oss/kubernetes/windows-host-process-containers-base-image@sha256:b4c9637e032f667c52d1eccfa31ad8c63f1b035e8639f3f48a510536bf34032b as hpc
18-
1916
FROM --platform=linux/${ARCH} go AS builder
2017
ARG OS
2118
ARG CNS_AI_ID
@@ -35,6 +32,9 @@ COPY --from=builder /go/bin/azure-cns /usr/local/bin/azure-cns
3532
ENTRYPOINT [ "/usr/local/bin/azure-cns" ]
3633
EXPOSE 10090
3734

35+
# mcr.microsoft.com/oss/kubernetes/windows-host-process-containers-base-image:v1.0.0
36+
FROM --platform=windows/${ARCH} mcr.microsoft.com/oss/kubernetes/windows-host-process-containers-base-image@sha256:b4c9637e032f667c52d1eccfa31ad8c63f1b035e8639f3f48a510536bf34032b as hpc
37+
3838
FROM hpc as windows
3939
COPY --from=builder /azure-container-networking/cns/kubeconfigtemplate.yaml kubeconfigtemplate.yaml
4040
COPY --from=builder /azure-container-networking/npm/examples/windows/setkubeconfigpath.ps1 setkubeconfigpath.ps1

cns/Dockerfile.tmpl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,6 @@ FROM {{.MARINER_CORE_PIN}} AS mariner-core
1313
# {{.MARINER_DISTROLESS_IMG}}
1414
FROM {{.MARINER_DISTROLESS_PIN}} AS mariner-distroless
1515

16-
# {{.WIN_HPC_IMG}}
17-
FROM --platform=windows/${ARCH} {{.WIN_HPC_PIN}} as hpc
18-
1916
FROM --platform=linux/${ARCH} go AS builder
2017
ARG OS
2118
ARG CNS_AI_ID
@@ -35,6 +32,9 @@ COPY --from=builder /go/bin/azure-cns /usr/local/bin/azure-cns
3532
ENTRYPOINT [ "/usr/local/bin/azure-cns" ]
3633
EXPOSE 10090
3734

35+
# {{.WIN_HPC_IMG}}
36+
FROM --platform=windows/${ARCH} {{.WIN_HPC_PIN}} as hpc
37+
3838
FROM hpc as windows
3939
COPY --from=builder /azure-container-networking/cns/kubeconfigtemplate.yaml kubeconfigtemplate.yaml
4040
COPY --from=builder /azure-container-networking/npm/examples/windows/setkubeconfigpath.ps1 setkubeconfigpath.ps1

0 commit comments

Comments
 (0)