With our long-term goal to simplify TripleO and focus on what people actually deploy and how they operate their clouds, it appears that the Paunch CLI hasn't been a critical piece in our project and I propose that we deprecate it; create an Ansible module to call Paunch as a library only.

I've been playing with it a little today:
https://review.opendev.org/#/c/682093/
https://review.opendev.org/#/c/682094/

Here is how you would call paunch:
    - name: Start containers for step {{ step }}
      paunch:
        config: "/var/lib/tripleo-config/hashed-container-startup-config-step_{{ step }}.json"
        config_id: "tripleo_step{{ step }}"
        action: apply
        container_cli: "{{ container_cli }}"
        managed_by: "tripleo-{{ tripleo_role_name }}"

A few benefits:
- Deployment tasks in THT would call the new module instead of a shell command
- More Pythonic and clean for Ansible, to interact with the actual task during the run
- Removing some code in Paunch, make it easier to maintain for us

For now, the Ansible module only covers "paunch apply", we will probably cover "delete" and "cleanup" eventually.

Please let me know if you have any questions or concerns,
--
Emilien Macchi