Skip to content

Commit 482c179

Browse files
Update synchronize istio to include ztunnel support (#3274)
* Update synchronize istio to include ztunnel support Signed-off-by: kunal-511 <[email protected]> * increase katib test timeout Signed-off-by: kunal-511 <[email protected]> * revert katib test timeout Signed-off-by: kunal-511 <[email protected]> * Update error handling in free-disk-space.sh Enable debugging options in free-disk-space.sh Signed-off-by: Julius von Kohout <[email protected]> * Update full_kubeflow_integration_test.yaml Signed-off-by: Julius von Kohout <[email protected]> * Update pipeline_test.yaml Signed-off-by: Julius von Kohout <[email protected]> * Upgrade checkout action from v4 to v5 Signed-off-by: Julius von Kohout <[email protected]> * Update checkout action version in pipeline test Signed-off-by: Julius von Kohout <[email protected]> * Make tests/free-disk-space.sh executable Signed-off-by: juliusvonkohout <[email protected]> * Remove apt-get autoremove from cleanup script Removed 'apt-get autoremove' command from the script. Signed-off-by: Julius von Kohout <[email protected]> * Update GitHub Actions workflow for disk space management Signed-off-by: Julius von Kohout <[email protected]> * Update katib_test.sh Signed-off-by: Julius von Kohout <[email protected]> * Upgrade checkout action and add disk space cleanup Updated checkout action version and added disk space cleanup step. Signed-off-by: Julius von Kohout <[email protected]> * already in https://github.com/kubeflow/manifests/blob/master/common/istio/istio-install/base/patches/seccomp-istiod.yaml Signed-off-by: juliusvonkohout <[email protected]> --------- Signed-off-by: kunal-511 <[email protected]> Signed-off-by: Julius von Kohout <[email protected]> Signed-off-by: juliusvonkohout <[email protected]> Co-authored-by: Julius von Kohout <[email protected]>
1 parent 2342bcc commit 482c179

File tree

9 files changed

+79
-17
lines changed

9 files changed

+79
-17
lines changed

.github/workflows/full_kubeflow_integration_test.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,10 @@ jobs:
2525
timeout-minutes: 45
2626
steps:
2727
- name: Checkout
28-
uses: actions/checkout@v4
28+
uses: actions/checkout@v5
29+
30+
- name: Free up disk space
31+
run: ./tests/free-disk-space.sh
2932

3033
- name: Install KinD, Create KinD cluster and Install kustomize
3134
run: ./tests/install_KinD_create_KinD_cluster_install_kustomize.sh

.github/workflows/pipeline_run_from_notebook.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,10 @@ jobs:
2121
runs-on: ubuntu-latest
2222
steps:
2323
- name: Checkout
24-
uses: actions/checkout@v4
24+
uses: actions/checkout@v5
25+
26+
- name: Free up disk space
27+
run: ./tests/free-disk-space.sh
2528

2629
- name: Install KinD, Create KinD cluster and Install kustomize
2730
run: ./tests/install_KinD_create_KinD_cluster_install_kustomize.sh

.github/workflows/pipeline_swfs_test.yaml

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,10 @@ jobs:
2525
labels: ubuntu-latest
2626
steps:
2727
- name: Checkout
28-
uses: actions/checkout@v4
28+
uses: actions/checkout@v5
2929

30-
- name: Remove unused software
31-
run: |
32-
df -h # Check disk space before removal
33-
sudo rm -rf /usr/share/dotnet # Example: Remove .NET SDK
34-
sudo rm -rf /usr/local/lib/android # Example: Remove Android SDK
35-
sudo rm -rf /opt/ghc # Example: Remove Haskell
36-
df -h # Check disk space after removal
30+
- name: Free up disk space
31+
run: ./tests/free-disk-space.sh
3732

3833
- name: Proactively prune OCI system on GHA runner
3934
run: docker system prune -a --volumes --force

.github/workflows/pipeline_test.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,10 @@ jobs:
2626
runs-on: ubuntu-latest
2727
steps:
2828
- name: Checkout
29-
uses: actions/checkout@v4
29+
uses: actions/checkout@v5
30+
31+
- name: Free up disk space
32+
run: ./tests/free-disk-space.sh
3033

3134
- name: Install KinD, Create KinD cluster and Install kustomize
3235
run: ./tests/install_KinD_create_KinD_cluster_install_kustomize.sh

common/istio/profile.yaml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,3 @@ spec:
2929
global:
3030
configValidation: true
3131
istioNamespace: istio-system
32-
proxy:
33-
seccompProfile:
34-
type: RuntimeDefault

common/istio/split-istio-packages

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,13 +50,16 @@ def main():
5050
args = parse_args()
5151
with open(args.manifest_file, "r") as f:
5252
objects = [obj for obj in list(yaml.load_all(f)) if obj]
53-
crds, install, cluster_local = [], [], []
53+
crds, install, cluster_local, ztunnel = [], [], [], []
5454
for obj in objects:
5555
if obj.get("kind") == "CustomResourceDefinition":
5656
crds.append(obj)
5757
elif (obj.get("metadata", {}).get("name", "").
5858
startswith("cluster-local-gateway")):
5959
cluster_local.append(obj)
60+
elif (obj.get("metadata", {}).get("name", "") == "ztunnel" or
61+
(obj.get("metadata", {}).get("labels", {}).get("app.kubernetes.io/name") == "ztunnel")):
62+
ztunnel.append(obj)
6063
else:
6164
install.append(obj)
6265

@@ -66,6 +69,8 @@ def main():
6669
yaml.dump_all(install, f)
6770
with open("cluster-local-gateway.yaml", "w") as f:
6871
yaml.dump_all(cluster_local, f)
72+
with open("ztunnel.yaml", "w") as f:
73+
yaml.dump_all(ztunnel, f)
6974

7075

7176
if __name__ == "__main__":

scripts/synchronize-istio-manifests.sh

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,14 @@ echo "Generating non-CNI manifests (insecure overlay)..."
4242
$ISTIOCTL manifest generate -f profile.yaml -f profile-overlay.yaml \
4343
--set components.cni.enabled=false > istio-install/overlays/insecure/install-insecure.yaml
4444

45+
echo "Generating ztunnel manifests (ambient mode)..."
46+
$ISTIOCTL manifest generate -f profile.yaml -f profile-overlay.yaml \
47+
--set components.cni.enabled=true \
48+
--set components.ztunnel.enabled=true > dump-ztunnel.yaml
49+
./split-istio-packages -f dump-ztunnel.yaml
50+
mv $ISTIO_DIRECTORY/ztunnel.yaml $ISTIO_DIRECTORY/istio-install/components/ambient-mode/
51+
rm dump-ztunnel.yaml crd.yaml install.yaml cluster-local-gateway.yaml
52+
4553
check_uncommitted_changes
4654

4755
SOURCE_TEXT="\[.*\](https://github.com/istio/istio/releases/tag/.*)"

tests/free-disk-space.sh

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
#!/bin/bash
2+
set -euxo pipefail
3+
4+
# This script frees up disk space on GitHub Actions runners.
5+
# Several GHA workflows were failing with "no space left on device" errors.
6+
# This script is only meant to run in GitHub Actions CI environment.
7+
8+
# Safety check: Only run on GitHub Actions
9+
if [[ "${GITHUB_ACTIONS:-false}" != "true" ]]; then
10+
echo "ERROR: This script is for GitHub Actions runners only!"
11+
exit 1
12+
fi
13+
14+
echo "=== Initial disk usage ==="
15+
df -h
16+
17+
echo "=== Freeing up disk space ==="
18+
19+
# Remove large directories not needed for KFP tests
20+
sudo rm -rf /usr/share/dotnet
21+
sudo rm -rf /opt/ghc
22+
sudo rm -rf /usr/local/share/boost
23+
sudo rm -rf /usr/local/lib/android
24+
sudo rm -rf /usr/local/.ghcup
25+
sudo rm -rf /usr/share/swift
26+
27+
# Selectively remove large tools from hostedtoolcache while preserving Go, Node, Python
28+
# Remove these specific large tools that aren't needed for KFP tests
29+
sudo rm -rf /opt/hostedtoolcache/CodeQL || true
30+
sudo rm -rf /opt/hostedtoolcache/Java_* || true
31+
sudo rm -rf /opt/hostedtoolcache/Ruby || true
32+
sudo rm -rf /opt/hostedtoolcache/PyPy || true
33+
sudo rm -rf /opt/hostedtoolcache/boost || true
34+
35+
# Clean package manager
36+
sudo apt-get autoclean
37+
38+
# Clean Docker
39+
docker system prune -af --volumes
40+
docker image prune -af
41+
42+
# Clean containerd
43+
sudo systemctl stop containerd || true
44+
sudo rm -rf /var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots/* || true
45+
sudo systemctl start containerd || true
46+
47+
echo "=== Final disk usage ==="
48+
df -h

tests/katib_test.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,5 @@ kubectl wait --for=condition=Running experiments.kubeflow.org -n $KF_PROFILE --a
88
echo "Waiting for all Trials to be Completed..."
99
kubectl wait --for=condition=Created trials.kubeflow.org -n $KF_PROFILE --all --timeout=60s
1010
kubectl get trials.kubeflow.org -n $KF_PROFILE
11-
kubectl wait --for=condition=Succeeded trials.kubeflow.org -n $KF_PROFILE --all --timeout 600s
12-
kubectl get trials.kubeflow.org -n $KF_PROFILE
11+
kubectl wait --for=condition=Succeeded trials.kubeflow.org -n $KF_PROFILE --all --timeout 720s
12+
kubectl get trials.kubeflow.org -n $KF_PROFILE

0 commit comments

Comments
 (0)