Skip to content

Commit b1f3d99

Browse files
author
Matteo Settenvini
committed
Add flatpak GH action
Adds CI actions to build Hamster as a flatpak application.
1 parent 82033bf commit b1f3d99

File tree

1 file changed

+39
-0
lines changed

1 file changed

+39
-0
lines changed

.github/workflows/testing.yml

+39
Original file line numberDiff line numberDiff line change
@@ -77,3 +77,42 @@ jobs:
7777
- name: Run flake8
7878
run: |
7979
flake8 --count --show-source --statistics
80+
81+
flatpak:
82+
# This job builds Hamster for flatpak, and runs its tests
83+
# inside the sandbox.
84+
name: Test the flatpak build
85+
runs-on: ubuntu-20.04
86+
steps:
87+
- name: Prepare repo
88+
uses: actions/checkout@v2
89+
- name: Install system packages
90+
# It would be good to cache the GNOME Sdk, as it
91+
# is rather big to download each time.
92+
env:
93+
DEBIAN_FRONTEND: noninteractive
94+
run: |
95+
PACKAGES="flatpak flatpak-builder dbus-x11"
96+
97+
sudo apt-get update
98+
sudo apt-get install -yq ${PACKAGES}
99+
- name: Install GNOME SDK for flatpak
100+
run: |
101+
flatpak remote-add --user --if-not-exists --from flathub https://flathub.org/repo/flathub.flatpakrepo
102+
flatpak install --user -y flathub org.gnome.Platform//3.36 org.gnome.Sdk//3.36
103+
- name: Build application
104+
run: |
105+
flatpak-builder --repo=build/flatpak/repo build/flatpak/tmp org.gnome.Hamster.json
106+
- name: Run tests inside sandbox
107+
run: |
108+
dbus-launch flatpak-builder --run build/flatpak/tmp org.gnome.Hamster.json python3 -m unittest
109+
- name: Export bundle and try to install it
110+
run: |
111+
mkdir -p dist
112+
flatpak build-bundle --runtime-repo=https://flathub.org/repo/flathub.flatpakrepo build/flatpak/repo dist/Hamster.flatpak org.gnome.Hamster
113+
flatpak --user -y install dist/Hamster.flatpak
114+
- name: Upload built artifact
115+
uses: actions/upload-artifact@v2
116+
with:
117+
name: Flatpak application
118+
path: dist/Hamster.flatpak

0 commit comments

Comments
 (0)