Skip to content

Commit 1f17e2e

Browse files
committed
ci: Add workflow to build changed manifests
1 parent b63062b commit 1f17e2e

File tree

1 file changed

+32
-1
lines changed

1 file changed

+32
-1
lines changed

.github/workflows/ci.yml

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
run: |
2121
sudo add-apt-repository ppa:flatpak/stable
2222
sudo apt-get update
23-
sudo apt-get install -y flatpak
23+
sudo apt-get install -y flatpak dbus-daemon
2424
flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
2525
flatpak install flathub -y org.flatpak.Builder
2626
@@ -42,3 +42,34 @@ jobs:
4242
echo "Error: YML/YAML file found: $files"
4343
exit 1
4444
fi
45+
46+
- name: Build changed manifests
47+
if: github.event_name == 'pull_request'
48+
run: |
49+
set -e
50+
FILES=$(gh pr view "${{ github.event.number }}" --json files --jq '.files[].path')
51+
52+
for f in $FILES; do
53+
if [[ "$f" == *.json && -f "$f" ]]; then
54+
echo "Building manifest for $f"
55+
56+
RUNTIME_VERSION=$(flatpak remote-ls --columns=ref flathub \
57+
| grep "runtime/org.freedesktop.Platform/x86_64/" \
58+
| sed 's|.*/||' \
59+
| sort -V \
60+
| tail -n1)
61+
62+
cat > manifest.yml <<EOF
63+
id: org.example.test
64+
runtime: org.freedesktop.Platform
65+
runtime-version: '${RUNTIME_VERSION}'
66+
sdk: org.freedesktop.Sdk
67+
modules:
68+
- "$f"
69+
EOF
70+
71+
cat org.example.test.yml
72+
dbus-run-session flatpak run org.flatpak.Builder --verbose --user --force-clean \
73+
--install-deps-from=flathub builddir org.example.test.yml
74+
fi
75+
done

0 commit comments

Comments
 (0)