Generate an IdM readiness report
What You Will Build
JSON, YAML, or Markdown readiness evidence from explicit inputs.
What You Need Before Starting
- Report role dependencies available in the active Ansible environment
- Input records from inventory, lookups, or lab fixtures
- An output directory for report artifacts
Lab Assumptions
- Reports are read-only.
- Missing records should be represented as status, not fixed automatically.
- Use lab fixtures before live evidence.
Step-By-Step Path
- Prepare explicit input records.
- Run the readiness report wrapper.
- Inspect JSON for automation and Markdown for review.
- Use findings to decide a separate remediation workflow.
ansible-playbook readiness-report.yml
Example Tutorial Playbook
Build a small readiness report from explicit facts so the output is deterministic and reviewable.
readiness-report.yml
---
- name: Generate a tutorial readiness report
hosts: localhost
gather_facts: false
roles:
- role: eigenstate.ipa.idm_readiness_report
vars:
eigenstate_idm_readiness_report_site: tutorial
eigenstate_idm_readiness_report_output_dir: ./artifacts
eigenstate_idm_readiness_report_checks:
- id: kerberos-auth
title: Kerberos authentication path
status: pass
severity: high
evidence: Tutorial keytab path is configured.
recommendation: Replace tutorial inputs with site credentials.
Run It
ansible-playbook readiness-report.yml
Expected Evidence
The role writes JSON/YAML/Markdown outputs under ./artifacts. A captured run
from this checkout produced:
PLAY [Render IdM readiness report] *********************************************
TASK [eigenstate.ipa.idm_readiness_report : Create IdM readiness report output directory] ***
changed: [localhost]
TASK [eigenstate.ipa.idm_readiness_report : Build IdM readiness report object] ***
ok: [localhost]
TASK [eigenstate.ipa.idm_readiness_report : Render IdM readiness JSON report] ***
changed: [localhost]
TASK [eigenstate.ipa.idm_readiness_report : Render IdM readiness YAML report] ***
changed: [localhost]
TASK [eigenstate.ipa.idm_readiness_report : Render IdM readiness Markdown report] ***
changed: [localhost]
PLAY RECAP *********************************************************************
localhost : ok=8 changed=4 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
The JSON artifact is deterministic and reviewable:
{
"schema": "eigenstate.ipa/idm_readiness_report/v1",
"schema_version": "1.0",
"role": "idm_readiness_report",
"read_only": true,
"summary": {
"total_checks": 2,
"passed_checks": 2,
"warning_checks": 0,
"failed_checks": 0,
"informational_checks": 0
}
}
What You Learned
- Reports are evidence artifacts.
- JSON/YAML/Markdown outputs serve different reviewers.
- Remediation remains an explicit follow-on workflow.
Next Page
Continue with /how-to/generate-operational-evidence.html.