Skip to content

Commit a9b403e

Browse files
ci(flatpak): retry flatpak user install (#149)
1 parent 13f107f commit a9b403e

1 file changed

Lines changed: 28 additions & 10 deletions

File tree

.github/workflows/ci-flatpak.yml

Lines changed: 28 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -59,20 +59,38 @@ jobs:
5959
6060
- name: Setup Flatpak dependencies
6161
run: |
62+
flatpak_user_install() {
63+
local attempt
64+
local max_attempts=5
65+
local wait_seconds
66+
67+
for ((attempt = 1; attempt <= max_attempts; attempt++)); do
68+
if flatpak --user install -y --or-update flathub "$@"; then
69+
return 0
70+
fi
71+
72+
if [ "${attempt}" -eq "${max_attempts}" ]; then
73+
return 1
74+
fi
75+
76+
wait_seconds=$((attempt * 15))
77+
echo "Flatpak install failed; retrying in ${wait_seconds}s (${attempt}/${max_attempts})"
78+
sleep "${wait_seconds}"
79+
done
80+
}
81+
6282
sudo apt-get update -y
6383
sudo apt-get install -y flatpak
6484
65-
sudo su "$(whoami)" -c "flatpak --user remote-add --if-not-exists flathub \
85+
flatpak --user remote-add --if-not-exists flathub \
6686
https://flathub.org/repo/flathub.flatpakrepo
67-
"
68-
69-
sudo su "$(whoami)" -c "flatpak --user install -y flathub \
70-
org.flatpak.Builder \
71-
org.freedesktop.Platform/${MATRIX_ARCH}/${FREEDESKTOP_SDK_VERSION} \
72-
org.freedesktop.Sdk/${MATRIX_ARCH}/${FREEDESKTOP_SDK_VERSION} \
73-
org.freedesktop.Sdk.Extension.node${NODE_VERSION}/${MATRIX_ARCH}/${FREEDESKTOP_SDK_VERSION} \
74-
org.freedesktop.Sdk.Extension.rust-stable/${MATRIX_ARCH}/${FREEDESKTOP_SDK_VERSION} \
75-
"
87+
88+
flatpak_user_install \
89+
"org.flatpak.Builder" \
90+
"org.freedesktop.Platform/${MATRIX_ARCH}/${FREEDESKTOP_SDK_VERSION}" \
91+
"org.freedesktop.Sdk/${MATRIX_ARCH}/${FREEDESKTOP_SDK_VERSION}" \
92+
"org.freedesktop.Sdk.Extension.node${NODE_VERSION}/${MATRIX_ARCH}/${FREEDESKTOP_SDK_VERSION}" \
93+
"org.freedesktop.Sdk.Extension.rust-stable/${MATRIX_ARCH}/${FREEDESKTOP_SDK_VERSION}"
7694
7795
flatpak run org.flatpak.Builder --version
7896

0 commit comments

Comments
 (0)