Skip to content

Commit 167f759

Browse files
committed
dynamic folders
1 parent a94846a commit 167f759

1 file changed

Lines changed: 22 additions & 10 deletions

File tree

.github/workflows/build_all_images.yml

Lines changed: 22 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -11,38 +11,50 @@ name: build_all_images
1111
env:
1212
BRANCH_NAME: '${{ github.event.pull_request.head.ref }}'
1313
jobs:
14+
discover_folders:
15+
runs-on: ubuntu-latest
16+
outputs:
17+
language_folders: ${{ steps.find-folders.outputs.languages }}
18+
project_folders: ${{ steps.find-folders.outputs.projects }}
19+
steps:
20+
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8
21+
22+
- id: find-folders
23+
run: |
24+
language_folders=$(find src/languages -mindepth 1 -maxdepth 1 -type d -printf '%f\n' | jq -R -s -c 'split("\n")[:-1]')
25+
project_folders=$(find src/projects -mindepth 1 -maxdepth 1 -type d -printf '%f\n' | jq -R -s -c 'split("\n")[:-1]')
26+
echo "languages=$language_folders" >> "$GITHUB_OUTPUT"
27+
echo "projects=$project_folders" >> "$GITHUB_OUTPUT"
1428
package_base_docker_image:
1529
uses: ./.github/workflows/build_multi_arch_image.yml
1630
with:
1731
tag_latest: ${{ inputs.tag_latest }}
1832
docker_tag: ${{ inputs.docker_tag }}
1933
container_name: base
2034
base_folder: "."
21-
package_language_docker_image:
35+
package_language_docker_images:
2236
needs:
2337
- package_base_docker_image
38+
- discover_folders
2439
strategy:
2540
fail-fast: false
2641
matrix:
27-
include:
28-
- container_name: node_24_python_3_14
29-
- container_name: node_24_python_3_13
30-
- container_name: node_24_python_3_12
31-
- container_name: python_3_10
42+
container_name: ${{ fromJson(needs.discover_folders.outputs.language_folders) }}
3243
uses: ./.github/workflows/build_multi_arch_image.yml
3344
with:
3445
tag_latest: ${{ inputs.tag_latest }}
3546
docker_tag: ${{ inputs.docker_tag }}
3647
container_name: ${{ matrix.container_name }}
3748
base_folder: "languages"
38-
package_project_docker_image:
49+
package_project_docker_images:
3950
needs:
40-
- package_language_docker_image
51+
- package_language_docker_images
52+
53+
- discover_folders
4154
strategy:
4255
fail-fast: false
4356
matrix:
44-
include:
45-
- container_name: fhir_facade_api
57+
container_name: ${{ fromJson(needs.discover_folders.outputs.project_folders) }}
4658
uses: ./.github/workflows/build_multi_arch_image.yml
4759
with:
4860
tag_latest: ${{ inputs.tag_latest }}

0 commit comments

Comments
 (0)