Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v1.14 Backports 2023-09-04 #27917

Merged
merged 29 commits into from
Sep 7, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
fb44b09
cmd: Refactor maxSequenceNumber
pchaigno Aug 23, 2023
8b47706
cmd: Fix the computed IPsec max. sequence number
pchaigno Aug 23, 2023
474f0be
cmd: Unit tests for extractMaxSequenceNumber
pchaigno Aug 23, 2023
97f005e
helm: fix envoy daemonset loglevel with multiple verbose debug groups
mhofstetter Aug 25, 2023
b0794e1
ipam: when a CiliumNode is removed, delete node label from metrics.
tommyp1ckles Aug 25, 2023
73de0ba
GatewayAPI: Fix listener parsing
Managarmrr Aug 25, 2023
29afee5
fqdn: fix broken sorting algorithm for DNSZombies
bimmlerd Aug 11, 2023
14b3c66
ariane: add trigger command for runtime tests
tklauser Aug 30, 2023
23a1b54
ariane: add trigger phrase for integration tests
tklauser Aug 30, 2023
ac72df2
.github/workflows: add trigger phrase to conformance ingress
tklauser Aug 30, 2023
d43860f
docs: Rename Labels-based endpoint policies
joestringer Jul 31, 2023
74c8f1f
docs: Move services note about applicability higher
joestringer Jul 31, 2023
6501235
ingress: handle ingress rule without HTTPIngressRule
mhofstetter Aug 30, 2023
5fd7a87
gh/actions: Customize cilium-config
brb Aug 10, 2023
1c34856
k8s/watchers: omit unnecessary atomic store in (*K8sWatcher).namespac…
tklauser Aug 30, 2023
872f2f9
k8s/watchers: preallocate label map in getNamespaceLabels
tklauser Aug 30, 2023
5e2c828
k8s/watchers: fix propagation of namespace labels to endpoint labels
tklauser Aug 30, 2023
9097d47
k8s/watchers: store old identity labels instead of full label set
tklauser Aug 30, 2023
798a9cb
docs: Update the microservices-demo link
haiyuewa Aug 30, 2023
34cc516
gh/worklows: Delete noop in ci-ipsec-upgrade
brb Aug 8, 2023
b1ee37b
gh/workflows: Use cilium-config action in ci-ipsec-upgrade
brb Aug 8, 2023
ac4b6f8
gh/workflows: Create K8s before waiting for img in ci-ipsec-upgrade
brb Aug 8, 2023
0a6cf80
ci-ipsec-upgrade: Disable some settings
brb Aug 31, 2023
9b95bfd
ci-e2e: Add secondary network
brb Aug 31, 2023
04d30c5
ginkgo: Remove Tests with secondary NodePort device
brb Aug 31, 2023
235b6b8
.github/workflows: unify time to wait for images to become available
tklauser Sep 1, 2023
5978427
docs: Word-wrap firewall section
joestringer Jul 31, 2023
490bdb4
docs: Add WireGuard into the firewall rules
joestringer Jul 31, 2023
636580a
bpf: Add missing traces for reply traffic to the proxy
pchaigno Sep 1, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
22 changes: 19 additions & 3 deletions .github/actions/cilium-config/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,15 @@ inputs:
host-fw:
description: 'Enable host firewall'
default: false
mutual-auth:
description: 'Enable mTLS-based Mutual Authentication'
default: true
devices:
description: 'List of native devices to attach datapath programs'
default: ''
misc:
description: 'Misc helm rarely set by a user coma separated values'
default: ''
outputs:
config:
description: 'Cilium installation config'
Expand All @@ -63,16 +72,23 @@ runs:
--helm-set=hubble.relay.image.useDigest=false \
--helm-set=hubble.eventBufferCapacity=65535 \
--helm-set=bpf.monitorAggregation=none \
--helm-set=authentication.mutual.spire.enabled=true \
--helm-set=cluster.name=default \
--helm-set=authentication.mutual.spire.enabled=${{ inputs.mutual-auth }} \
--nodes-without-cilium=kind-worker3 \
--helm-set-string=kubeProxyReplacement=${{ inputs.kpr }}"
--helm-set-string=kubeProxyReplacement=${{ inputs.kpr }} \
--set='${{ inputs.misc }}'"

TUNNEL="--helm-set-string=tunnelProtocol=${{ inputs.tunnel }}"
if [ "${{ inputs.tunnel }}" == "disabled" ]; then
TUNNEL="--helm-set-string=routingMode=native --helm-set-string=autoDirectNodeRoutes=true --helm-set-string=ipv4NativeRoutingCIDR=10.244.0.0/16 --helm-set-string=tunnel=disabled"
TUNNEL="${TUNNEL} --helm-set-string=ipv6NativeRoutingCIDR=fd00:10:244::/56"
fi

DEVICES=""
if [ "${{ inputs.devices }}" != "" ]; then
DEVICES="--helm-set=devices='${{ inputs.devices }}'"
fi

