From 3bc3c6c12059b9ac203267cd44613b837b93cf88 Mon Sep 17 00:00:00 2001 From: Alex Pyrgiotis Date: Wed, 17 Jan 2024 13:26:53 +0200 Subject: [PATCH] ci: Build and install Dangerzone RPMs Add some Fedora CI jobs that build RPMs, install them in an end-user environment, and make a simple conversion and GUI import check. These are basically smoke tests for Fedora, similar to the ones we have for Debian. --- .github/workflows/ci.yml | 43 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2168099..be71a50 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -163,3 +163,46 @@ jobs: ./dev_scripts/env.py --distro ${{ matrix.distro }} \ --version ${{ matrix.version }} \ run dangerzone --help + + build-install-rpm: + name: "Build and install a Dangerzone RPM on Fedora ${{matrix.version}}" + runs-on: ubuntu-latest + strategy: + matrix: + include: + - version: "38" + - version: "39" + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Build dev environment + run: | + ./dev_scripts/env.py --distro fedora --version ${{ matrix.version }} \ + build-dev + + - name: Build Dangerzone image + run: | + ./dev_scripts/env.py --distro fedora --version ${{ matrix.version }} \ + run --dev --no-gui \ + bash -c 'cd /home/user/dangerzone && python3 ./install/common/build-image.py' + + - name: Build Dangerzone .rpm + run: | + ./dev_scripts/env.py --distro fedora --version ${{ matrix.version }} \ + run --dev --no-gui ./dangerzone/install/linux/build-rpm.py + + - name: Build end-user environment + run: | + ./dev_scripts/env.py --distro fedora --version ${{ matrix.version }} \ + build --download-pyside6 + + - name: Run a test command + run: | + ./dev_scripts/env.py --distro fedora --version ${{ matrix.version }} \ + run dangerzone-cli dangerzone/tests/test_docs/sample-pdf.pdf + + - name: Check that the Dangerzone GUI imports work + run: | + ./dev_scripts/env.py --distro fedora --version ${{ matrix.version }} \ + run dangerzone --help