time #146
Workflow file for this run
This file contains 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: Test All Examples | |
on: | |
pull_request: | |
workflow_dispatch: | |
jobs: | |
find-out-changes: | |
runs-on: ubuntu-latest | |
outputs: | |
changed_directories: ${{ steps.set-output.outputs.changed_directories }} # The `dirs` doesn't exist in the outputs of changed-files@v35 action. | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Get changed files | |
id: changed-files | |
uses: tj-actions/changed-files@v45.0.3 | |
with: | |
dir_names: true | |
dir_names_max_depth: 1 # This is optional. If not provided, full subdirectories' paths will be provided. Use it if you need to trim the output. See docs for details: https://github.com/tj-actions/changed-files/tree/main#inputs. | |
dir_names_exclude_current_dir: true | |
exclude_submodules: true | |
files_ignore: | | |
*.md | |
.github/**/* | |
json: true | |
quotepath: false | |
- name: 'Set output in the matrix format' | |
id: set-output | |
run: echo "changed_directories={\"dir\":${{ steps.changed-files.outputs.all_changed_files }}}" >> "$GITHUB_OUTPUT" | |
testing: | |
if: ${{ needs.find-out-changes.outputs.changed_directories != '' }} # Without it, the strategy parser will fail if the changed_directories is empty. | |
strategy: | |
matrix: ${{fromJson(needs.find-out-changes.outputs.changed_directories)}} | |
fail-fast: false | |
needs: | |
- find-out-changes | |
uses: ./.github/workflows/reusable_test_run.yaml | |
with: | |
example-dir: ${{ matrix.dir }} | |
# steps: | |
# - uses: actions/checkout@v4 | |
# - if: ${{ hashFiles(format('{0}/setup.sh', matrix.dir)) != '' }} | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: ${{ matrix.dir }} | |
# amqp-reflect: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: amqp.reflect | |
# asyncapi-http-kafka-proxy: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: asyncapi.http.kafka.proxy | |
# asyncapi-mqtt-kafka-proxy: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: asyncapi.mqtt.kafka.proxy | |
# asyncapi-mqtt-proxy: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: asyncapi.mqtt.proxy | |
# asyncapi-sse-kafka-proxy: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: asyncapi.sse.kafka.proxy | |
# asyncapi-sse-proxy: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: asyncapi.sse.proxy | |
# grpc-echo: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: grpc.echo | |
# grpc-kafka-echo: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: grpc.kafka.echo | |
# grpc-kafka-fanout: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: grpc.kafka.fanout | |
# grpc-kafka-proxy: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: grpc.kafka.proxy | |
# grpc-proxy: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: grpc.proxy | |
# http-filesystem: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: http.filesystem | |
# http-json-validate: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: http.json.validate | |
# http-jwt: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: http.jwt | |
# http-kafka-async: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: http.kafka.async | |
# http-kafka-avro-json: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: http.kafka.avro.json | |
# http-kafka-cache: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: http.kafka.cache | |
# http-kafka-crud: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: http.kafka.crud | |
# http-kafka-oneway: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: http.kafka.oneway | |
# http-kafka-proto-json: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: http.kafka.proto.json | |
# http-kafka-proto-oneway: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: http.kafka.proto.oneway | |
# http-kafka-sync: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: http.kafka.sync | |
# http-proxy: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: http.proxy | |
# mqtt-jwt: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: mqtt.jwt | |
# mqtt-kafka-broker: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: mqtt.kafka.broker | |
# openapi-asyncapi-kafka-proxy: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: openapi.asyncapi.kafka.proxy | |
# openapi-proxy: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: openapi.proxy | |
# sse-jwt: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: sse.jwt | |
# sse-kafka-fanout: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: sse.kafka.fanout | |
# tcp-echo: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: tcp.echo | |
# tcp-reflect: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: tcp.reflect | |
# tls-echo: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: tls.echo | |
# tls-reflect: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: tls.reflect | |
# ws-echo: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: ws.echo | |
# ws-reflect: | |
# uses: ./.github/workflows/reusable_test_run.yaml | |
# with: | |
# example-dir: ws.reflect |