Skip to content

Commit a6e8ad0

Browse files
authored
Merge branch 'master' into ankaggar/ankaggar/PNI-CRD
2 parents 31a318a + 19e42c4 commit a6e8ad0

23 files changed

+500
-342
lines changed

.pipelines/cni/k8s-e2e/k8s-e2e-job-template.yaml

+2-8
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,11 @@ jobs:
2020
addSpnToEnvironment: true
2121
inlineScript: |
2222
set -e
23-
make -C ./hack/aks set-kubeconf AZCLI=az CLUSTER=${{ parameters.clusterName }}-$(make revision)
23+
make -C ./hack/aks set-kubeconf AZCLI=az CLUSTER=${{ parameters.clusterName }}
2424
2525
# sig-release provides test suite tarball(s) per k8s release. Just need to provide k8s version "v1.xx.xx"
2626
# pulling k8s version from AKS.
27-
eval k8sVersion="v"$( az aks show -g ${{ parameters.clusterName }}-$(make revision) -n ${{ parameters.clusterName }}-$(make revision) --query "currentKubernetesVersion")
27+
eval k8sVersion="v"$( az aks show -g ${{ parameters.clusterName }} -n ${{ parameters.clusterName }} --query "currentKubernetesVersion")
2828
echo $k8sVersion
2929
curl -L https://dl.k8s.io/$k8sVersion/kubernetes-test-linux-amd64.tar.gz -o ./kubernetes-test-linux-amd64.tar.gz
3030
@@ -38,7 +38,6 @@ jobs:
3838
parameters:
3939
testName: Datapath
4040
name: datapath
41-
clusterName: ${{ parameters.clusterName }}
4241
ginkgoFocus: '(.*).Networking.should|(.*).Networking.Granular|(.*)kubernetes.api'
4342
ginkgoSkip: 'SCTP|Disruptive|Slow|hostNetwork|kube-proxy|IPv6'
4443
os: ${{ parameters.os }}
@@ -49,7 +48,6 @@ jobs:
4948
parameters:
5049
testName: DNS
5150
name: dns
52-
clusterName: ${{ parameters.clusterName }}
5351
ginkgoFocus: '\[sig-network\].DNS.should'
5452
ginkgoSkip: 'resolv|256 search'
5553
os: ${{ parameters.os }}
@@ -60,7 +58,6 @@ jobs:
6058
parameters:
6159
testName: Kubectl Portforward
6260
name: portforward
63-
clusterName: ${{ parameters.clusterName }}
6461
ginkgoFocus: '\[sig-cli\].Kubectl.Port'
6562
ginkgoSkip: ''
6663
os: ${{ parameters.os }}
@@ -71,7 +68,6 @@ jobs:
7168
parameters:
7269
testName: Service Conformance
7370
name: service
74-
clusterName: ${{ parameters.clusterName }}
7571
ginkgoFocus: 'Services.*\[Conformance\].*'
7672
ginkgoSkip: ''
7773
os: ${{ parameters.os }}
@@ -82,7 +78,6 @@ jobs:
8278
parameters:
8379
testName: Host Port
8480
name: hostport
85-
clusterName: ${{ parameters.clusterName }}
8681
ginkgoFocus: '\[sig-network\](.*)HostPort|\[sig-scheduling\](.*)hostPort'
8782
ginkgoSkip: 'SCTP|exists conflict' # Skip slow 5 minute test
8883
os: ${{ parameters.os }}
@@ -93,7 +88,6 @@ jobs:
9388
parameters:
9489
testName: Hybrid Network
9590
name: hybrid
96-
clusterName: ${{ parameters.clusterName }}
9791
ginkgoFocus: '\[sig-windows\].Hybrid'
9892
ginkgoSkip: ''
9993
os: ${{ parameters.os }}

.pipelines/cni/k8s-e2e/k8s-e2e-step-template.yaml

-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
parameters:
22
testName: ""
33
name: ""
4-
clusterName: ""
54
ginkgoFocus: ""
65
ginkgoSkip: ""
76
os: ""

.pipelines/pipeline.yaml

+75-8
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,10 @@ stages:
3232
name: "$(BUILD_POOL_NAME_DEFAULT)"
3333
steps:
3434
- script: |
35+
# To use the variables below, you must make the respective stage's dependsOn have - setup or it will not retain context of this stage
3536
BUILD_NUMBER=$(Build.BuildNumber)
3637
echo "##vso[task.setvariable variable=StorageID;isOutput=true]$(echo ${BUILD_NUMBER//./-})"
38+
echo "##vso[task.setvariable variable=commitID;isOutput=true]$(make revision)"
3739
echo "##vso[task.setvariable variable=Tag;isOutput=true]$(make version)"
3840
echo "##vso[task.setvariable variable=cniVersion;isOutput=true]$(make cni-version)"
3941
echo "##vso[task.setvariable variable=npmVersion;isOutput=true]$(make npm-version)"
@@ -313,34 +315,45 @@ stages:
313315
parameters:
314316
name: "cilium_e2e"
315317
displayName: Cilium
316-
pipelineBuildImage: "$(BUILD_IMAGE)"
317318
testDropgz: ""
319+
clusterType: cilium-podsubnet-up
318320
clusterName: "ciliume2e"
321+
vmSize: Standard_B2ms
322+
k8sVersion: ""
323+
dependsOn: 'containerize'
319324

320325
- template: singletenancy/cilium-overlay/cilium-overlay-e2e-job-template.yaml
321326
parameters:
322327
name: "cilium_overlay_cilium_e2e"
323328
displayName: Cilium on AKS Overlay
324-
pipelineBuildImage: "$(BUILD_IMAGE)"
325329
testDropgz: ""
330+
clusterType: cilium-overlay-up
326331
clusterName: "overlaye2e"
332+
vmSize: Standard_B2ms
333+
k8sVersion: ""
334+
dependsOn: 'containerize'
327335

328336
- template: singletenancy/azure-cni-overlay/azure-cni-overlay-e2e-job-template.yaml
329337
parameters:
330338
name: "azure_cni_overlay_e2e"
331339
displayName: Azure CNI Overlay
332-
pipelineBuildImage: "$(BUILD_IMAGE)"
333340
testDropgz: ""
341+
clusterType: overlay-byocni-up
334342
clusterName: "azurecnioverlaye2e"
343+
vmSize: Standard_B2ms
344+
k8sVersion: ""
345+
dependsOn: 'containerize'
335346

336347
- template: singletenancy/aks-swift/e2e-job-template.yaml
337348
parameters:
338349
name: "aks_swift_e2e"
339350
displayName: AKS Swift Ubuntu
340-
pipelineBuildImage: "$(BUILD_IMAGE)"
341351
testDropgz: ""
352+
clusterType: swift-byocni-up
342353
clusterName: "swifte2e"
343-
osSku: "Ubuntu"
354+
vmSize: Standard_B2s
355+
k8sVersion: ""
356+
dependsOn: 'containerize'
344357

345358
- template: singletenancy/aks/e2e-job-template.yaml
346359
parameters:
@@ -353,6 +366,7 @@ stages:
353366
vmSize: Standard_B2s
354367
k8sVersion: 1.25
355368
scaleup: 100
369+
dependsOn: 'containerize'
356370

357371
- template: singletenancy/aks/e2e-job-template.yaml
358372
parameters:
@@ -363,17 +377,69 @@ stages:
363377
clusterType: windows-cniv1-up
364378
clusterName: 'win22e2e'
365379
vmSize: Standard_B2ms
366-
windowsOsSku: 'Windows2022'
367380
os_version: 'ltsc2022'
368-
scaleup: 100
381+
scaleup: 50
382+
dependsOn: 'containerize'
369383

370384
- template: singletenancy/dualstack-overlay/dualstackoverlay-e2e-job-template.yaml
371385
parameters:
372386
name: "dualstackoverlay_e2e"
373387
displayName: AKS DualStack Overlay
374388
os: linux
375-
testDropgz: true
389+
clusterType: dualstack-overlay-byocni-up
376390
clusterName: "dualstackoverlaye2e"
391+
vmSize: Standard_B2s
392+
dependsOn: 'containerize'
393+
testDropgz: true
394+
395+
- stage: delete
396+
displayName: Delete Clusters
397+
condition: always()
398+
dependsOn:
399+
- setup
400+
- "azure_cni_overlay_e2e"
401+
- "aks_swift_e2e"
402+
- "cilium_e2e"
403+
- "cilium_overlay_cilium_e2e"
404+
- "aks_ubuntu_22_linux_e2e"
405+
- "aks_windows_22_e2e"
406+
- "dualstackoverlay_e2e"
407+
variables:
408+
commitID: $[ stagedependencies.setup.env.outputs['EnvironmentalVariables.commitID'] ]
409+
jobs:
410+
- job: delete
411+
displayName: Delete Cluster
412+
pool:
413+
name: "$(BUILD_POOL_NAME_DEFAULT)"
414+
strategy:
415+
matrix:
416+
cilium_e2e:
417+
name: cilium_e2e
418+
clusterName: 'ciliume2e'
419+
cilium_overlay_cilium_e2e:
420+
name: cilium_overlay_cilium_e2e
421+
clusterName: 'overlaye2e'
422+
azure_cni_overlay_e2e:
423+
name: azure_cni_overlay_e2e
424+
clusterName: 'azurecnioverlaye2e'
425+
aks_swift_e2e:
426+
name: aks_swift_e2e
427+
clusterName: 'swifte2e'
428+
aks_ubuntu_22_linux_e2e:
429+
name: aks_ubuntu_22_linux_e2e
430+
clusterName: 'ubuntu22e2e'
431+
aks_windows_22_e2e:
432+
name: aks_windows_22_e2e
433+
clusterName: 'win22e2e'
434+
dualstackoverlay_e2e:
435+
name: dualstackoverlay_e2e
436+
clusterName: 'dualstackoverlaye2e'
437+
steps:
438+
- template: templates/delete-cluster.yaml
439+
parameters:
440+
name: $(name)
441+
clusterName: $(clusterName)-$(commitID)
442+
region: $(REGION_AKS_CLUSTER_TEST)
377443

378444
- stage: validate2
379445
displayName: Validate Tags
@@ -398,6 +464,7 @@ stages:
398464
- stage: cleanup
399465
displayName: Cleanup
400466
dependsOn:
467+
- "azure_cni_overlay_e2e"
401468
- "aks_swift_e2e"
402469
- "cilium_e2e"
403470
- "cilium_overlay_cilium_e2e"
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,53 @@
11
parameters:
22
name: ""
33
displayName: ""
4-
pipelineBuildImage: "$(BUILD_IMAGE)"
54
testDropgz: ""
5+
clusterType: ""
66
clusterName: ""
7-
osSku: ""
7+
vmSize: ""
8+
k8sVersion: ""
9+
dependsOn: ""
10+
811
stages:
12+
- stage: ${{ parameters.clusterName }}
13+
displayName: Create Cluster - ${{ parameters.displayName }}
14+
dependsOn:
15+
- ${{ parameters.dependsOn }}
16+
- setup
17+
pool:
18+
name: $(BUILD_POOL_NAME_DEFAULT)
19+
variables:
20+
commitID: $[ stagedependencies.setup.env.outputs['EnvironmentalVariables.commitID'] ]
21+
jobs:
22+
- template: ../../templates/create-cluster.yaml
23+
parameters:
24+
name: ${{ parameters.name }}
25+
displayName: ${{ parameters.displayName }}
26+
clusterType: ${{ parameters.clusterType }}
27+
clusterName: ${{ parameters.clusterName }}-$(commitID)
28+
vmSize: ${{ parameters.vmSize }}
29+
k8sVersion: ${{ parameters.k8sVersion }}
30+
dependsOn: ${{ parameters.dependsOn }}
31+
region: $(REGION_AKS_CLUSTER_TEST)
32+
933
- stage: ${{ parameters.name }}
1034
displayName: E2E - ${{ parameters.displayName }}
11-
dependsOn:
35+
dependsOn:
1236
- setup
1337
- publish
38+
- ${{ parameters.clusterName }}
1439
variables:
1540
TAG: $[ stagedependencies.setup.env.outputs['EnvironmentalVariables.Tag'] ]
1641
CURRENT_VERSION: $[ stagedependencies.containerize.check_tag.outputs['CurrentTagManifests.currentTagManifests'] ]
42+
commitID: $[ stagedependencies.setup.env.outputs['EnvironmentalVariables.commitID'] ]
1743
condition: and(succeeded(), eq(variables.TAG, variables.CURRENT_VERSION))
1844
jobs:
1945
- job: ${{ parameters.name }}
2046
displayName: Singletenancy AKS Swift Suite - (${{ parameters.name }})
2147
timeoutInMinutes: 120
2248
pool:
2349
name: $(BUILD_POOL_NAME_DEFAULT)
24-
demands:
50+
demands:
2551
- agent.os -equals Linux
2652
- Role -equals $(CUSTOM_E2E_ROLE)
2753
variables:
@@ -33,5 +59,4 @@ stages:
3359
parameters:
3460
name: ${{ parameters.name }}
3561
testDropgz: ${{ parameters.testDropgz }}
36-
clusterName: ${{ parameters.clusterName }}
37-
osSku: ${{ parameters.osSku }}
62+
clusterName: ${{ parameters.clusterName }}-$(commitID)

.pipelines/singletenancy/aks-swift/e2e-step-template.yaml

+11-36
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ parameters:
22
name: ""
33
testDropgz: ""
44
clusterName: ""
5-
osSku: ""
65

76
steps:
87
- bash: |
@@ -31,25 +30,17 @@ steps:
3130
addSpnToEnvironment: true
3231
inlineScript: |
3332
set -e
34-
mkdir -p ~/.kube/
35-
echo "Create AKS cluster"
36-
make -C ./hack/aks azcfg AZCLI=az REGION=$(REGION_AKS_CLUSTER_TEST)
37-
make -C ./hack/aks byocni-up AZCLI=az REGION=$(REGION_AKS_CLUSTER_TEST) SUB=$(SUB_AZURE_NETWORK_AGENT_TEST) CLUSTER=${{ parameters.clusterName }}-${{ parameters.osSku }}-$(make revision) OSSKU=${{ parameters.osSku }}
38-
echo "Cluster successfully created"
39-
displayName: Create test cluster
40-
condition: succeeded()
41-
42-
- script: |
43-
echo "install kubetest2 and gsutils"
44-
go get github.com/onsi/ginkgo/ginkgo
45-
go get github.com/onsi/gomega/...
46-
go install github.com/onsi/ginkgo/ginkgo@latest
47-
go install sigs.k8s.io/kubetest2@latest
48-
go install sigs.k8s.io/kubetest2/kubetest2-noop@latest
49-
go install sigs.k8s.io/kubetest2/kubetest2-tester-ginkgo@latest
50-
wget https://storage.googleapis.com/pub/gsutil.tar.gz
51-
tar xfz gsutil.tar.gz
52-
sudo mv gsutil /usr/local/bin
33+
make -C ./hack/aks set-kubeconf AZCLI=az CLUSTER=${{ parameters.clusterName }}
34+
echo "install kubetest2 and gsutils"
35+
go get github.com/onsi/ginkgo/ginkgo
36+
go get github.com/onsi/gomega/...
37+
go install github.com/onsi/ginkgo/ginkgo@latest
38+
go install sigs.k8s.io/kubetest2@latest
39+
go install sigs.k8s.io/kubetest2/kubetest2-noop@latest
40+
go install sigs.k8s.io/kubetest2/kubetest2-tester-ginkgo@latest
41+
wget https://storage.googleapis.com/pub/gsutil.tar.gz
42+
tar xfz gsutil.tar.gz
43+
sudo mv gsutil /usr/local/bin
5344
name: "installKubetest"
5445
displayName: "Set up Conformance Tests"
5546

@@ -116,19 +107,3 @@ steps:
116107
name: "Cleanupartifactdir"
117108
displayName: "Cleanup artifact dir"
118109
condition: always()
119-
120-
- task: AzureCLI@2
121-
inputs:
122-
azureSubscription: $(AZURE_TEST_AGENT_SERVICE_CONNECTION)
123-
scriptLocation: "inlineScript"
124-
scriptType: "bash"
125-
addSpnToEnvironment: true
126-
inlineScript: |
127-
set -e
128-
echo "Deleting cluster"
129-
make -C ./hack/aks azcfg AZCLI=az REGION=$(REGION_AKS_CLUSTER_TEST)
130-
make -C ./hack/aks down AZCLI=az REGION=$(REGION_AKS_CLUSTER_TEST) SUB=$(SUB_AZURE_NETWORK_AGENT_TEST) CLUSTER=${{ parameters.clusterName }}-${{ parameters.osSku }}-$(make revision)
131-
echo "Cluster and resources down"
132-
name: "Cleanupcluster"
133-
displayName: "Cleanup cluster"
134-
condition: always()

0 commit comments

Comments
 (0)