@@ -11,73 +11,17 @@ inputs:
11
11
outputs :
12
12
matrix-include :
13
13
description : ' JSON array of locales to deploy with their config'
14
- value : ${{ steps.generate-matrix .outputs.include }}
14
+ value : ${{ steps.check-locales .outputs.matrix- include }}
15
15
has-changes :
16
16
description : ' Whether any enabled locales have changes'
17
- value : ${{ steps.generate-matrix .outputs.has-changes }}
17
+ value : ${{ steps.check-locales .outputs.has-changes }}
18
18
19
19
runs :
20
20
using : ' composite'
21
21
steps :
22
- - name : Generate dynamic files config (for auto/docs-pr triggers)
23
- if : inputs.trigger-type == 'auto' || inputs.trigger-type == 'docs-pr'
24
- id : generate-files-config
22
+ - name : Check locale changes and generate matrix
23
+ id : check-locales
25
24
shell : bash
26
25
run : |
27
- # Use the dedicated script to generate files config
28
- files_yaml=$(.github/scripts/generate-files-config.sh)
29
-
30
- echo "Generated files_yaml:"
31
- echo "$files_yaml"
32
-
33
- # Save to output for next step
34
- {
35
- echo "files_yaml<<EOF"
36
- echo "$files_yaml"
37
- echo "EOF"
38
- } >> $GITHUB_OUTPUT
39
-
40
- - name : Get changed files (for auto/docs-pr triggers)
41
- if : inputs.trigger-type == 'auto' || inputs.trigger-type == 'docs-pr'
42
- id : changes
43
- uses : tj-actions/changed-files@v41
44
- with :
45
- files_yaml : ${{ steps.generate-files-config.outputs.files_yaml }}
46
-
47
- - name : Generate deployment matrix
48
- id : generate-matrix
49
- shell : bash
50
- run : |
51
- # Prepare arguments for the matrix generation script
52
- trigger_type="${{ inputs.trigger-type }}"
53
- manual_locales="${{ inputs.manual-locales }}"
54
-
55
- if [ "$trigger_type" == "manual" ]; then
56
- # For manual trigger, we don't need changes JSON
57
- output=$(.github/scripts/generate-locale-matrix.sh "$trigger_type" "$manual_locales")
58
- else
59
- # For auto/docs-pr triggers, create a minimal JSON with only the boolean change indicators
60
- changes_json=$(cat << 'EOF'
61
- {
62
- "core_any_changed": "${{ steps.changes.outputs.core_any_changed }}",
63
- "ar_any_changed": "${{ steps.changes.outputs.ar_any_changed }}",
64
- "de_any_changed": "${{ steps.changes.outputs.de_any_changed }}",
65
- "en_any_changed": "${{ steps.changes.outputs.en_any_changed }}",
66
- "es_any_changed": "${{ steps.changes.outputs.es_any_changed }}",
67
- "fr_any_changed": "${{ steps.changes.outputs.fr_any_changed }}",
68
- "ja_any_changed": "${{ steps.changes.outputs.ja_any_changed }}",
69
- "ru_any_changed": "${{ steps.changes.outputs.ru_any_changed }}",
70
- "zh-hans_any_changed": "${{ steps.changes.outputs.zh-hans_any_changed }}",
71
- "zh-hant_any_changed": "${{ steps.changes.outputs.zh-hant_any_changed }}"
72
- }
73
- EOF
74
- )
75
-
76
- temp_file=$(mktemp)
77
- echo "$changes_json" > "$temp_file"
78
- output=$(.github/scripts/generate-locale-matrix.sh "$trigger_type" "" "$temp_file")
79
- rm -f "$temp_file"
80
- fi
81
-
82
- # Parse the output (the script outputs two lines: include= and has-changes=)
83
- echo "$output" >> $GITHUB_OUTPUT
26
+ # Use the unified Node.js script to handle everything
27
+ node .github/scripts/check-locale-changes.js "${{ inputs.trigger-type }}" "${{ inputs.manual-locales }}" "true"
0 commit comments