• 104: Best practices
  • Going into IaC
    • Use git to track your tree
    • D.R.Y.
    • Things are quite easily moving
  • Code structure
    • Profile and Class
    • Role and profiles key lookup
    • Hierarchies
    • Foreman
    • Use environnements, site, locatation ...
    • Common keys vs dedicated keys
    • The profile key, default placeholder
    • The resource modele
    • It's like a puppet resource, a catalog of items to apply
    • It's possible to use this model with ansible, and it change radically the way Ansible can be used then. See integration.
  • Debugging
    • Use the explain mode
    • And trace mode
    • Use GNU tools
    • tree
    • grep -Rw .
    • git status -sb
  • With ansible.
    • Use a strict naming scheme, apply your Ansible usual name schema into Kheops
    • You can put some jinja variable into Kheops, Ansible will be able to replace and understand them during the runtime
    • Dynamic inventories and ENC
    • Apply products
    • Apply roles/profiles pattern
    • Use resource based roles => See my collection, it just works