Skip to content

Commit 40ddd03

Browse files
committed
fixup! Use Signed Binaries for Docker Build
1 parent a35f487 commit 40ddd03

File tree

4 files changed

+42
-56
lines changed

4 files changed

+42
-56
lines changed

.pipelines/build/scripts/azure-ipam.sh

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
#!/bin/bash
22
set -nex
33

4+
mkdir -p "$OUT_DIR"/bins
5+
46
DROPGZ_VERSION="${DROPGZ_VERSION:-v0.0.12}"
57
IPAM_BUILD_DIR=$(mktemp -d -p "$GEN_DIR")
68

79
pushd "$ROOT_DIR"/azure-ipam
810
GOOS=$OS CGO_ENABLED=0 go build -v -a -o "$IPAM_BUILD_DIR"/azure-ipam -trimpath -ldflags "-X github.com/Azure/azure-container-networking/azure-ipam/internal/buildinfo.Version="$AZURE_IPAM_VERSION" main.version="$VERSION"" -gcflags="-dwarflocationlists=true"
911
cp *.conflist "$IPAM_BUILD_DIR"
1012
sha256sum * > sum.txt
11-
gzip --verbose --best --recursive . && for f in *.gz; do mv -- "$f" "${f%%.gz}"; done
13+
gzip --verbose --best --recursive "$IPAM_BUILD_DIR" && for f in *.gz; do mv -- "$f" "${f%%.gz}"; done
1214
popd
1315

1416
go mod download github.com/azure/azure-container-networking/dropgz@$DROPGZ_VERSION

.pipelines/build/scripts/cni.sh

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,31 @@
11
#!/bin/bash
2+
set -nex
23

3-
#ARG CNI_AI_PATH
4-
#ARG CNI_AI_ID
5-
# WORKDIR /azure-container-networking
4+
mkdir -p "$OUT_DIR"/files
5+
mkdir -p "$OUT_DIR"/bins
66

7-
CNI_BUILD_DIR=$(mktemp -d -p "$GEN_DIR")
8-
pushd "$REPO_ROOT"
9-
GOOS=$OS CGO_ENABLED=0 go build -a -o "$CNI_BUILD_DIR"/azure-vnet -trimpath -ldflags "-X main.version="$VERSION"" -gcflags="-dwarflocationlists=true" cni/network/plugin/main.go
10-
GOOS=$OS CGO_ENABLED=0 go build -a -o "$CNI_BUILD_DIR"/azure-vnet-telemetry -trimpath -ldflags "-X main.version="$VERSION" -X "$CNI_AI_PATH"="$CNI_AI_ID"" -gcflags="-dwarflocationlists=true" cni/telemetry/service/telemetrymain.go
11-
GOOS=$OS CGO_ENABLED=0 go build -a -o "$CNI_BUILD_DIR"/azure-vnet-ipam -trimpath -ldflags "-X main.version="$VERSION"" -gcflags="-dwarflocationlists=true" cni/ipam/plugin/main.go
12-
GOOS=$OS CGO_ENABLED=0 go build -a -o "$CNI_BUILD_DIR"/azure-vnet-stateless -trimpath -ldflags "-X main.version="$VERSION"" -gcflags="-dwarflocationlists=true" cni/network/stateless/main.go
7+
#CNI_BUILD_DIR=$(mktemp -d -p "$GEN_DIR")
138

14-
cp cni/azure-$OS.conflist "$CNI_BUILD_DIR"/azure.conflist
15-
cp cni/azure-$OS-swift.conflist "$CNI_BUILD_DIR"/azure-swift.conflist
16-
cp cni/azure-linux-multitenancy-transparent-vlan.conflist "$CNI_BUILD_DIR"/azure-multitenancy-transparent-vlan.conflist
17-
cp cni/azure-$OS-swift-overlay.conflist "$CNI_BUILD_DIR"/azure-swift-overlay.conflist
18-
cp cni/azure-$OS-swift-overlay-dualstack.conflist "$CNI_BUILD_DIR"/azure-swift-overlay-dualstack.conflist
19-
cp cni/azure-$OS-multitenancy.conflist "$CNI_BUILD_DIR"/azure-multitenancy.conflist
20-
cp telemetry/azure-vnet-telemetry.config "$CNI_BUILD_DIR"/azure-vnet-telemetry.config
9+
pushd "$REPO_ROOT"/cni
10+
GOOS=$OS CGO_ENABLED=0 go build -a -o "$OUT_DIR"/bins/azure-vnet -trimpath -ldflags "-X main.version="$VERSION"" -gcflags="-dwarflocationlists=true" network/plugin/main.go
11+
GOOS=$OS CGO_ENABLED=0 go build -a -o "$OUT_DIR"/bins/azure-vnet-telemetry -trimpath -ldflags "-X main.version="$VERSION" -X "$CNI_AI_PATH"="$CNI_AI_ID"" -gcflags="-dwarflocationlists=true" ../telemetry/service/telemetrymain.go
12+
GOOS=$OS CGO_ENABLED=0 go build -a -o "$OUT_DIR"/bins/azure-vnet-ipam -trimpath -ldflags "-X main.version="$VERSION"" -gcflags="-dwarflocationlists=true" ipam/plugin/main.go
13+
GOOS=$OS CGO_ENABLED=0 go build -a -o "$OUT_DIR"/bins/azure-vnet-stateless -trimpath -ldflags "-X main.version="$VERSION"" -gcflags="-dwarflocationlists=true" network/stateless/main.go
14+
15+
cp azure-$OS.conflist "$OUT_DIR"/files/azure.conflist
16+
cp azure-$OS-swift.conflist "$OUT_DIR"/files/azure-swift.conflist
17+
cp azure-linux-multitenancy-transparent-vlan.conflist "$OUT_DIR"/files/azure-multitenancy-transparent-vlan.conflist
18+
cp azure-$OS-swift-overlay.conflist "$OUT_DIR"/files/azure-swift-overlay.conflist
19+
cp azure-$OS-swift-overlay-dualstack.conflist "$OUT_DIR"/files/azure-swift-overlay-dualstack.conflist
20+
cp azure-$OS-multitenancy.conflist "$OUT_DIR"/files/multitenancy.conflist
21+
cp ../telemetry/azure-vnet-telemetry.config "$OUT_DIR"/files/azure-vnet-telemetry.config
2122
sha256sum * > sum.txt
22-
gzip --verbose --best --recursive "$CNI_BUILD_DIR" && for f in *.gz; do mv -- "$f" "${f%%.gz}"; done
23+
gzip --verbose --best --recursive "$OUT_DIR" && for f in *.gz; do mv -- "$f" "${f%%.gz}"; done
2324
popd
2425

