Skip to content

Commit

Permalink
ci: bump macos version to 13
Browse files Browse the repository at this point in the history
  • Loading branch information
ComradeProgrammer committed Apr 20, 2024
1 parent e310e14 commit 6e57e00
Show file tree
Hide file tree
Showing 4 changed files with 72 additions and 8 deletions.
12 changes: 9 additions & 3 deletions .github/workflows/master.yml
Expand Up @@ -409,7 +409,7 @@ jobs:
JOB_NAME: "functional_virtualbox_macos"
GOPOGH_RESULT: ""
SHELL: "/bin/bash" # To prevent https://github.com/kubernetes/minikube/issues/6643
runs-on: macos-12
runs-on: macos-13
steps:
- name: Install kubectl
shell: bash
Expand All @@ -429,6 +429,12 @@ jobs:
run: |
brew install docker-machine docker
sudo docker --version
- name: Install vbox
shell: bash
run: |
sudo spctl --master-disable
brew install --cask virtualbox
brew install --cask virtualbox-extension-pack
- name: Info
shell: bash
run: |
Expand All @@ -455,7 +461,7 @@ jobs:
chmod a+x e2e-*
chmod a+x minikube-*
START_TIME=$(date -u +%s)
KUBECONFIG=$(pwd)/testhome/kubeconfig MINIKUBE_HOME=$(pwd)/testhome ./e2e-darwin-amd64 -minikube-start-args=--vm-driver=virtualbox -test.run "TestFunctional" -test.timeout=35m -test.v -timeout-multiplier=1.5 -binary=./minikube-darwin-amd64 2>&1 | tee ./report/testout.txt
KUBECONFIG=$(pwd)/testhome/kubeconfig MINIKUBE_HOME=$(pwd)/testhome ./e2e-darwin-amd64 -minikube-start-args=--vm-driver=virtualbox -test.run "TestFunctional" -test.timeout=35m -test.v -timeout-multiplier=1.8 -binary=./minikube-darwin-amd64 2>&1 | tee ./report/testout.txt
END_TIME=$(date -u +%s)
TIME_ELAPSED=$(($END_TIME-$START_TIME))
min=$((${TIME_ELAPSED}/60))
Expand Down Expand Up @@ -635,4 +641,4 @@ jobs:
- uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3
with:
name: all_reports
path: all_reports
path: all_reports
25 changes: 22 additions & 3 deletions .github/workflows/pr.yml
Expand Up @@ -527,8 +527,17 @@ jobs:
JOB_NAME: "functional_virtualbox_macos"
GOPOGH_RESULT: ""
SHELL: "/bin/bash" # To prevent https://github.com/kubernetes/minikube/issues/6643
runs-on: macos-12
runs-on: macos-13
steps:
- name: Check architecture
shell: bash
run: |
if [ $(uname -m) != "x86_64" ]
then
echo "$(uname -m) detected. This test must be run on x86_64"
exit -1
fi
exit 0
- name: Install kubectl
shell: bash
run: |
Expand All @@ -547,6 +556,16 @@ jobs:
run: |
brew install docker-machine docker
sudo docker --version
- name: Install vbox
shell: bash
run: |
brew update
brew search virtualbox
sudo spctl --master-disable
brew install --cask virtualbox
curl -O -L "https://download.virtualbox.org/virtualbox/7.0.14/Oracle_VM_VirtualBox_Extension_Pack-7.0.14.vbox-extpack"
# Get SHAs from installing it manually once and then it will spit out the SHA for batch installation
echo "y" | sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-7.0.14.vbox-extpack --accept-license=33d7284dc4a0ece381196fda3cfe2ed0e1e8e7ed7f27b9a9ebc4ee22e24bd23c
- name: Info
shell: bash
run: |
Expand Down Expand Up @@ -574,7 +593,7 @@ jobs:
chmod a+x minikube-*
MINIKUBE_HOME=$(pwd)/testhome ./minikube-darwin-amd64 delete --all --purge
START_TIME=$(date -u +%s)
KUBECONFIG=$(pwd)/testhome/kubeconfig MINIKUBE_HOME=$(pwd)/testhome ./e2e-darwin-amd64 -minikube-start-args=--vm-driver=virtualbox -test.run "TestFunctional" -test.timeout=35m -test.v -timeout-multiplier=1.5 -binary=./minikube-darwin-amd64 2>&1 | tee ./report/testout.txt
KUBECONFIG=$(pwd)/testhome/kubeconfig MINIKUBE_HOME=$(pwd)/testhome ./e2e-darwin-amd64 -minikube-start-args=--vm-driver=virtualbox -test.run "TestFunctional" -test.timeout=35m -test.v -timeout-multiplier=1.8 -binary=./minikube-darwin-amd64 2>&1 | tee ./report/testout.txt
END_TIME=$(date -u +%s)
TIME_ELAPSED=$(($END_TIME-$START_TIME))
min=$((${TIME_ELAPSED}/60))
Expand Down Expand Up @@ -757,4 +776,4 @@ jobs:
- uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3
with:
name: all_reports
path: all_reports
path: all_reports
4 changes: 2 additions & 2 deletions .github/workflows/time-to-k8s-public-chart.yml
Expand Up @@ -32,7 +32,7 @@ jobs:
./hack/benchmark/time-to-k8s/public-chart/public-chart.sh docker containerd
time-to-k8s-public-chart-virtualbox:
if: github.repository == 'kubernetes/minikube'
runs-on: macos-12
runs-on: macos-13
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
Expand All @@ -58,4 +58,4 @@ jobs:
./hack/benchmark/time-to-k8s/public-chart/public-chart.sh virtualbox docker
- name: Benchmark time-to-k8s for VirtualBox driver with containerd runtime
run: |
./hack/benchmark/time-to-k8s/public-chart/public-chart.sh virtualbox containerd
./hack/benchmark/time-to-k8s/public-chart/public-chart.sh virtualbox containerd
39 changes: 39 additions & 0 deletions .github/workflows/virtual_box_rerun.yml
@@ -0,0 +1,39 @@
# In "PR" workflow, the functional test for virtual box needs to be run on x86_64 arch,
# however, when we use macos13 runner, sometimes we get an arm64 one, which makes the test fail.
# This workflow is the solution for this problem. It will be triggered by PR workflow
# and it will use gh tool to check whether there are any arch error according to the test log.
# If there is, then rerun the PR test

name: virtual-box-functional-test-rerun


on:
workflow_run:
workflows: ["PR"]
branches: ["**"]
types:
- completed

env:
GH_TOKEN: ${{ github.token }}
jobs:
check-and-rerun:
runs-on: ubuntu-latest
permissions: write-all
steps:
- uses: actions/checkout@v3

- name: CheckArm64AndRerun
run: |
set +e
gh run view ${{ github.event.workflow_run.id }} --log | grep ':type=>:arm'
RET=$?
echo "grep returns $RET"
set -e
if [ $RET == 0 ]
then
JOBID=`gh run view ${{ github.event.workflow_run.id }} --json jobs | jq '.jobs[] | select ( .name == "functional_virtualbox_macos") | .databaseId'`
echo "rerun workflow ${{ github.event.workflow_run.id }} job $JOBID"
gh run rerun --job $JOBID
fi
exit 0

0 comments on commit 6e57e00

Please sign in to comment.