Bump actions/upload-artifact from 4.3.2 to 4.3.3 #44
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Due to difference in configuring v1.13 and v1.14+ we split v1.13 into | |
# seperate workflow. | |
# TODO: We can delete this and rely on just the primary conformance.yml to | |
# test v1.14/v1.15/v1.16 upon the release of v1.16. | |
name: Talos Conformance (v1.13) (PR) | |
on: | |
pull_request: {} | |
jobs: | |
setup-and-test: | |
runs-on: ubuntu-22.04 | |
permissions: | |
id-token: write | |
contents: read | |
strategy: | |
fail-fast: false | |
max-parallel: 2 | |
matrix: | |
cilium: | |
# renovate: datasource=github-releases depName=cilium/cilium | |
- 'v1.13.10' | |
talos: | |
# renovate: datasource=github-releases depName=siderolabs/talos | |
- 'v1.6.5' | |
# renovate: datasource=github-releases depName=siderolabs/talos | |
- 'v1.5.4' | |
config: | |
- name: 'Vanilla' | |
kube-proxy: false | |
kube-proxy-replacement: "strict" | |
socketlb: false | |
bpf-masquerade: true | |
ipam-mode: 'kubernetes' | |
ipv4: true | |
ipv6: false | |
encryption-enabled: false | |
encryption-type: ipsec | |
tunnel-mode: vxlan | |
nodeport: true | |
l7: true | |
ingress: true | |
steps: | |
- name: Checkout | |
uses: actions/checkout@1d96c772d19495a3b5c517cd2bc0cb401ea0529f | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: Configure AWS credentials from shared services account | |
uses: aws-actions/configure-aws-credentials@v4 | |
with: | |
role-to-assume: arn:aws:iam::478566851380:role/TalosConformanceCI | |
aws-region: us-east-2 | |
- uses: hashicorp/setup-terraform@v3 | |
- name: Create Talos Cluster | |
run: | | |
cd test/conformance | |
./create-ci-env.sh \ | |
--kube-proxy ${{ matrix.config.kube-proxy}} \ | |
--talos-version ${{ matrix.talos }} \ | |
--pr "${{ github.event.repository.name }}-${{ github.run_id }}-${{ github.job }}-${{ github.run_number}}-${{ github.run_attempt }}-${{ matrix.name }}-${{ matrix.cilium }}-${{ matrix.talos }}" \ | |
--owner "isovalent/terraform-aws-talos" | |
make apply | |
- name: Install Cilium CLI | |
uses: cilium/cilium-cli@a9579d1afc528b085930c5237a69ee77b2c2be76 # v0.16.4 | |
with: | |
repository: cilium/cilium-cli | |
release-version: v0.15.20 | |
ci-version: "" | |
binary-name: cilium-cli | |
binary-dir: /usr/local/bin | |
- name: Install Cilium | |
run: | | |
cd test/conformance | |
export $(make print-kubeconfig) | |
kubectl create -n kube-system secret generic cilium-ipsec-keys \ | |
--from-literal=keys="3 rfc4106(gcm(aes)) $(echo $(dd if=/dev/urandom count=20 bs=1 2> /dev/null | xxd -p -c 64)) 128" | |
kubectl create -n kube-system -f ipmasq-config.yaml | |
cilium-cli install --version="${{ matrix.cilium }}" \ | |
--values=values.yaml \ | |
--set ipv4.enabled=${{ matrix.config.ipv4 }} \ | |
--set ipv6.enabled=${{ matrix.config.ipv6 }} \ | |
--set bpf.masquerade=${{ matrix.config.bpf-masquerade }} \ | |
--set kubeProxyReplacement=${{ matrix.config.kube-proxy-replacement }} \ | |
--set socketLB.enabled=${{ matrix.config.socketlb }} \ | |
--set ipam.mode=${{ matrix.config.ipam-mode }} \ | |
--set ingressController.enabled=${{ matrix.config.ingress }} \ | |
--set encryption.enabled=${{ matrix.config.encryption-enabled }} \ | |
--set encryption.type=${{ matrix.config.encryption-type }} \ | |
--set tunnelProtocol=${{ matrix.config.tunnel-mode }} \ | |
--set nodePort.enabled=${{ matrix.config.nodeport }} \ | |
--set l7Proxy=${{ matrix.config.l7 }} | |
cilium-cli status --wait | |
- name: Run E2E Connectivity Tests | |
run: | | |
cd test/conformance | |
export $(make print-kubeconfig) | |
./wait | |
kubectl create ns cilium-test | |
kubectl label ns cilium-test pod-security.kubernetes.io/enforce=privileged | |
kubectl label ns cilium-test pod-security.kubernetes.io/warn=privileged | |
cilium-cli connectivity test --collect-sysdump-on-failure | |
- name: Fetch artifacts | |
if: ${{ !success() && steps.run-tests.outcome != 'skipped' }} | |
shell: bash | |
run: | | |
cd test/conformance | |
export $(make print-kubeconfig) | |
kubectl get svc -o wide -A | |
kubectl get pods --all-namespaces -o wide | |
cilium-cli status | |
mkdir -p cilium-sysdumps | |
cilium-cli sysdump --output-filename cilium-sysdump-${{ github.run_id }}-${{ github.run_number }} | |
- name: Upload artifacts | |
if: ${{ !success() }} | |
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3 | |
with: | |
name: cilium-sysdumps-${{ github.run_id }}-${{ github.run_number }} | |
path: ./test/conformance/cilium-sysdump-*.zip | |
- name: Cleanup | |
if: always() | |
run: | | |
cd test/conformance | |
make destroy | |