Skip to content

Commit b59543c

Browse files
committed
Fix workflow
1 parent 1560e01 commit b59543c

File tree

1 file changed

+46
-17
lines changed

1 file changed

+46
-17
lines changed

.github/workflows/Update.Unturned.Redist.yaml

Lines changed: 46 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
name: "Update.Unturned.Redist"
22

33
on:
4-
# schedule:
5-
# - cron: "*/15 * * * *"
4+
schedule:
5+
- cron: "*/15 * * * *" # Run every 15 minutes
66
workflow_dispatch:
77
inputs:
88
variant:
@@ -27,31 +27,61 @@ concurrency:
2727
cancel-in-progress: false
2828

2929
jobs:
30+
determine-variants:
31+
name: "Determine Variants to Run"
32+
runs-on: ubuntu-latest
33+
outputs:
34+
variants: ${{ steps.set_variants.outputs.variants }}
35+
steps:
36+
- name: Set variants
37+
id: set_variants
38+
run: |
39+
if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then
40+
# For dispatch, only run the selected variant
41+
variant="${{ github.event.inputs.variant }}"
42+
echo "variants=[\"$variant\"]" >> $GITHUB_OUTPUT
43+
else
44+
# For scheduled runs, use all variants in desired order
45+
all_variants=("client" "server" "server-preview" "client-preview" "server-preview-old" "client-preview-old")
46+
variants_json=$(printf '%s\n' "${all_variants[@]}" | jq -R . | jq -s -c .)
47+
echo "variants=$variants_json" >> $GITHUB_OUTPUT
48+
fi
49+
3050
update_redist:
31-
name: "Update ${{ matrix.variant }}"
51+
name: "Update Redist"
3252
runs-on: ubuntu-latest
53+
needs: determine-variants
3354
strategy:
3455
matrix:
35-
variant:
36-
- client
37-
- server
38-
- server-preview
39-
- client-preview
40-
- server-preview-old
41-
- client-preview-old
42-
# Run all variants in parallel without failing entire workflow
56+
variant: ${{ fromJson(needs.determine-variants.outputs.variants) }}
57+
# Run sequentially, one variant at a time
58+
max-parallel: 1
4359
fail-fast: false
44-
45-
env:
46-
APP_ID: ${{ (matrix.variant == 'client' || matrix.variant == 'client-preview' || matrix.variant == 'client-preview-old') && '304930' || '1110390' }}
47-
REDIST_DIR: ${{ matrix.variant == 'client-preview' && 'redist/redist-client' || matrix.variant == 'server-preview' && 'redist/redist-server' || matrix.variant == 'client-preview-old' && 'redist/redist-client-preview-old' || matrix.variant == 'server-preview-old' && 'redist/redist-server-preview-old' || matrix.variant == 'client' && 'redist/redist-client' || matrix.variant == 'server' && 'redist/redist-server' || 'redist/redist-unknown' }}
4860

4961
steps:
62+
- name: Determine APP_ID and REDIST_DIR
63+
id: vars
64+
run: |
65+
if [[ "${{ matrix.variant }}" == client || "${{ matrix.variant }}" == client-preview || "${{ matrix.variant }}" == client-preview-old ]]; then
66+
echo "APP_ID=304930" >> $GITHUB_ENV
67+
else
68+
echo "APP_ID=1110390" >> $GITHUB_ENV
69+
fi
70+
71+
case "${{ matrix.variant }}" in
72+
client-preview) echo "REDIST_DIR=redist/redist-client" >> $GITHUB_ENV ;;
73+
server-preview) echo "REDIST_DIR=redist/redist-server" >> $GITHUB_ENV ;;
74+
client-preview-old) echo "REDIST_DIR=redist/redist-client-preview-old" >> $GITHUB_ENV ;;
75+
server-preview-old) echo "REDIST_DIR=redist/redist-server-preview-old" >> $GITHUB_ENV ;;
76+
client) echo "REDIST_DIR=redist/redist-client" >> $GITHUB_ENV ;;
77+
server) echo "REDIST_DIR=redist/redist-server" >> $GITHUB_ENV ;;
78+
*) echo "REDIST_DIR=redist/redist-unknown" >> $GITHUB_ENV ;;
79+
esac
80+
5081
- name: Checkout repository
5182
uses: actions/checkout@v4
5283
with:
5384
ref: master
54-
# Fetch entire history for proper version comparison
5585
fetch-depth: 0
5686

5787
- name: Download update tool
@@ -101,7 +131,6 @@ jobs:
101131
git config --global user.email "[email protected]"
102132
git config --global user.name "sunnamed434"
103133
104-
# Check for actual changes before committing
105134
if git diff --quiet; then
106135
echo "No changes detected for ${{ matrix.variant }}"
107136
else

0 commit comments

Comments
 (0)