Skip to content

Add CI testing for Ansible playbook with Docker limitations documented#160

Open
Copilot wants to merge 6 commits intomainfrom
copilot/add-ci-job-for-ansible
Open

Add CI testing for Ansible playbook with Docker limitations documented#160
Copilot wants to merge 6 commits intomainfrom
copilot/add-ci-job-for-ansible

Conversation

Copy link
Contributor

Copilot AI commented Feb 7, 2026

Implements automated testing of the Ansible playbook in a clean Arch Linux Docker container, running on PRs and weekly. Documents Docker environment constraints that limit test coverage to ~40-50% of playbook functionality.

Changes

.github/workflows/test-playbook.yml

  • Tests on archlinux:latest container with explicit contents: read permissions
  • Runs on PR (main/master), weekly schedule (Mon 3AM UTC), and manual trigger
  • Validates syntax for all playbooks, executes Docker-safe tasks only
  • Generates test config inline (avoiding gitignore conflict with config/*.yaml)

playbooks/ci-test.yml

  • Minimal test playbook covering: user creation, sudoers config, package installation
  • Uses assertions for verification with explicit error messages
  • Excludes systemd, GRUB, kernel, hardware, and desktop environment runtime tasks

docs/DOCKER-TESTING.md

  • Categorizes testable vs non-testable operations in Docker
  • Testable: pacman/AUR packages (including desktop manager packages), file operations, user/group management
  • Non-testable: systemd services, bootloader, kernel ops, hardware config, desktop environment runtime
  • Clarifies that desktop manager packages can be installed but cannot be run/configured
  • Documents ~40-50% effective test coverage

docs/INSTALLATION.md and docs/TROUBLESHOOTING.md

  • Moved to docs/ folder for better organization

README.md

  • Added CI section with link to Docker testing documentation
  • Updated all documentation links to point to docs/ folder
Original prompt

This section details on the original issue you should resolve

<issue_title>Implement a CI job to test the ansible playbook</issue_title>
<issue_description>We want to create a GitHub Action that tests the Ansible playbook against a clean Arch Linux image. It should run on pull requests and on a schedule to ensure everything remains functional. The task is to define what can and cannot be executed on an Arch Linux Docker image.</issue_description>

Comments on the Issue (you are @copilot in this section)


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot AI and others added 4 commits February 7, 2026 15:53
Co-authored-by: paolomainardi <8747+paolomainardi@users.noreply.github.com>
Co-authored-by: paolomainardi <8747+paolomainardi@users.noreply.github.com>
Co-authored-by: paolomainardi <8747+paolomainardi@users.noreply.github.com>
Co-authored-by: paolomainardi <8747+paolomainardi@users.noreply.github.com>
Copilot AI changed the title [WIP] Add CI job to test Ansible playbook on Arch Linux Add CI testing for Ansible playbook with Docker limitations documented Feb 7, 2026
Copilot AI requested a review from paolomainardi February 7, 2026 15:58
@paolomainardi paolomainardi marked this pull request as ready for review February 7, 2026 16:30
Copy link
Member

@paolomainardi paolomainardi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Co-authored-by: paolomainardi <8747+paolomainardi@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement a CI job to test the ansible playbook

2 participants