jack-ullery / AppAnvil

Graphical user interface for the AppArmor security module (in-progress)
GNU General Public License v3.0
14 stars 12 forks source link

Cross-distribution testing with GitHub Actions #26

Closed jack-ullery closed 1 year ago

jack-ullery commented 2 years ago

Is your feature request related to a problem? Please describe. The workflows for GitHub actions only build and test our code on Ubuntu 20.04 LTS. We would like to test the code across a variety of distributions that include AppArmor.

Describe the solution you'd like It would be nice if we could specify other Linux distributions directly in the workflow. However according to this documentation, GitHub only provides flavors of Ubuntu. We could get around this by installing docker in the workflow, and building AppAnvil inside a container.

We may also be able to save the state of a docker container and reuse it across workflows.

Describe alternatives you've considered We could also use tools like LXD or systemd-nspawn, but they are less popular and do not seem to provide any extra benefit in this case.

Additional context We will want to develop integration tests to better verify when builds are successful.

jack-ullery commented 1 year ago

Since opening this issue, I created a project using the Open Build Service. This builds, tests, and packages the project on a few distributions.

Work is needed to be done to trigger that build remotely from GitHub when releases are created.