Overview
Misconfigured AppArmor profiles is one of the most effective ways to break someone's system. This section present the various tests applied to the profiles as well as their current stage of deployment.
Current
-
Build
just complain
Build the profiles for all supported distributions.
- All CI jobs validate the profiles syntax and,
- ensure they can be safely loaded into a kernel.
-
Checks
just check
Checks for common style and security issues:
- Security checks
- Style and maintainability checks
-
Integration Tests
just test-runRun commands to ensure no logs are raised.
-
Distribution Tests
just autopkgtestRun the autopkgtest suite for Ubuntu and Debian.
- Setup autopkgtest for Ubuntu.
- Validate profiles on Ubuntu.
Future
For more complex software suite, more integration tests need to be done. The plan is to run existing integration suite from these very software in an environment with apparmor.d profiles.
-
Systemd
- They use mkosi to generate a VM image to run their own integration tests.
- See https://www.codethink.co.uk/articles/2024/systemd-integration-testing-part-1/
-
Gnome
- They use openQA to run their integration tests.
- See https://gitlab.gnome.org/GNOME/openqa-tests/