Skip to content

feat(dgw): add Linux installation QA test workflow#1711

Closed
Copilot wants to merge 5 commits intomasterfrom
copilot/add-linux-installation-qa-tests
Closed

feat(dgw): add Linux installation QA test workflow#1711
Copilot wants to merge 5 commits intomasterfrom
copilot/add-linux-installation-qa-tests

Conversation

Copy link
Contributor

Copilot AI commented Mar 16, 2026

Adds a reusable workflow that smoke-tests .deb and .rpm packages from CI in Docker containers on GitHub-hosted runners, catching packaging regressions before release.

Workflow (.github/workflows/linux-install-test.yml)

  • Triggers: workflow_call, workflow_dispatch (optional run-id), weekly schedule
  • Artifact source: Consumes merged devolutions-gateway artifact from ci.yml via gh run download
  • Run ID resolution: explicit input → current run (for chaining) → latest successful CI on default branch (for schedule)
  • Matrix: DEB lane (Ubuntu 22.04) + RPM lane (Rocky Linux 9), fail-fast: false
  • Permissions: contents: read, actions: read

Test scripts (.github/scripts/{deb,rpm}-install-test.sh)

Mandatory checks (must pass):

  • Package installs, is registered in package DB with correct version
  • /usr/bin/devolutions-gateway exists, is executable, responds to --help
  • /usr/lib/devolutions-gateway/libxmf.so, /usr/share/devolutions-gateway/webapp/, /etc/devolutions-gateway/ all present
  • --config-init-only generates gateway.json
  • systemd unit file present (DEB bundles it via dh_installsystemd; RPM creates it via service register)

Best-effort (informational only):

  • systemd service startup — unreliable in Docker containers without init system

Key tradeoffs

Decision Why
Ubuntu 22.04, not 18.04 Package depends on libc6 >= 2.31; 18.04 ships glibc 2.27
Rocky Linux 9 Free RHEL 9 rebuild; exact RHEL matching unnecessary
x86_64 only GitHub-hosted runners are x86_64; ARM64 would need QEMU
RPM unit file check is a warning service register may require running systemd

📱 Kick off Copilot coding agent tasks wherever you are with GitHub Mobile, available on iOS and Android.

Copilot AI and others added 2 commits March 16, 2026 15:30
Add a reusable workflow (.github/workflows/linux-install-test.yml) that
smoke-tests .deb and .rpm packages in Docker containers on GitHub-hosted
runners. Catches packaging regressions: missing files, broken installs,
service registration issues, and configuration failures.

- DEB lane: Ubuntu 22.04 (libc6 >= 2.31 rules out 18.04)
- RPM lane: Rocky Linux 9 (RHEL 9-compatible)
- Triggers: workflow_call, workflow_dispatch, weekly schedule
- Consumes merged devolutions-gateway artifact from ci.yml
- Mandatory smoke tests + best-effort systemd service tests

Co-authored-by: CBenoit <3809077+CBenoit@users.noreply.github.com>
Co-authored-by: CBenoit <3809077+CBenoit@users.noreply.github.com>
Copilot AI changed the title [WIP] Add installation QA tests for Devolutions Gateway packages feat(dgw): add Linux installation QA test workflow Mar 16, 2026
@CBenoit
Copy link
Member

Superseded by #1715

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants