Compare commits

...

3 commits

Author SHA1 Message Date
aed4f3bf8c
Merge 9e9b55aa77 into 23f5f96220 2024-12-02 11:56:53 +01:00
Alexis Métaireau
23f5f96220
build: Publish the built artifacts
- Fedora `.rpm` files
- Windows `.msi`
- macOS `.app`

Are now published as part of the CI pipelines.
2024-12-02 11:35:54 +01:00
Alexis Métaireau
9e9b55aa77
CI: check that our Github Actions are able to run on ubuntu-24 2024-11-27 10:48:27 +01:00
7 changed files with 64 additions and 18 deletions

View file

@ -29,7 +29,7 @@ env:
jobs:
build-dev-environment:
name: "Build dev-env (${{ matrix.distro }}-${{ matrix.version }})"
runs-on: ubuntu-latest
runs-on: ubuntu-24
strategy:
matrix:
include:

View file

@ -1,10 +1,14 @@
name: Check branch conformity
on:
pull_request:
push:
branches:
- main
- "test/**"
jobs:
prevent-fixup-commits:
runs-on: ubuntu-latest
runs-on: ubuntu-24
env:
target: debian-bookworm
distro: debian

View file

@ -10,11 +10,15 @@ on:
schedule:
- cron: '0 0 * * *' # Run every day at 00:00 UTC.
workflow_dispatch:
push:
branches:
- main
- "test/**"
jobs:
install-from-apt-repo:
name: "Install Dangerzone on ${{ matrix.distro}} ${{ matrix.version }}"
runs-on: ubuntu-latest
runs-on: ubuntu-24
container: ${{ matrix.distro }}:${{ matrix.version }}
strategy:
matrix:
@ -70,7 +74,7 @@ jobs:
install-from-yum-repo:
name: "Install Dangerzone on ${{ matrix.distro}} ${{ matrix.version }}"
runs-on: ubuntu-latest
runs-on: ubuntu-24
container: ${{ matrix.distro }}:${{ matrix.version }}
strategy:
matrix:

View file

@ -27,7 +27,7 @@ concurrency:
jobs:
run-lint:
runs-on: ubuntu-latest
runs-on: ubuntu-24
container:
image: debian:bookworm
steps:
@ -68,9 +68,15 @@ jobs:
sudo apt-get install -y python3-poetry
python3 ./install/common/build-image.py
- name: Upload container image
uses: actions/upload-artifact@v4
with:
name: container.tar.gz
path: share/container.tar.gz
download-tessdata:
name: Download and cache Tesseract data
runs-on: ubuntu-latest
runs-on: ubuntu-24
steps:
- uses: actions/checkout@v4
- name: Cache Tessdata
@ -120,6 +126,13 @@ jobs:
- name: Build the MSI installer
# NOTE: This also builds the .exe internally.
run: poetry run .\install\windows\build-app.bat
- name: Upload MSI installer
uses: actions/upload-artifact@v4
with:
name: Dangerzone.msi
path: "dist/Dangerzone.msi"
if-no-files-found: error
compression-level: 0
macOS:
name: "macOS (${{ matrix.arch }})"
@ -151,12 +164,20 @@ jobs:
- run: poetry install
- name: Run CLI tests
run: poetry run make test
- name: Build macOS app
run: poetry run python ./install/macos/build-app.py
- name: Upload macOS app
uses: actions/upload-artifact@v4
with:
name: Dangerzone-${{ matrix.arch }}.app
path: "dist/Dangerzone.app"
if-no-files-found: error
compression-level: 0
build-deb:
needs:
- build-container-image
name: "build-deb (${{ matrix.distro }} ${{ matrix.version }})"
runs-on: ubuntu-latest
runs-on: ubuntu-24
strategy:
matrix:
include:
@ -216,14 +237,14 @@ jobs:
if: matrix.distro == 'debian' && matrix.version == 'bookworm'
uses: actions/upload-artifact@v4
with:
name: dangerzone-${{ matrix.distro }}-${{ matrix.version }}.deb
name: dangerzone.deb
path: "deb_dist/dangerzone_*_*.deb"
if-no-files-found: error
compression-level: 0
install-deb:
name: "install-deb (${{ matrix.distro }} ${{ matrix.version }})"
runs-on: ubuntu-latest
runs-on: ubuntu-24
needs:
- build-deb
strategy:
@ -255,7 +276,7 @@ jobs:
- name: Download Dangerzone .deb
uses: actions/download-artifact@v4
with:
name: dangerzone-debian-bookworm.deb
name: dangerzone.deb
path: "deb_dist/"
- name: Build end-user environment
@ -278,7 +299,7 @@ jobs:
build-install-rpm:
name: "build-install-rpm (${{ matrix.distro }} ${{matrix.version}})"
runs-on: ubuntu-latest
runs-on: ubuntu-24
needs:
- build-container-image
strategy:
@ -318,6 +339,14 @@ jobs:
./dev_scripts/env.py --distro ${{ matrix.distro }} --version ${{ matrix.version }} \
run --dev --no-gui ./dangerzone/install/linux/build-rpm.py
- name: Upload Dangerzone .rpm
uses: actions/upload-artifact@v4
with:
name: dangerzone-${{ matrix.distro }}-${{ matrix.version }}.rpm
path: "dist/dangerzone-*.x86_64.rpm"
if-no-files-found: error
compression-level: 0
# Reclaim some space in this step, now that the dev environment is no
# longer necessary. Previously, we encountered out-of-space issues while
# running this CI job.
@ -342,7 +371,7 @@ jobs:
run-tests:
name: "run tests (${{ matrix.distro }} ${{ matrix.version }})"
runs-on: ubuntu-latest
runs-on: ubuntu-24
needs:
- build-container-image
- download-tessdata

View file

@ -2,10 +2,14 @@ name: Close inactive issues
on:
schedule:
- cron: "30 1 * * *"
push:
branches:
- main
- "test/**"
jobs:
close-issues:
runs-on: ubuntu-latest
runs-on: ubuntu-24
permissions:
issues: write
steps:

View file

@ -3,6 +3,7 @@ on:
push:
branches:
- main
- "test/**"
pull_request:
schedule:
- cron: '0 0 * * *' # Run every day at 00:00 UTC.
@ -10,7 +11,7 @@ on:
jobs:
security-scan-container:
runs-on: ubuntu-latest
runs-on: ubuntu-24
steps:
- name: Checkout
uses: actions/checkout@v4
@ -44,7 +45,7 @@ jobs:
severity-cutoff: critical
security-scan-app:
runs-on: ubuntu-latest
runs-on: ubuntu-24
steps:
- name: Checkout
uses: actions/checkout@v4

View file

@ -1,5 +1,9 @@
name: Scan released app and container
on:
push:
branches:
- main
- "test/**"
schedule:
- cron: '0 0 * * *' # Run every day at 00:00 UTC.
workflow_dispatch:
@ -9,7 +13,7 @@ jobs:
strategy:
matrix:
include:
- runs-on: ubuntu-latest
- runs-on: ubuntu-24
arch: i686
# Do not scan Silicon mac for now to avoid masking release scan results for other plaforms.
# - runs-on: macos-latest
@ -50,7 +54,7 @@ jobs:
severity-cutoff: critical
security-scan-app:
runs-on: ubuntu-latest
runs-on: ubuntu-24
steps:
- name: Checkout
uses: actions/checkout@v4