Skip to content

Commit f9e57fe

Browse files
committed
Attendre l'activation effective des workflows suivants
1 parent d5c238d commit f9e57fe

4 files changed

Lines changed: 56 additions & 8 deletions

File tree

‎.github/workflows/0-start-exercise.yml‎

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,8 +78,20 @@ jobs:
7878
gh api --method PUT "repos/${GITHUB_REPOSITORY}/actions/workflows/1-create-a-branch.yml/enable"
7979
fi
8080
81-
# Laisse à GitHub quelques secondes pour enregistrer un événement déjà parti.
82-
echo "Attendre les événements déjà en vol..."
81+
for attempt in {1..10}; do
82+
next_state="$(gh api "repos/${GITHUB_REPOSITORY}/actions/workflows/1-create-a-branch.yml" --jq '.state')"
83+
if [ "$next_state" = "active" ]; then
84+
break
85+
fi
86+
sleep 1
87+
done
88+
89+
if [ "$next_state" != "active" ]; then
90+
echo "Le workflow suivant n'est pas devenu actif à temps."
91+
exit 1
92+
fi
93+
94+
# Laisse à GitHub le temps d'enregistrer un événement déjà parti.
8395
sleep 2
8496
8597
if gh api "repos/${GITHUB_REPOSITORY}/branches/my-first-branch" >/dev/null 2>&1; then

‎.github/workflows/1-create-a-branch.yml‎

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,20 @@ jobs:
8888
gh api --method PUT "repos/${GITHUB_REPOSITORY}/actions/workflows/2-commit-a-file.yml/enable"
8989
fi
9090
91-
# Laisse à GitHub quelques secondes pour enregistrer un événement déjà parti.
92-
echo "Attendre les événements déjà en vol..."
91+
for attempt in {1..10}; do
92+
next_state="$(gh api "repos/${GITHUB_REPOSITORY}/actions/workflows/2-commit-a-file.yml" --jq '.state')"
93+
if [ "$next_state" = "active" ]; then
94+
break
95+
fi
96+
sleep 1
97+
done
98+
99+
if [ "$next_state" != "active" ]; then
100+
echo "Le workflow suivant n'est pas devenu actif à temps."
101+
exit 1
102+
fi
103+
104+
# Laisse à GitHub le temps d'enregistrer un événement déjà parti.
93105
sleep 2
94106
95107
if gh api "repos/${GITHUB_REPOSITORY}/contents/PROFILE.md?ref=my-first-branch" --jq '.content' > /tmp/profile.b64 2>/dev/null; then

‎.github/workflows/2-commit-a-file.yml‎

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -158,8 +158,20 @@ jobs:
158158
gh api --method PUT "repos/${GITHUB_REPOSITORY}/actions/workflows/3-open-a-pull-request.yml/enable"
159159
fi
160160
161-
# Laisse à GitHub quelques secondes pour enregistrer un événement déjà parti.
162-
echo "Attendre les événements déjà en vol..."
161+
for attempt in {1..10}; do
162+
next_state="$(gh api "repos/${GITHUB_REPOSITORY}/actions/workflows/3-open-a-pull-request.yml" --jq '.state')"
163+
if [ "$next_state" = "active" ]; then
164+
break
165+
fi
166+
sleep 1
167+
done
168+
169+
if [ "$next_state" != "active" ]; then
170+
echo "Le workflow suivant n'est pas devenu actif à temps."
171+
exit 1
172+
fi
173+
174+
# Laisse à GitHub le temps d'enregistrer un événement déjà parti.
163175
sleep 2
164176
165177
head_sha="$(gh api "repos/${GITHUB_REPOSITORY}/git/ref/heads/my-first-branch" --jq '.object.sha')"

‎.github/workflows/3-open-a-pull-request.yml‎

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -234,8 +234,20 @@ jobs:
234234
gh api --method PUT "repos/${GITHUB_REPOSITORY}/actions/workflows/4-merge-your-pull-request.yml/enable"
235235
fi
236236
237-
# Laisse à GitHub quelques secondes pour enregistrer un événement déjà parti.
238-
echo "Attendre les événements déjà en vol..."
237+
for attempt in {1..10}; do
238+
next_state="$(gh api "repos/${GITHUB_REPOSITORY}/actions/workflows/4-merge-your-pull-request.yml" --jq '.state')"
239+
if [ "$next_state" = "active" ]; then
240+
break
241+
fi
242+
sleep 1
243+
done
244+
245+
if [ "$next_state" != "active" ]; then
246+
echo "Le workflow suivant n'est pas devenu actif à temps."
247+
exit 1
248+
fi
249+
250+
# Laisse à GitHub le temps d'enregistrer un événement déjà parti.
239251
sleep 2
240252
241253
merged="$(gh api "repos/${GITHUB_REPOSITORY}/pulls/$PR_NUMBER" --jq '.merged')"

0 commit comments

Comments
 (0)