object renames #2806
This file contains hidden or 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
| # This workflow will build a golang project | |
| # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-go | |
| name: integration | |
| on: | |
| push: | |
| branches: | |
| - main | |
| - 'release/**' | |
| pull_request: | |
| branches: | |
| - main | |
| - 'release/**' | |
| workflow_dispatch: | |
| env: | |
| ContainerRegistry: "ghcr.io" | |
| ContainerRegistryRepo: "ghcr.io/eclipse-symphony" | |
| GO_VERSION: "1.24.0" | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| scenario: | |
| - "00.unit" | |
| - "01.update" | |
| - "02.basic" | |
| - "03.basicWithNsDelete" | |
| - "04.workflow-false" | |
| - "05.catalogversionNconfigmap" | |
| - "07.maestroTest" | |
| - "08.webhook" | |
| - "09.stress" | |
| - "10.catalogversionEval" | |
| - "12.naming" | |
| - "13.createStage" | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 1 | |
| - name: Set up Go | |
| uses: actions/setup-go@v5 | |
| with: | |
| go-version: ${{ env.GO_VERSION }} | |
| - name: Set up custom GOPATH | |
| run: | | |
| mkdir -p /home/runner/go | |
| echo "export GOPATH=/home/runner/go" >> $HOME/.bashrc | |
| echo "export PATH=\$PATH:\$GOPATH/bin" >> $HOME/.bashrc | |
| source $HOME/.bashrc | |
| - name: Install make | |
| run: sudo apt-get update && sudo apt-get install -y build-essential protobuf-compiler | |
| - name: Check docker version and images | |
| run: docker --version && docker images | |
| - name: Install kubectl | |
| run: | | |
| curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" | |
| chmod +x kubectl | |
| sudo mv ./kubectl /usr/local/bin/kubectl | |
| kubectl version --client | |
| kubectl config view | |
| - name: Install Helm | |
| run: | | |
| curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | |
| chmod 700 get_helm.sh | |
| ./get_helm.sh | |
| - name: Install minikube | |
| run: | | |
| curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 | |
| chmod +x minikube | |
| sudo mv minikube /usr/local/bin/ | |
| minikube start | |
| kubectl config view | |
| - name: Install Mage | |
| run: | | |
| cd .. | |
| git clone https://github.com/magefile/mage | |
| cd mage | |
| go run bootstrap.go | |
| cd .. | |
| - name: Login to Docker Hub | |
| uses: docker/login-action@v3 | |
| with: | |
| registry: ${{ env.ContainerRegistry }} | |
| username: ${{ github.repository_owner }} | |
| password: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Clean up docker | |
| run: | | |
| docker system prune -a -f | |
| docker volume prune -f | |
| docker builder prune -a -f | |
| - name: Free up disk space | |
| run: | | |
| sudo apt-get clean | |
| sudo rm -rf /usr/local/lib/android | |
| sudo rm -rf /usr/share/dotnet | |
| sudo rm -rf /usr/share/swift | |
| - name: Build docker images | |
| run: | | |
| cd test/localenv/ | |
| mage build:all | |
| mage cluster:up | |
| - name: Go work init | |
| run: | | |
| mv go.work.bk go.work || true | |
| - name: Run scenarios | |
| run: | | |
| SCERN="${{ matrix.scenario }}" | |
| if [[ "$SCERN" == 04.workflow-* ]]; then | |
| FLAG="${SCERN#*-}" | |
| export REPO_PATH="${{ github.workspace }}" | |
| echo "REPO_PATH=$REPO_PATH" | |
| cd test/integration/scenarios/04.workflow/ && mage test "$FLAG" | |
| else | |
| cd "test/integration/scenarios/$SCERN/" && mage test | |
| fi | |
| - name: Collect and upload symphony logs | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: symphony-logs-${{ matrix.scenario }} | |
| path: | | |
| /tmp/symphony-integration-test-logs/**/*.log | |
| continue-on-error: true | |
| if: always() |