Revamp clients to prioritize API #54

Closed
opened 2019-11-30 20:17:53 -05:00 by JoshuaBoniface · 5 comments
JoshuaBoniface commented 2019-11-30 20:17:53 -05:00 (Migrated from git.bonifacelabs.ca)

Following the planned lead of how the provisioner will work, revamp the clients such that the CLI talks to the API. The API can no longer be optional. Support all cluster functions (i.e. cluster init) via the API. Revamp pvc-ansible to use this method.

The goal is for the CLI to be able to store some state and connect to multiple API instances, allowing for multiple clusters to be managed from one source.

Alternatively, allow one API to manage multiple clusters, though given how it ties in as well, I think it makes more sense for the CLI to wrap the API than to implement some sort of Zookeeper tunneling for the API. This way only the API must be exposed.

Following the planned lead of how the provisioner will work, revamp the clients such that the CLI talks to the API. The API can no longer be optional. Support all cluster functions (i.e. cluster init) via the API. Revamp pvc-ansible to use this method. The goal is for the CLI to be able to store some state and connect to multiple API instances, allowing for multiple clusters to be managed from one source. Alternatively, allow one API to manage multiple clusters, though given how it ties in as well, I think it makes more sense for the CLI to wrap the API than to implement some sort of Zookeeper tunneling for the API. This way only the API must be exposed.
JoshuaBoniface commented 2019-11-30 20:19:52 -05:00 (Migrated from git.bonifacelabs.ca)

mentioned in issue #55

mentioned in issue #55
JoshuaBoniface commented 2019-12-23 21:23:17 -05:00 (Migrated from git.bonifacelabs.ca)

Phase 1 complete. The API has been rewritten with the nicer and more consistent Flask-RESTful, along with using flask-swagger to generate automatic API documentation. This helps facilitate building clients in general, and the CLI API client specifically by providing a consistent reference.

Phase 1 complete. The API has been rewritten with the nicer and more consistent Flask-RESTful, along with using flask-swagger to generate automatic API documentation. This helps facilitate building clients in general, and the CLI API client specifically by providing a consistent reference.
JoshuaBoniface commented 2019-12-25 14:13:03 -05:00 (Migrated from git.bonifacelabs.ca)

It looks like some aspects of this might be hard to create drop-in replacements for due to functionality not in the API right now. Found so far:

  • VM log/log-follow are not in API Implemented in 1f77b382ef
It looks like some aspects of this might be hard to create drop-in replacements for due to functionality not in the API right now. Found so far: * ~~VM log/log-follow are not in API~~ Implemented in https://git.bonifacelabs.ca/parallelvirtualcluster/pvc/commit/1f77b382ef59834965d355486a5690231f1106b9
JoshuaBoniface commented 2020-01-05 16:17:57 -05:00 (Migrated from git.bonifacelabs.ca)

Completed. CLI is now fully an API client.

Completed. CLI is now fully an API client.
JoshuaBoniface commented 2020-01-05 16:17:58 -05:00 (Migrated from git.bonifacelabs.ca)

closed

closed
Sign in to join this conversation.
No Milestone
No project
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: parallelvirtualcluster/pvc#54
No description provided.