Skip to content

Commit e23ff36

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

File tree

3 files changed

+72
-6
lines changed

3 files changed

+72
-6
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,18 @@
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
13+
14+
# mcr.microsoft.com/oss/kubernetes/windows-host-process-containers-base-image:v1.0.0
15+
FROM --platform=windows/${ARCH} mcr.microsoft.com/oss/kubernetes/windows-host-process-containers-base-image@sha256:b4c9637e032f667c52d1eccfa31ad8c63f1b035e8639f3f48a510536bf34032b as hpc
1116

1217
FROM go AS azure-vnet
1318
ARG OS
@@ -51,7 +56,6 @@ FROM scratch AS linux
5156
COPY --from=dropgz /go/bin/dropgz dropgz
5257
ENTRYPOINT [ "/dropgz" ]
5358

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
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+
# {{.WIN_HPC_IMG}}
15+
FROM --platform=windows/${ARCH} {{.WIN_HPC_PIN}} as hpc
16+
17+
FROM go AS azure-vnet
18+
ARG OS
19+
ARG VERSION
20+
ARG CNI_AI_PATH
21+
ARG CNI_AI_ID
22+
WORKDIR /azure-container-networking
23+
COPY . .
24+
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
25+
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
26+
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
27+
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
28+
29+
FROM mariner-core AS compressor
30+
ARG OS
31+
WORKDIR /payload
32+
COPY --from=azure-vnet /go/bin/* /payload/
33+
COPY --from=azure-vnet /azure-container-networking/cni/azure-$OS.conflist /payload/azure.conflist
34+
COPY --from=azure-vnet /azure-container-networking/cni/azure-$OS-swift.conflist /payload/azure-swift.conflist
35+
COPY --from=azure-vnet /azure-container-networking/cni/azure-linux-multitenancy-transparent-vlan.conflist /payload/azure-multitenancy-transparent-vlan.conflist
36+
COPY --from=azure-vnet /azure-container-networking/cni/azure-$OS-swift-overlay.conflist /payload/azure-swift-overlay.conflist
37+
COPY --from=azure-vnet /azure-container-networking/cni/azure-$OS-swift-overlay-dualstack.conflist /payload/azure-swift-overlay-dualstack.conflist
38+
COPY --from=azure-vnet /azure-container-networking/cni/azure-$OS-multitenancy.conflist /payload/azure-multitenancy.conflist
39+
COPY --from=azure-vnet /azure-container-networking/telemetry/azure-vnet-telemetry.config /payload/azure-vnet-telemetry.config
40+
RUN cd /payload && sha256sum * > sum.txt
41+
RUN gzip --verbose --best --recursive /payload && for f in /payload/*.gz; do mv -- "$f" "${f%%.gz}"; done
42+
43+
FROM go AS dropgz
44+
ARG DROPGZ_VERSION
45+
ARG OS
46+
ARG VERSION
47+
RUN go mod download github.com/azure/azure-container-networking/dropgz@$DROPGZ_VERSION
48+
WORKDIR /go/pkg/mod/github.com/azure/azure-container-networking/dropgz\@$DROPGZ_VERSION
49+
COPY --from=compressor /payload/* pkg/embed/fs/
50+
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
51+
52+
FROM scratch AS bins
53+
COPY --from=azure-vnet /go/bin/* /
54+
55+
FROM scratch AS linux
56+
COPY --from=dropgz /go/bin/dropgz dropgz
57+
ENTRYPOINT [ "/dropgz" ]
58+
59+
FROM hpc as windows
60+
COPY --from=dropgz /go/bin/dropgz dropgz.exe
61+
ENTRYPOINT [ "/dropgz.exe" ]

0 commit comments

Comments
 (0)