Skip to content

Commit 866df23

Browse files
committed
[build] create dynamic language matrix for documentation workflow
1 parent be25555 commit 866df23

File tree

1 file changed

+14
-4
lines changed

1 file changed

+14
-4
lines changed

.github/workflows/update-documentation.yml

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,24 @@ env:
3737
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
3838

3939
jobs:
40+
determine-languages:
41+
runs-on: ubuntu-latest
42+
outputs:
43+
matrix: ${{ steps.set-matrix.outputs.matrix }}
44+
steps:
45+
- id: set-matrix
46+
run: |
47+
if [ "${{ inputs.language }}" == "all" ]; then
48+
echo 'matrix={"language":["java","rb","py","dotnet","node"]}' >> $GITHUB_OUTPUT
49+
else
50+
echo 'matrix={"language":["${{ inputs.language }}"]}' >> $GITHUB_OUTPUT
51+
fi
4052
build-docs:
53+
needs: determine-languages
4154
runs-on: ubuntu-latest
4255
strategy:
43-
matrix:
44-
language: [java, rb, py, dotnet, node]
56+
matrix: ${{ fromJson(needs.determine-languages.outputs.matrix) }}
4557
fail-fast: false
46-
# Only run if the language is selected or "all" was chosen
47-
if: ${{ inputs.language == 'all' || inputs.language == matrix.language }}
4858
steps:
4959
- name: Checkout repository
5060
uses: actions/checkout@v4

0 commit comments

Comments
 (0)