Propagate options-only route changes immediately in route-emitter #124
Workflow file for this run
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
| name: unit-integration-tests | |
| on: | |
| pull_request: | |
| types: [opened, synchronize, reopened, labeled] | |
| branches: | |
| - develop | |
| paths: | |
| - 'src/**' | |
| - 'packages/**' | |
| - 'jobs/**' | |
| - 'config/**' | |
| - 'scripts/**' | |
| - '.github/workflows/**' | |
| - '.github/helpers/**' | |
| env: | |
| MAPPING: | | |
| build_nats_server=src/code.cloudfoundry.org/vendor/github.com/nats-io/nats-server/v2 | |
| FLAGS: | | |
| --keep-going | |
| --trace | |
| -r | |
| --fail-on-pending | |
| --randomize-all | |
| --nodes=7 | |
| --race | |
| --timeout 30m | |
| --flake-attempts 2 | |
| RUN_AS: root | |
| VERIFICATIONS: | | |
| verify_go repo/$DIR | |
| verify_gofmt repo/$DIR | |
| verify_govet repo/$DIR | |
| verify_staticcheck repo/$DIR | |
| FUNCTIONS: ci/diego-release/helpers/build-binaries.bash | |
| DB: "" | |
| jobs: | |
| repo-clone: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: diego-release-repo | |
| uses: actions/checkout@v4.3.1 | |
| with: | |
| repository: ${{ github.event.pull_request.head.repo.full_name }} | |
| ref: ${{ github.event.pull_request.head.ref }} | |
| submodules: recursive | |
| path: repo | |
| - name: Check out wg-appruntime code | |
| uses: actions/checkout@v4.3.1 | |
| with: | |
| repository: cloudfoundry/wg-app-platform-runtime-ci | |
| path: ci | |
| - name: zip repo artifacts | |
| run: | | |
| tar -czf repo-artifact.tar.gz repo | |
| tar -czf ci-artifact.tar.gz ci | |
| - name: upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: repo | |
| path: | | |
| repo-artifact.tar.gz | |
| ci-artifact.tar.gz | |
| determine-image-tag: | |
| if: contains(github.event.pull_request.labels.*.name, 'ready-to-run') | |
| runs-on: ubuntu-latest | |
| outputs: | |
| go_version: ${{ steps.get-version.outputs.go_version }} | |
| steps: | |
| - name: checkout ci repo | |
| uses: actions/checkout@v4.3.1 | |
| with: | |
| repository: cloudfoundry/wg-app-platform-runtime-ci | |
| sparse-checkout: go-version.json | |
| sparse-checkout-cone-mode: false | |
| - name: get-version | |
| id: get-version | |
| run: | | |
| version=$(jq -r '.releases["diego"] // .default' go-version.json) | |
| echo "go_version=${version}" >> "$GITHUB_OUTPUT" | |
| template-tests: | |
| runs-on: ubuntu-latest | |
| needs: [repo-clone] | |
| container: cloudfoundry/tas-runtime-build:latest | |
| steps: | |
| - name: Download artifact | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: repo | |
| - run: | | |
| tar -xzvf repo-artifact.tar.gz | |
| tar -xzvf ci-artifact.tar.gz | |
| - name: template-tests | |
| run: | | |
| "${GITHUB_WORKSPACE}"/ci/shared/tasks/run-tests-templates/task.bash | |
| lint-repo: | |
| runs-on: ubuntu-latest | |
| needs: [repo-clone] | |
| container: cloudfoundry/tas-runtime-build:latest | |
| env: | |
| LINTERS: | | |
| sync-package-specs.bash | |
| sync-submodule-config.bash | |
| match-golang-os-package-versions.bash | |
| check-envoy-versions.bash | |
| check-for-windows-drift.bash | |
| check-proto-files.bash | |
| check-metrics-documentation.bash | |
| check-expiring-certs.bash | |
| steps: | |
| - name: Download artifact | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: repo | |
| - run: | | |
| tar -xzvf repo-artifact.tar.gz | |
| tar -xzvf ci-artifact.tar.gz | |
| - name: lint-repo | |
| run: | | |
| "${GITHUB_WORKSPACE}"/ci/shared/tasks/lint-repo/task.bash | |
| test-repos-withoutdb: | |
| if: contains(github.event.pull_request.labels.*.name, 'ready-to-run') | |
| runs-on: ubuntu-latest | |
| needs: [repo-clone, determine-image-tag] | |
| env: | |
| BUILD_IMAGE: cloudfoundry/tas-runtime-build:${{ needs.determine-image-tag.outputs.go_version }} | |
| steps: | |
| - name: Download artifact | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: repo | |
| - run: | | |
| tar -xzvf repo-artifact.tar.gz | |
| tar -xzvf ci-artifact.tar.gz | |
| - name: pull image | |
| run: docker pull "$BUILD_IMAGE" | |
| - name: build binaries | |
| run: | | |
| repo/.github/helpers/build.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: auction | |
| env: | |
| DIR: src/code.cloudfoundry.org/auction | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: executor | |
| env: | |
| DIR: src/code.cloudfoundry.org/executor | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: diego-ssh | |
| env: | |
| DIR: src/code.cloudfoundry.org/diego-ssh | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: fileserver | |
| env: | |
| DIR: src/code.cloudfoundry.org/fileserver | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: healthcheck | |
| env: | |
| DIR: src/code.cloudfoundry.org/healthcheck | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: buildpackapplifecycle | |
| env: | |
| DIR: src/code.cloudfoundry.org/buildpackapplifecycle | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: cacheddownloader | |
| env: | |
| DIR: src/code.cloudfoundry.org/cacheddownloader | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: dockerapplifecycle | |
| env: | |
| DIR: src/code.cloudfoundry.org/dockerapplifecycle | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: ecrhelper | |
| env: | |
| DIR: src/code.cloudfoundry.org/ecrhelper | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: localdriver | |
| env: | |
| DIR: src/code.cloudfoundry.org/localdriver | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: operationq | |
| env: | |
| DIR: src/code.cloudfoundry.org/operationq | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: volman | |
| env: | |
| DIR: src/code.cloudfoundry.org/volman | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: workpool | |
| env: | |
| DIR: src/code.cloudfoundry.org/workpool | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| test-on-postgres: | |
| if: contains(github.event.pull_request.labels.*.name, 'ready-to-run') | |
| runs-on: ubuntu-latest | |
| needs: [repo-clone, determine-image-tag] | |
| env: | |
| BUILD_IMAGE: cloudfoundry/tas-runtime-postgres:${{ needs.determine-image-tag.outputs.go_version }} | |
| DB_USER: postgres | |
| DB_PASSWORD: "" | |
| steps: | |
| - name: Download artifact | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: repo | |
| - run: | | |
| tar -xzvf repo-artifact.tar.gz | |
| tar -xzvf ci-artifact.tar.gz | |
| - name: pull image | |
| run: docker pull "$BUILD_IMAGE" | |
| - name: build binaries | |
| run: | | |
| repo/.github/helpers/build.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: auctioneer-postgres | |
| env: | |
| DIR: src/code.cloudfoundry.org/auctioneer | |
| DB: postgres | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: rep-postgres | |
| env: | |
| DIR: src/code.cloudfoundry.org/rep | |
| DB: postgres | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: route-emitter-postgres | |
| env: | |
| DIR: src/code.cloudfoundry.org/route-emitter | |
| DB: postgres | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: cfdot-postgres | |
| env: | |
| DIR: src/code.cloudfoundry.org/cfdot | |
| DB: postgres | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| test-on-mysql-8-0: | |
| if: contains(github.event.pull_request.labels.*.name, 'ready-to-run') | |
| runs-on: ubuntu-latest | |
| needs: [repo-clone, determine-image-tag] | |
| env: | |
| BUILD_IMAGE: cloudfoundry/tas-runtime-mysql-8.0:${{ needs.determine-image-tag.outputs.go_version }} | |
| DB_USER: root | |
| DB_PASSWORD: password | |
| steps: | |
| - name: Download artifact | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: repo | |
| - run: | | |
| tar -xzvf repo-artifact.tar.gz | |
| tar -xzvf ci-artifact.tar.gz | |
| - name: pull image | |
| run: docker pull "$BUILD_IMAGE" | |
| - name: build binaries | |
| run: | | |
| repo/.github/helpers/build.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: auctioneer-mysql | |
| env: | |
| DIR: src/code.cloudfoundry.org/auctioneer | |
| DB: mysql | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: rep-mysql | |
| env: | |
| DIR: src/code.cloudfoundry.org/rep | |
| DB: mysql | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: route-emitter-mysql | |
| env: | |
| DIR: src/code.cloudfoundry.org/route-emitter | |
| DB: mysql | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: cfdot-mysql | |
| env: | |
| DIR: src/code.cloudfoundry.org/cfdot | |
| DB: mysql | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| test-on-mysql-8-4: | |
| if: contains(github.event.pull_request.labels.*.name, 'ready-to-run') | |
| runs-on: ubuntu-latest | |
| needs: [repo-clone, determine-image-tag] | |
| env: | |
| BUILD_IMAGE: cloudfoundry/tas-runtime-mysql-8.4:${{ needs.determine-image-tag.outputs.go_version }} | |
| DB_USER: root | |
| DB_PASSWORD: password | |
| steps: | |
| - name: Download artifact | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: repo | |
| - run: | | |
| tar -xzvf repo-artifact.tar.gz | |
| tar -xzvf ci-artifact.tar.gz | |
| - name: pull image | |
| run: docker pull "$BUILD_IMAGE" | |
| - name: build binaries | |
| run: | | |
| repo/.github/helpers/build.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: auctioneer-mysql | |
| env: | |
| DIR: src/code.cloudfoundry.org/auctioneer | |
| DB: mysql | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: rep-mysql | |
| env: | |
| DIR: src/code.cloudfoundry.org/rep | |
| DB: mysql | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: route-emitter-mysql | |
| env: | |
| DIR: src/code.cloudfoundry.org/route-emitter | |
| DB: mysql | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: cfdot-mysql | |
| env: | |
| DIR: src/code.cloudfoundry.org/cfdot | |
| DB: mysql | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| test-on-mysql-9-7: | |
| if: contains(github.event.pull_request.labels.*.name, 'ready-to-run') | |
| runs-on: ubuntu-latest | |
| needs: [repo-clone, determine-image-tag] | |
| env: | |
| BUILD_IMAGE: cloudfoundry/tas-runtime-mysql-9.7:${{ needs.determine-image-tag.outputs.go_version }} | |
| DB_USER: root | |
| DB_PASSWORD: password | |
| steps: | |
| - name: Download artifact | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: repo | |
| - run: | | |
| tar -xzvf repo-artifact.tar.gz | |
| tar -xzvf ci-artifact.tar.gz | |
| - name: pull image | |
| run: docker pull "$BUILD_IMAGE" | |
| - name: build binaries | |
| run: | | |
| repo/.github/helpers/build.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: auctioneer-mysql | |
| env: | |
| DIR: src/code.cloudfoundry.org/auctioneer | |
| DB: mysql | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: rep-mysql | |
| env: | |
| DIR: src/code.cloudfoundry.org/rep | |
| DB: mysql | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: route-emitter-mysql | |
| env: | |
| DIR: src/code.cloudfoundry.org/route-emitter | |
| DB: mysql | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" | |
| - name: cfdot-mysql | |
| env: | |
| DIR: src/code.cloudfoundry.org/cfdot | |
| DB: mysql | |
| run: | | |
| repo/.github/helpers/test.bash ${{ github.workspace }} "$BUILD_IMAGE" |