graph LR
Tasks["Tasks"]
Variables["Variables"]
Handlers["Handlers"]
Templates["Templates"]
Files["Files"]
Meta["Meta"]
Documentation["Documentation"]
Tests["Tests"]
Unclassified["Unclassified"]
Tasks -- "consumes" --> Variables
Tasks -- "renders" --> Templates
Tasks -- "copies" --> Files
Tasks -- "notifies" --> Handlers
Tasks -- "conforms‑to" --> Meta
Tasks -- "documented‑by" --> Documentation
Tasks -- "validated‑by" --> Tests
Variables -- "supplies" --> Templates
Tests -- "injects" --> Variables
Tests -- "asserts" --> Handlers
The iDRAC‑certificate Ansible role provides a facade that orchestrates iDRAC certificate operations such as CSR generation, certificate import, export, and reset. Its single entry‑point (tasks/main.yml) drives the workflow by consuming role‑wide variables, rendering Jinja2 templates into SOAP/WS‑MAN payloads, copying static assets, and notifying handlers when changes occur. Role metadata governs platform support, while comprehensive Molecule test scenarios validate the end‑to‑end behavior, ensuring idempotence and correct handler execution. Documentation in README.md explains the usage, variables, and flow for end users.
Entry‑point tasks (tasks/main.yml and included sub‑tasks) that orchestrate certificate actions by invoking Dell iDRAC collection modules.
Related Classes/Methods:
tasks/main.ymltasks/generate_csr.ymltasks/import.ymltasks/export.ymltasks/reset.yml
Role‑wide variables defined in defaults/main.yml (user‑overridable) and vars/main.yml (internal constants).
Related Classes/Methods:
defaults/main.ymlvars/main.yml
Notify‑only tasks (handlers/main.yml) that perform follow‑up actions such as reboot or wait when triggered by tasks.
Related Classes/Methods:
handlers/main.yml
Jinja2 template files used to render SOAP/WS‑MAN payloads for iDRAC API calls.
Related Classes/Methods:
templates/idrac_delete_job_queue.j2templates/idrac_delete_job_queue_force.j2
Static assets (files/) that are copied or referenced by tasks, e.g., documentation or binary payloads.
Related Classes/Methods:
files/ansible_doc.txt
Role metadata (meta/main.yml) declaring author, supported platforms, and dependencies.
Related Classes/Methods:
meta/main.yml
Human‑readable description of the role, its variables, usage examples, and links (README.md).
Related Classes/Methods:
Molecule test scenarios that drive the role with concrete variable values and assert correct behavior.
Related Classes/Methods:
molecule/reset_bios-10573/converge.ymlmolecule/reset_bios-10573/molecule.ymlmolecule/update_attributes_immediate-10580/converge.ymlmolecule/update_attributes_immediate-10580/molecule.yml
Component for all unclassified files and utility functions (Utility functions/External Libraries/Dependencies)
Related Classes/Methods: None