Integrate Ansible into CLI client #160

Open
opened 2022-11-23 02:09:48 -05:00 by joshuaboniface · 1 comment

Add the ability to spawn Ansible management tasks via the PVC CLI tool.

Can likely be embedded under the cluster subsection. Add tasks to run a bootstrap, full node run, cluster daemon upgrade, and full cluster upgrade, directly into the CLI tool.

Would require addition to the JSON to capture where the cluster configuration is located, similar to how pvcbootstrapd does, but this doesn't seem problematic at all.

Can also potentially pave the way for tighter integration with pvcbootstrapd in the future as well, potentially launching that from the CLI as well.

We already know this integration is possible since it's done within pvcbootstrapd so the hard work is already done, just have to put the pieces together.

Add the ability to spawn Ansible management tasks via the PVC CLI tool. Can likely be embedded under the `cluster` subsection. Add tasks to run a bootstrap, full node run, cluster daemon upgrade, and full cluster upgrade, directly into the CLI tool. Would require addition to the JSON to capture where the cluster configuration is located, similar to how pvcbootstrapd does, but this doesn't seem problematic at all. Can also potentially pave the way for tighter integration with pvcbootstrapd in the future as well, potentially launching that from the CLI as well. We already know this integration is possible since it's done within pvcbootstrapd so the hard work is already done, just have to put the pieces together.
joshuaboniface added the
feature
label 2022-11-23 02:09:48 -05:00
joshuaboniface added this to the 1.0 milestone 2023-11-17 01:37:16 -05:00
Author
Owner

The CLI rewrite has paved the way for this to be feasible.

Planning to generate a new CLI section, pvc ansible, to handle this.

Key features will include:

  1. init: Create a local configuration repository (wizard-style).
  2. new: Configure a new cluster in the repository with auto-commit (wizard-style).
  3. update: Update cluster configuration from the source (add/remove settings, etc.).
  4. edit: Alter configuration of a cluster with auto-commit (wizard-style).
  5. run: Subcategory, containing...
    a. config: Run the configuration playbook(s)
    b. update: Run a PVC daemon update (update-pvc-daemons.yml oneshot)
    c. upgrade: Run a PVC cluster upgrade (upgrade-pvc-daemons.yml oneshot)

How exactly this will be implemented is still to be determined.

The CLI rewrite has paved the way for this to be feasible. Planning to generate a new CLI section, `pvc ansible`, to handle this. Key features will include: 1. `init`: Create a local configuration repository (wizard-style). 1. `new`: Configure a new cluster in the repository with auto-commit (wizard-style). 1. `update`: Update cluster configuration from the source (add/remove settings, etc.). 1. `edit`: Alter configuration of a cluster with auto-commit (wizard-style). 1. `run`: Subcategory, containing... a. `config`: Run the configuration playbook(s) b. `update`: Run a PVC daemon update (`update-pvc-daemons.yml` oneshot) c. `upgrade`: Run a PVC cluster upgrade (`upgrade-pvc-daemons.yml` oneshot) How exactly this will be implemented is still to be determined.
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: parallelvirtualcluster/pvc#160
No description provided.