Repository navigation
69 lines (64 loc) · 2.32 KB
/
Copy pathlinux-packaging.yml
File metadata and controls
69 lines (64 loc) · 2.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
name: Linux packaging check
on:
pull_request:
paths:
- 'app/linux/**'
- 'app/pubspec.yaml'
- 'app/pubspec.lock'
- 'app/integration_test/desktop_package_*.dart'
- 'tools/run_packaged_smoke.py'
- 'tools/check_packaged_reader.*'
- 'tools/install_linux_build_dependencies.sh'
- 'tools/package_linux.sh'
- 'tools/complete_appimage_libraries.py'
- 'tools/extract_appimage.py'
- 'tools/check_linux_packages.sh'
- 'tools/setup_packaging_apparmor.sh'
- 'tools/check_appimage_runtime.sh'
- 'packaging/linux/**'
- 'docs/INSTALL.md'
- '.github/workflows/release.yml'
- '.github/workflows/linux-packaging.yml'
permissions:
contents: read
concurrency:
group: linux-packaging-${{ github.ref }}
cancel-in-progress: true
jobs:
linux:
name: Compile Linux release
runs-on: ubuntu-24.04
defaults:
run:
working-directory: app
steps:
- uses: actions/checkout@v4
- name: Install Linux dependencies
run: bash ../tools/install_linux_build_dependencies.sh
- uses: subosito/flutter-action@v2
with:
flutter-version: '3.41.2'
cache: true
- name: Install locked dependencies
run: flutter pub get --enforce-lockfile
- name: Compile Linux release
run: flutter build linux --release
- name: Package Linux downloads
run: bash ../tools/package_linux.sh v0.0.0+1
- name: Configure isolated AppImage namespace permission
run: bash ../tools/setup_packaging_apparmor.sh
- name: Check Linux packages
run: bash ../tools/check_linux_packages.sh v0.0.0+1
- name: Build instrumented reader package
run: flutter build linux --release --target integration_test/desktop_package_smoke.dart --dart-define=INTEGRATION_TEST_SHOULD_REPORT_RESULTS_TO_NATIVE=false
- name: Package reader test build
run: bash ../tools/package_linux.sh v0.0.0+2
- name: Validate packaged EPUB/PDF and offline storage
run: bash ../tools/check_packaged_reader.sh v0.0.0+2 v0.0.0+1
- name: Save native package validation reports
if: always()
uses: actions/upload-artifact@v4
with:
name: linux-package-validation
path: app/build/package-smoke-results/
if-no-files-found: warn