LB_MODE=""
if [ "${{ inputs.lb-mode }}" != "" ]; then
LB_MODE="--helm-set-string=loadBalancer.mode=${{ inputs.lb-mode }}"
Expand Down Expand Up @@ -121,5 +137,5 @@ runs:
HOST_FW="--helm-set=hostFirewall.enabled=true"
fi

CONFIG="${DEFAULTS} ${TUNNEL} ${LB_MODE} ${ENDPOINT_ROUTES} ${IPV6} ${MASQ} ${EGRESS_GATEWAY} ${ENCRYPT} ${HOST_FW} ${LB_ACCELERATION}"
CONFIG="${DEFAULTS} ${TUNNEL} ${DEVICES} ${LB_MODE} ${ENDPOINT_ROUTES} ${IPV6} ${MASQ} ${EGRESS_GATEWAY} ${ENCRYPT} ${HOST_FW} ${LB_ACCELERATION}"
echo "config=${CONFIG}" >> $GITHUB_OUTPUT
3 changes: 1 addition & 2 deletions .github/actions/ginkgo/main-focus.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -149,9 +149,8 @@ include:
# K8sDatapathServicesTest Checks N/S loadbalancing Tests NodePort with sessionAffinity from outside
# K8sDatapathServicesTest Checks N/S loadbalancing Tests security id propagation in N/S LB requests fwd-ed over tunnel
# K8sDatapathServicesTest Checks N/S loadbalancing Tests with direct routing and DSR
# K8sDatapathServicesTest Checks N/S loadbalancing Tests with secondary NodePort device
- focus: "f12-datapath-service-ns-misc"
cliFocus: "K8sDatapathServicesTest Checks N/S loadbalancing Tests externalIPs|K8sDatapathServicesTest Checks N/S loadbalancing Tests GH|K8sDatapathServicesTest Checks N/S loadbalancing Tests NodePort|K8sDatapathServicesTest Checks N/S loadbalancing Tests security|K8sDatapathServicesTest Checks N/S loadbalancing Tests with direct|K8sDatapathServicesTest Checks N/S loadbalancing Tests with secondary|K8sDatapathServicesTest Checks N/S loadbalancing with"
cliFocus: "K8sDatapathServicesTest Checks N/S loadbalancing Tests externalIPs|K8sDatapathServicesTest Checks N/S loadbalancing Tests GH|K8sDatapathServicesTest Checks N/S loadbalancing Tests NodePort|K8sDatapathServicesTest Checks N/S loadbalancing Tests security|K8sDatapathServicesTest Checks N/S loadbalancing Tests with direct|K8sDatapathServicesTest Checks N/S loadbalancing with"

###
# K8sDatapathServicesTest Checks N/S loadbalancing Tests with XDP, direct routing, DSR and Maglev
Expand Down
9 changes: 9 additions & 0 deletions .github/ariane-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,15 @@ triggers:
/ci-gke:
workflows:
- conformance-gke.yaml
/ci-ingress:
workflows:
- conformance-ingress.yaml
/ci-integration:
workflows:
- integration-test.yaml
/ci-runtime:
workflows:
- conformance-runtime.yaml
/ci-verifier:
workflows:
- tests-datapath-verifier.yaml
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/conformance-aks.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -215,7 +215,7 @@ jobs:
--name ${{ env.name }}

- name: Wait for images to be available
timeout-minutes: 10
timeout-minutes: 30
shell: bash
run: |
for image in cilium-ci operator-azure-ci hubble-relay-ci ; do
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/conformance-aws-cni.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -215,7 +215,7 @@ jobs:
kubectl apply -f https://raw.githubusercontent.com/aws/amazon-vpc-cni-k8s/release-1.11/config/master/aws-k8s-cni.yaml

- name: Wait for images to be available
timeout-minutes: 10
timeout-minutes: 30
shell: bash
run: |
for image in cilium-ci operator-generic-ci hubble-relay-ci ; do
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/conformance-clustermesh.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -350,7 +350,7 @@ jobs:
kubectl --context ${{ env.contextName2 }} patch deployment -n kube-system coredns --patch="$COREDNS_PATCH"

- name: Wait for images to be available
timeout-minutes: 10
timeout-minutes: 30
shell: bash
run: |
for image in cilium-ci operator-generic-ci hubble-relay-ci clustermesh-apiserver-ci ; do
Expand Down
25 changes: 23 additions & 2 deletions .github/workflows/conformance-e2e.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,8 @@ jobs:
kernel: '5.10-20230824.161940'
kube-proxy: 'iptables'
kpr: 'true'
devices: '{eth0,eth1}'
secondary-network: 'true'
tunnel: 'vxlan'
lb-mode: 'snat'
endpoint-routes: 'true'
Expand All @@ -115,6 +117,8 @@ jobs:
kernel: '5.15-20230824.161940'
kube-proxy: 'iptables'
kpr: 'true'
devices: '{eth0,eth1}'
secondary-network: 'true'
tunnel: 'disabled'
lb-mode: 'dsr'
endpoint-routes: 'true'
Expand All @@ -137,6 +141,8 @@ jobs:
kernel: 'bpf-next-20230420.212204'
kube-proxy: 'none'
kpr: 'true'
devices: '{eth0,eth1}'
secondary-network: 'true'
tunnel: 'disabled'
lb-mode: 'snat'
egress-gateway: 'true'
Expand Down Expand Up @@ -183,6 +189,8 @@ jobs:
kernel: '5.10-20230824.161940'
kube-proxy: 'iptables'
kpr: 'true'
devices: '{eth0,eth1}'
secondary-network: 'true'
tunnel: 'vxlan'
encryption: 'wireguard'
encryption-node: 'false'
Expand All @@ -195,6 +203,8 @@ jobs:
kernel: '5.15-20230824.161940'
kube-proxy: 'iptables'
kpr: 'true'
devices: '{eth0,eth1}'
secondary-network: 'true'
tunnel: 'disabled'
encryption: 'wireguard'
encryption-node: 'false'
Expand All @@ -207,6 +217,8 @@ jobs:
kernel: '6.0-20230824.161940'
kube-proxy: 'none'
kpr: 'true'
devices: '{eth0,eth1}'
secondary-network: 'true'
tunnel: 'vxlan'
encryption: 'wireguard'
encryption-node: 'true'
Expand All @@ -218,6 +230,8 @@ jobs:
kernel: 'bpf-next-20230420.212204'
kube-proxy: 'none'
kpr: 'true'
devices: '{eth0,eth1}'
secondary-network: 'true'
tunnel: 'disabled'
encryption: 'wireguard'
encryption-node: 'true'
Expand Down Expand Up @@ -262,6 +276,7 @@ jobs:
image-tag: ${{ steps.vars.outputs.sha }}
chart-dir: './install/kubernetes/cilium'
tunnel: ${{ matrix.tunnel }}
devices: ${{ matrix.devices }}
endpoint-routes: ${{ matrix.endpoint-routes }}
ipv6: ${{ matrix.ipv6 }}
kpr: ${{ matrix.kpr }}
Expand Down Expand Up @@ -320,7 +335,7 @@ jobs:
fi

- name: Wait for images to be available
timeout-minutes: 10
timeout-minutes: 30
shell: bash
run: |
for image in cilium-ci operator-generic-ci hubble-relay-ci ; do
Expand Down Expand Up @@ -352,11 +367,17 @@ jobs:
cmd: |
cd /host/

EXTRA=""
if [ "${{ matrix.secondary-network }}" = "true" ]; then
EXTRA="--secondary-network-iface=eth1"
fi

./cilium-cli connectivity test --include-unsafe-tests --collect-sysdump-on-failure \
--sysdump-hubble-flows-count=1000000 --sysdump-hubble-flows-timeout=5m \
--sysdump-output-filename "cilium-sysdump-${{ matrix.name }}-<ts>" \
--junit-file "cilium-junits/${{ env.job_name }} (${{ join(matrix.*, ', ') }}).xml" \
--junit-property github_job_step="Run tests (${{ join(matrix.*, ', ') }})"
--junit-property github_job_step="Run tests (${{ join(matrix.*, ', ') }})" \
\$EXTRA

./contrib/scripts/kind-down.sh

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/conformance-eks.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,7 @@ jobs:
kubectl -n kube-system delete daemonset aws-node

- name: Wait for images to be available
timeout-minutes: 10
timeout-minutes: 30
shell: bash
run: |
for image in cilium-ci operator-aws-ci hubble-relay-ci ; do
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/conformance-externalworkloads.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -247,7 +247,7 @@ jobs:
gcloud container clusters get-credentials ${{ env.clusterName }} --zone ${{ matrix.zone }}

- name: Wait for images to be available
timeout-minutes: 10
timeout-minutes: 30
shell: bash
run: |
for image in cilium-ci operator-generic-ci hubble-relay-ci clustermesh-apiserver-ci ; do
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/conformance-ginkgo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ jobs:
uses: ./.github/actions/set-env-variables

- name: Wait for images to be available
timeout-minutes: 10
timeout-minutes: 30
shell: bash
run: |
for image in cilium-ci operator-generic-ci hubble-relay-ci ; do
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/conformance-gke.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -231,7 +231,7 @@ jobs:
gcloud container clusters get-credentials ${{ env.clusterName }}-${{ matrix.config.index }} --zone ${{ matrix.k8s.zone }}

- name: Wait for images to be available
timeout-minutes: 10
timeout-minutes: 30
shell: bash
run: |
for image in cilium-ci operator-generic-ci hubble-relay-ci ; do
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/conformance-ingress.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Conformance Ingress
name: Conformance Ingress (ci-ingress)

# Any change in triggers needs to be reflected in the concurrency group.
on:
Expand Down