-
Notifications
You must be signed in to change notification settings - Fork 0
Add automatic security updates configuration to ConfigureCommand #98
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add automatic security updates configuration to ConfigureCommand #98
Conversation
- Add ConfigureSecurityUpdates variant to ConfigureStep enum - Create ConfigureSecurityUpdatesStep for system security configuration - Create Ansible playbook for unattended-upgrades setup - Integrate security updates step into ConfigureCommand workflow - Configure automatic reboots at 2:00 AM for security updates Co-authored-by: josecelano <[email protected]>
Add 'when: ansible_os_family == "Debian"' conditions to all APT and unattended-upgrades specific tasks to prevent errors on non-Debian systems Co-authored-by: josecelano <[email protected]>
…copy list The E2E config tests were failing because the new Ansible playbook configure-security-updates.yml was not being copied to the build directory. This adds the playbook to the array of static templates in the AnsibleTemplateRenderer::copy_static_templates method and updates the file count from 5 to 6.
This documentation improvement addresses the gap that led to the initial PR failure. Copilot missed the requirement to register static playbooks in the copy_static_templates method. Changes: - docs/contributing/templates.md: Added complete section on adding static Ansible playbooks with step-by-step guide, common mistakes, and checklist - docs/technical/template-system-architecture.md: Enhanced two-phase processing explanation with explicit registration requirements - .github/copilot-instructions.md: Added critical rule #5 about playbook registration to guide AI assistants The new documentation ensures that both human developers and AI assistants understand the static template registration requirement, preventing runtime 'playbook not found' errors.
josecelano
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK 3d8b153
✅ Issue Fixed: Missing Playbook RegistrationThe initial E2E config test failure has been resolved. The problem was that the new Ansible playbook 🔧 Root CauseThe codebase uses a two-phase template system:
The new playbook needed to be added to the ✅ Fixes AppliedCommit 1 -
Commit 2 -
🧪 VerificationAll validation completed successfully:
The PR is now ready for review. GitHub Actions should pass on the next run. |
Implements unattended-upgrades configuration as a new step in the ConfigureCommand workflow, enabling automatic security patching with scheduled 2:00 AM reboots.
Changes
Domain Layer
ConfigureSecurityUpdatesvariant toConfigureStepenum for failure trackingApplication Layer
ConfigureSecurityUpdatesStepthat executes Ansible playbook viaAnsibleClientConfigureCommandHandlerworkflow after Docker Compose installationInfrastructure Layer
templates/ansible/configure-security-updates.ymlplaybook:unattended-upgradespackageUsage
The step runs automatically in the configure workflow:
Configuration details in
/etc/apt/apt.conf.d/files are backed up before modification.Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.