2526
go mod download github.com/azure/azure-container-networking/dropgz@$DROPGZ_VERSION
2627
pushd "$GOPATH"/pkg/mod/github.com/azure/azure-container-networking/dropgz\@$DROPGZ_VERSION
27-
cp "$CNI_BUILD_DIR"/* pkg/embed/fs/
28+
cp "$OUT_DIR"/files/* pkg/embed/fs/
29+
cp "$OUT_DIR"/bins/* pkg/embed/fs/
2830
GOOS=$OS CGO_ENABLED=0 go build -a -o "$OUT_DIR"/bins/dropgz -trimpath -ldflags "-X github.com/Azure/azure-container-networking/dropgz/internal/buildinfo.Version="$VERSION"" -gcflags="-dwarflocationlists=true" main.go
2931
popd

.pipelines/build/scripts/cns.sh

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
#!/bin/bash
2-
#ARG CNS_AI_ID
3-
#ARG CNS_AI_PATH
2+
set -nex
43

54
mkdir -p "$OUT_DIR"/files
65
mkdir -p "$OUT_DIR"/bins
76

8-
pushd "$REPO_ROOT"
9-
GOOS=$OS CGO_ENABLED=0 go build -a -o "$OUT_DIR"/bins/azure-cns -ldflags "-X main.version="$VERSION" -X "$CNS_AI_PATH"="$CNS_AI_ID"" -gcflags="-dwarflocationlists=true" cns/service/*.go
10-
cp cns/kubeconfigtemplate.yaml "$OUT_DIR"/files/kubeconfigtemplate.yaml
11-
cp npm/examples/windows/setkubeconfigpath.ps1 "$OUT_DIR"/files/setkubeconfigpath.ps1
7+
pushd "$REPO_ROOT"/cns
8+
GOOS=$OS CGO_ENABLED=0 go build -a -o "$OUT_DIR"/bins/azure-cns -ldflags "-X main.version="$VERSION" -X "$CNS_AI_PATH"="$CNS_AI_ID"" -gcflags="-dwarflocationlists=true" service/*.go
9+
cp kubeconfigtemplate.yaml "$OUT_DIR"/files/kubeconfigtemplate.yaml
10+
cp ../npm/examples/windows/setkubeconfigpath.ps1 "$OUT_DIR"/files/setkubeconfigpath.ps1
11+
cp configuration/cns_config.json "$BUILD_DIR"/files/cns_config.json
1212
popd

.pipelines/build/scripts/ipv6-hp-bpf.sh

Lines changed: 13 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,59 +1,37 @@
11
#!/bin/bash
2+
set -nex
23

34
mkdir -p "$OUT_DIR"/bins
45
mkdir -p "$OUT_DIR"/lib
56

7+
# Package up Needed C Files
68
if [[ -f /etc/debian_version ]];then
7-
sudo apt-get update -y
9+
apt-get update -y
810
if [[ $GOARCH =~ amd64 ]]; then
911
apt-get install -y llvm clang linux-libc-dev linux-headers-generic libbpf-dev libc6-dev nftables iproute2
1012
#apt-get install -y llvm clang linux-libc-dev linux-headers-generic libbpf-dev libc6-dev nftables iproute2 gcc-multilib tree
1113
for dir in /usr/include/x86_64-linux-gnu/*; do
12-
sudo ln -sfn "$dir" /usr/include/$(basename "$dir")
14+
ln -sfn "$dir" /usr/include/$(basename "$dir")
1315
done
1416

1517
elif [[ $GOARCH =~ arm64 ]]; then
16-
sudo apt-get install -y llvm clang linux-libc-dev linux-headers-generic libbpf-dev libc6-dev nftables iproute2 gcc-aarch64-linux-gnu tree
18+
apt-get install -y llvm clang linux-libc-dev linux-headers-generic libbpf-dev libc6-dev nftables iproute2 gcc-aarch64-linux-gnu tree
1719
for dir in /usr/include/aarch64-linux-gnu/*; do
18-
sudo ln -sfn "$dir" /usr/include/$(basename "$dir")
20+
ln -sfn "$dir" /usr/include/$(basename "$dir")
1921
done
2022
fi
2123
# Mariner
2224
else
23-
sudo tdnf install -y llvm clang libbpf-devel nftables tree
25+
tdnf install -y llvm clang libbpf-devel nftables tree
2426
for dir in /usr/include/aarch64-linux-gnu/*; do
2527
if [[ -d $dir ]]; then
26-
sudo ln -sfn "$dir" /usr/include/$(basename "$dir")
28+
ln -sfn "$dir" /usr/include/$(basename "$dir")
2729
elif [[ -f "$dir" ]]; then
28-
sudo ln -Tsfn "$dir" /usr/include/$(basename "$dir")
30+
ln -Tsfn "$dir" /usr/include/$(basename "$dir")
2931
fi
3032
done
3133
fi
3234

33-
# Copy Needed Library Binaries
34-
cp /usr/sbin/nft "$OUT_DIR"/bins/nft
35-
cp /sbin/ip "$OUT_DIR"/bins/ip
36-
37-
# Package up Needed C Files
38-
if [ "$ARCH" = "arm64" ]; then
39-
apt-get install -y gcc-aarch64-linux-gnu
40-
ARCH=aarch64-linux-gnu
41-
cp /lib/"$ARCH"/ld-linux-aarch64.so.1 "$OUT_DIR"/lib/
42-
43-
for dir in /usr/include/"$ARCH"/*; do
44-
ln -s "$dir" /usr/include/$(basename "$dir")
45-
done
46-
47-
elif [ "$ARCH" = "amd64" ]; then
48-
apt-get install -y gcc-multilib
49-
ARCH=x86_64-linux-gnu
50-
cp /lib/"$ARCH"/ld-linux-x86-64.so.2 "$OUT_DIR"/lib/
51-
52-
for dir in /usr/include/"$ARCH"/*; do
53-
ln -s "$dir" /usr/include/$(basename "$dir")
54-
done
55-
fi
56-
5735
ln -sfn /usr/include/"$ARCH"/asm /usr/include/asm
5836
cp /lib/"$ARCH"/libnftables.so.1 "$OUT_DIR"/lib/
5937
cp /lib/"$ARCH"/libedit.so.2 "$OUT_DIR"/lib/
@@ -67,6 +45,10 @@ cp /lib/"$ARCH"/libtinfo.so.6 "$OUT_DIR"/lib/
6745
cp /lib/"$ARCH"/libbsd.so.0 "$OUT_DIR"/lib/
6846
cp /lib/"$ARCH"/libmd.so.0 "$OUT_DIR"/lib/
6947

48+
# Add Needed Binararies
49+
cp /usr/sbin/nft "$OUT_DIR"/bins/nft
50+
cp /sbin/ip "$OUT_DIR"/bins/ip
51+
7052

7153
# Build IPv6 HP BPF
7254
export C_INCLUDE_PATH=/usr/include/bpf

0 commit comments

Comments
 (0)