Skip to content

Commit a59fdb2

Browse files
authored
ci: acn build cil log collector (#4211)
* add cilium log collector to acn official build * address comments * fix where we pull cil log collector in acn signed pipeline signed binaries pipeline pushes to signed images path in our registry and the path is stored in an environment variable which we need to read and set as the url previously make cilium-log-collector-version for example wouldn't work because this pipeline pushes to a different url like acnpublic.azurecr.io/artifact/XXXXXX/buddy/cilium-log-collector:XXXXXX instead of acnpublic.azurecr.io/cilium-log-collector:XXXXXX
1 parent 1ae19da commit a59fdb2

14 files changed

Lines changed: 74 additions & 10 deletions
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
ARG ARCH
2+
3+
FROM mcr.microsoft.com/oss/v2/fluent/fluent-bit:v4.2.2 as linux
4+
ARG ARTIFACT_DIR
5+
COPY ${ARTIFACT_DIR}/bin/out_azure_app_insights.so /out_azure_app_insights.so

.pipelines/build/ob-prepare.steps.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,10 @@ steps:
6666
echo "##vso[task.setvariable variable=azureIptablesMonitorVersion;isOutput=true]$AZUREIPTABLESMONITORVERSION"
6767
echo "azureIptablesMonitorVersion: $AZUREIPTABLESMONITORVERSION"
6868
69+
CILIUMLOGCOLLECTORVERSION=$(make cilium-log-collector-version)
70+
echo "##vso[task.setvariable variable=ciliumLogCollectorVersion;isOutput=true]$CILIUMLOGCOLLECTORVERSION"
71+
echo "ciliumLogCollectorVersion: $CILIUMLOGCOLLECTORVERSION"
72+
6973
AZUREBLOCKIPTABLESVERSION=$(make azure-block-iptables-version)
7074
echo "##vso[task.setvariable variable=azureBlockIptablesVersion;isOutput=true]$AZUREBLOCKIPTABLESVERSION"
7175
echo "azureBlockIptablesVersion: $AZUREBLOCKIPTABLESVERSION"
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
#!/bin/bash
2+
set -eux
3+
4+
[[ $OS =~ windows ]] && { echo "cilium-log-collector is not supported on Windows"; exit 1; }
5+
# enable cgo for -buildmode=c-shared
6+
export CGO_ENABLED=1
7+
8+
mkdir -p "$OUT_DIR"/bin
9+
mkdir -p "$OUT_DIR"/files
10+
11+
echo "Building cilium-log-collector version: $CILIUM_LOG_COLLECTOR_VERSION"
12+
13+
pushd "$REPO_ROOT"/cilium-log-collector
14+
GOOS="$OS" go build -buildmode=c-shared -v -a -trimpath \
15+
-o "$OUT_DIR"/bin/out_azure_app_insights.so \
16+
-ldflags "-s -w -X main.version=$CILIUM_LOG_COLLECTOR_VERSION" \
17+
-gcflags="-dwarflocationlists=true" \
18+
.
19+
popd

.pipelines/run-pipeline.yaml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ stages:
4040
AZURE_IP_MASQ_MERGER_VERSION: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.azureIpMasqMergerVersion'] ]
4141
AZURE_IPTABLES_MONITOR_VERSION: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.azureIptablesMonitorVersion'] ]
4242
AZURE_BLOCK_IPTABLES_VERSION: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.azureBlockIptablesVersion'] ]
43+
CILIUM_LOG_COLLECTOR_VERSION: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.ciliumLogCollectorVersion'] ]
4344
CNI_VERSION: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.cniVersion'] ]
4445
CNS_VERSION: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.cnsVersion'] ]
4546
IPV6_HP_BPF_VERSION: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.ipv6HpBpfVersion'] ]
@@ -76,6 +77,12 @@ stages:
7677
archiveName: azure-iptables-monitor
7778
archiveVersion: $(AZURE_IPTABLES_MONITOR_VERSION)
7879
imageTag: $(Build.BuildNumber)
80+
cilium_log_collector:
81+
name: cilium-log-collector
82+
extraArgs: ''
83+
archiveName: cilium-log-collector
84+
archiveVersion: $(CILIUM_LOG_COLLECTOR_VERSION)
85+
imageTag: $(Build.BuildNumber)
7986
cni:
8087
name: cni
8188
extraArgs: '--build-arg CNI_AI_PATH=$(CNI_AI_PATH) --build-arg CNI_AI_ID=$(CNI_AI_ID)'
@@ -166,6 +173,12 @@ stages:
166173
archiveName: azure-iptables-monitor
167174
archiveVersion: $(AZURE_IPTABLES_MONITOR_VERSION)
168175
imageTag: $(Build.BuildNumber)
176+
cilium_log_collector:
177+
name: cilium-log-collector
178+
extraArgs: ''
179+
archiveName: cilium-log-collector
180+
archiveVersion: $(CILIUM_LOG_COLLECTOR_VERSION)
181+
imageTag: $(Build.BuildNumber)
169182
cni:
170183
name: cni
171184
extraArgs: '--build-arg CNI_AI_PATH=$(CNI_AI_PATH) --build-arg CNI_AI_ID=$(CNI_AI_ID)'
@@ -206,6 +219,7 @@ stages:
206219
AZURE_IP_MASQ_MERGER_VERSION: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.azureIpMasqMergerVersion'] ]
207220
AZURE_IPTABLES_MONITOR_VERSION: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.azureIptablesMonitorVersion'] ]
208221
AZURE_BLOCK_IPTABLES_VERSION: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.azureBlockIptablesVersion'] ]
222+
CILIUM_LOG_COLLECTOR_VERSION: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.ciliumLogCollectorVersion'] ]
209223
CNI_VERSION: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.cniVersion'] ]
210224
CNS_VERSION: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.cnsVersion'] ]
211225
IPV6_HP_BPF_VERSION: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.ipv6HpBpfVersion'] ]
@@ -221,6 +235,9 @@ stages:
221235
IPTABLES_MONITOR_LINUX_AMD64_REF: $(IMAGE_REPO_PATH)/linux-amd64/azure-iptables-monitor:$(Build.BuildNumber)
222236
IPTABLES_MONITOR_LINUX_ARM64_REF: $(IMAGE_REPO_PATH)/linux-arm64/azure-iptables-monitor:$(Build.BuildNumber)
223237

238+
CILIUM_LOG_COLLECTOR_LINUX_AMD64_REF: $(IMAGE_REPO_PATH)/linux-amd64/cilium-log-collector:$(Build.BuildNumber)
239+
CILIUM_LOG_COLLECTOR_LINUX_ARM64_REF: $(IMAGE_REPO_PATH)/linux-arm64/cilium-log-collector:$(Build.BuildNumber)
240+
224241
CNI_LINUX_AMD64_REF: $(IMAGE_REPO_PATH)/linux-amd64/cni:$(Build.BuildNumber)
225242
CNI_LINUX_ARM64_REF: $(IMAGE_REPO_PATH)/linux-arm64/cni:$(Build.BuildNumber)
226243
CNI_WINDOWS_AMD64_REF: $(IMAGE_REPO_PATH)/windows-amd64/cni:$(Build.BuildNumber)
@@ -269,6 +286,15 @@ stages:
269286
imageReference: $(IPTABLES_MONITOR_LINUX_AMD64_REF)
270287
- platform: linux/arm64
271288
imageReference: $(IPTABLES_MONITOR_LINUX_ARM64_REF)
289+
- job: cilium_log_collector
290+
templateContext:
291+
name: cilium-log-collector
292+
image_tag: $(CILIUM_LOG_COLLECTOR_VERSION)
293+
platforms:
294+
- platform: linux/amd64
295+
imageReference: $(CILIUM_LOG_COLLECTOR_LINUX_AMD64_REF)
296+
- platform: linux/arm64
297+
imageReference: $(CILIUM_LOG_COLLECTOR_LINUX_ARM64_REF)
272298
- job: cni
273299
templateContext:
274300
name: cni

.pipelines/singletenancy/cilium-dualstack-overlay/cilium-dualstackoverlay-e2e.stages.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,8 @@ stages:
4747
IPAM_IMAGE_NAME_OVERRIDE: $(IMAGE_REPO_PATH)/azure-ipam
4848
CNS_IMAGE_NAME_OVERRIDE: $(IMAGE_REPO_PATH)/cns
4949
CNI_IMAGE_NAME_OVERRIDE: $(IMAGE_REPO_PATH)/cni
50+
CILIUM_LOG_COLLECTOR_IMAGE_REGISTRY_OVERRIDE: acnpublic.azurecr.io/$(IMAGE_REPO_PATH)
51+
CILIUM_LOG_COLLECTOR_VERSION_TAG_OVERRIDE: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.ciliumLogCollectorVersion'] ]
5052
IPV6_HP_BPF_IMAGE_REPO_PATH: $(IMAGE_REPO_PATH)
5153
jobs:
5254
- job: ${{ parameters.name }}

.pipelines/singletenancy/cilium-dualstack-overlay/cilium-dualstackoverlay-e2e.steps.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,8 @@ steps:
4242
unset DIR
4343
unset CILIUM_VERSION_TAG
4444
make -C ./hack/aks deploy-cilium-dualstack
45-
export CILIUM_LOG_COLLECTOR_IMAGE_REGISTRY=acnpublic.azurecr.io
46-
export CILIUM_LOG_COLLECTOR_VERSION_TAG=$(make cilium-log-collector-version)
45+
export CILIUM_LOG_COLLECTOR_IMAGE_REGISTRY=$(CILIUM_LOG_COLLECTOR_IMAGE_REGISTRY_OVERRIDE)
46+
export CILIUM_LOG_COLLECTOR_VERSION_TAG=$(CILIUM_LOG_COLLECTOR_VERSION_TAG_OVERRIDE)
4747
make -C ./hack/aks add-cilium-log-collector
4848
kubectl get po -owide -A
4949
name: "installCilium"

.pipelines/singletenancy/cilium-nodesubnet/cilium-nodesubnet-e2e.stages.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,8 @@ stages:
4747
IPAM_IMAGE_NAME_OVERRIDE: $(IMAGE_REPO_PATH)/azure-ipam
4848
CNS_IMAGE_NAME_OVERRIDE: $(IMAGE_REPO_PATH)/cns
4949
CNI_IMAGE_NAME_OVERRIDE: $(IMAGE_REPO_PATH)/cni
50+
CILIUM_LOG_COLLECTOR_IMAGE_REGISTRY_OVERRIDE: acnpublic.azurecr.io/$(IMAGE_REPO_PATH)
51+
CILIUM_LOG_COLLECTOR_VERSION_TAG_OVERRIDE: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.ciliumLogCollectorVersion'] ]
5052
condition: and(succeeded(), eq(variables.TAG, variables.CURRENT_VERSION))
5153
dependsOn:
5254
- setup

.pipelines/singletenancy/cilium-nodesubnet/cilium-nodesubnet-e2e.steps.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,8 @@ steps:
5555
unset DIR
5656
unset CILIUM_VERSION_TAG
5757
make -C ./hack/aks deploy-cilium
58-
export CILIUM_LOG_COLLECTOR_IMAGE_REGISTRY=acnpublic.azurecr.io
59-
export CILIUM_LOG_COLLECTOR_VERSION_TAG=$(make cilium-log-collector-version)
58+
export CILIUM_LOG_COLLECTOR_IMAGE_REGISTRY=$(CILIUM_LOG_COLLECTOR_IMAGE_REGISTRY_OVERRIDE)
59+
export CILIUM_LOG_COLLECTOR_VERSION_TAG=$(CILIUM_LOG_COLLECTOR_VERSION_TAG_OVERRIDE)
6060
make -C ./hack/aks add-cilium-log-collector
6161
kubectl get po -owide -A
6262
kubectl get crd -A

.pipelines/singletenancy/cilium-overlay-withhubble/cilium-overlay-e2e.stages.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,8 @@ stages:
4747
IPAM_IMAGE_NAME_OVERRIDE: $(IMAGE_REPO_PATH)/azure-ipam
4848
CNS_IMAGE_NAME_OVERRIDE: $(IMAGE_REPO_PATH)/cns
4949
CNI_IMAGE_NAME_OVERRIDE: $(IMAGE_REPO_PATH)/cni
50+
CILIUM_LOG_COLLECTOR_IMAGE_REGISTRY_OVERRIDE: acnpublic.azurecr.io/$(IMAGE_REPO_PATH)
51+
CILIUM_LOG_COLLECTOR_VERSION_TAG_OVERRIDE: $[ stageDependencies.setup.env.outputs['EnvironmentalVariables.ciliumLogCollectorVersion'] ]
5052
jobs:
5153
- job: ${{ parameters.name }}
5254
displayName: Cilium Overlay Test Suite - (${{ parameters.name }})

.pipelines/singletenancy/cilium-overlay-withhubble/cilium-overlay-e2e.steps.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ steps:
3636
unset DIR
3737
unset CILIUM_VERSION_TAG
3838
make -C ./hack/aks deploy-cilium-hubble
39-
export CILIUM_LOG_COLLECTOR_IMAGE_REGISTRY=acnpublic.azurecr.io
40-
export CILIUM_LOG_COLLECTOR_VERSION_TAG=$(make cilium-log-collector-version)
39+
export CILIUM_LOG_COLLECTOR_IMAGE_REGISTRY=$(CILIUM_LOG_COLLECTOR_IMAGE_REGISTRY_OVERRIDE)
40+
export CILIUM_LOG_COLLECTOR_VERSION_TAG=$(CILIUM_LOG_COLLECTOR_VERSION_TAG_OVERRIDE)
4141
make -C ./hack/aks add-cilium-log-collector
4242
name: "installCilium"
4343
displayName: "Install Cilium on AKS Overlay"

0 commit comments

Comments
 (0)