Active
AI Generated
Kernel Compliance Routing
Reboot required ≠ drift ≠ EOL
Description
Kernel compliance scans produce states that need different operational responses. Reboot required is not the same as drift or end-of-life.
Why it matters
- Kernel drift, pending reboot, and EOL are different operational problems requiring different responses.
- One scan artifact drives schedule-reboot vs patch vs migration planning without separate workflows.
- Keeps security and stability teams aligned on what the host actually needs.
AO building blocks
Automation orchestrator step types this workflow uses on the canvas. See all building blocks
-
Triggers
Manual trigger
Starts a workflow when a user clicks Run in the UI or calls the workflow execution API — the simplest entry point for on-demand runs like demos, break-glass remediation, or operator-initiated changes. No extra configuration is required, and runs appear in history with the triggering user as the source.
-
Logic
Switch step
Evaluates conditions and routes execution to the first matching branch, supporting up to 100 ordered paths plus a fallback when nothing matches. Use it to branch on severity tiers, environment (dev/staging/prod), or AI agent output categories where a binary conditional isn't enough.
-
AAP execution
AAP job template
Launches a single Ansible Automation Platform job template from the workflow, polling until the job completes and exposing results to downstream steps. The standard bridge between automation orchestrator reasoning and AAP execution — one playbook with resolved inventory, credentials, limits, and extra vars.
Interactive Experience
Workflow
flowchart LR
A@{ img: "https://ansible-tmm.github.io/aap-orchestrator-demos/assets/icons/manual-trigger.png", label: "Schedule", pos: "b", h: 96, constraint: "on" } --> B@{ img: "https://ansible-tmm.github.io/aap-orchestrator-demos/assets/icons/launch-aap-job-template.png", label: "Scan Kernel Compliance", pos: "b", h: 96, constraint: "on" }
B --> C@{ img: "https://ansible-tmm.github.io/aap-orchestrator-demos/assets/icons/switch-node.png", label: "kernel_compliance", pos: "b", h: 96, constraint: "on" }
C -->|compliant| D@{ img: "https://ansible-tmm.github.io/aap-orchestrator-demos/assets/icons/launch-aap-job-template.png", label: "Log OK", pos: "b", h: 96, constraint: "on" }
C -->|reboot_required| E@{ img: "https://ansible-tmm.github.io/aap-orchestrator-demos/assets/icons/launch-aap-job-template.png", label: "Schedule Reboot", pos: "b", h: 96, constraint: "on" }
C -->|drift| F@{ img: "https://ansible-tmm.github.io/aap-orchestrator-demos/assets/icons/launch-aap-job-template.png", label: "Apply Kernel Update", pos: "b", h: 96, constraint: "on" }
C -->|eol| G@{ img: "https://ansible-tmm.github.io/aap-orchestrator-demos/assets/icons/launch-aap-job-template.png", label: "Flag EOL Migration", pos: "b", h: 96, constraint: "on" }
D --> H@{ img: "https://ansible-tmm.github.io/aap-orchestrator-demos/assets/icons/launch-aap-job-template.png", label: "Notify Chatroom", pos: "b", h: 96, constraint: "on" }
E --> H
F --> H
G --> H
classDef noBorder fill:transparent,stroke:transparent
class A,B,C,D,E,F,G,H noBorder
Switch routing
| kernel_compliance | Action |
|---|---|
compliant |
Log OK |
reboot_required |
Schedule maintenance reboot |
drift |
Apply kernel update playbook |
eol |
Flag for migration planning |
Playbooks
| Playbook | What it does | Runs on |
|---|---|---|
check_kernel.yml
|
Checks running vs installed kernel, needs-restarting status, and EOL kernel list. | RHEL node |
log_compliant.yml
|
Logs compliant kernel status with no action needed. | RHEL node |
schedule_reboot.yml
|
Creates maintenance window marker for pending kernel reboot (no actual reboot). | RHEL node |
apply_kernel_update.yml
|
Updates kernel via dnf when drift is detected. | RHEL node |
flag_eol_migration.yml
|
Creates EOL advisory marker for migration planning. | RHEL node |
notify_chatroom.yml
|
Posts kernel compliance results to Mattermost. | localhost (Mattermost API) |
AI Generated
This demo's playbooks and workflow were generated by AI to illustrate the pattern. They have not been fully tested in a live environment. Review and adapt before using in production.