Skip to content

Matching logic for pinned workflows #13171

Matching logic for pinned workflows

Matching logic for pinned workflows #13171

name: Features Integration
on: # rebuild any PRs and main branch changes
pull_request:
push:
branches:
- main
permissions: read-all
concurrency: # Auto-cancel existing runs in the PR when a new commit is pushed
group: ${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
build-docker-image:
uses: temporalio/docker-builds/.github/workflows/docker-build-only.yml@main
with:
temporal-server-repo-path: ${{github.event.pull_request.head.repo.full_name}}
temporal-server-repo-ref: ${{github.event.pull_request.head.ref}}
feature-tests-ts:
needs: build-docker-image
uses: temporalio/features/.github/workflows/typescript.yaml@main
with:
# This field is not actually used by these workflow if docker-image-artifact-name
# is set, but it's marked as required, so supply some string.
version: __latest_features_docker_image__
version-is-repo-ref: false
docker-image-artifact-name: temporal-server-docker
feature-tests-go:
needs: build-docker-image
uses: temporalio/features/.github/workflows/go.yaml@main
with:
version: __latest_features_docker_image__
version-is-repo-ref: false
docker-image-artifact-name: temporal-server-docker
feature-tests-python:
needs: build-docker-image
uses: temporalio/features/.github/workflows/python.yaml@main
with:
version: __latest_features_docker_image__
version-is-repo-ref: false
docker-image-artifact-name: temporal-server-docker
feature-tests-java:
needs: build-docker-image
uses: temporalio/features/.github/workflows/java.yaml@main
with:
version: __latest_features_docker_image__
version-is-repo-ref: false
docker-image-artifact-name: temporal-server-docker
feature-tests-dotnet:
needs: build-docker-image
uses: temporalio/features/.github/workflows/dotnet.yaml@main
with:
version: __latest_features_docker_image__
version-is-repo-ref: false
docker-image-artifact-name: temporal-server-docker
feature-tests-status:
name: Tests Status
needs:
- feature-tests-ts
- feature-tests-go
- feature-tests-python
- feature-tests-java
- feature-tests-dotnet
runs-on: ubuntu-latest
if: always()
env:
RESULTS: ${{ toJSON(needs.*.result) }}
steps:
- name: Check results
run: |
if [[ -n $(echo "$RESULTS" | jq '.[] | select (. != "success")') ]]; then
exit 1
fi