CLI draft spec #8

Closed
opened 2021-08-22 11:03:28 -04:00 by merenber · 3 comments
Owner

Here is a draft proposal for the CLI of ceo.

Last update: 2021-09-04

ceo members add <username> --cn <full name> --program <program> --terms <number of terms> [--clubrep]
ceo members get <username>
ceo members modify <username> [--login-shell <shell>] [--forwarding-addresses <comma-separated list of addresses>]
ceo members renew <username> --terms <number of terms> [--clubrep]
ceo members pwreset <username>

ceo updateprograms [--dry-run] [--members <comma-separated list of members>]

ceo groups get <group name>
ceo groups add <group name> --description <description>
ceo groups addmember <group name> <username> [--no-subscribe]
ceo groups removemember <group name> <username>  [--no-unsubscribe]

ceo positions [get]
ceo positions set --president <president> --vice-president <vice-president> --treasurer <treasurer> ...

ceo mysql create [username]
ceo mysql pwreset [username]
ceo postgresql create [username]
ceo postgresql pwreset [username]

All commands should give a preview of the transaction which will be performed, and give the user the option to cancel it before the API request is sent.

As usual, please leave your feedback in the comments.

Here is a draft proposal for the CLI of ceo. Last update: 2021-09-04 ``` ceo members add <username> --cn <full name> --program <program> --terms <number of terms> [--clubrep] ceo members get <username> ceo members modify <username> [--login-shell <shell>] [--forwarding-addresses <comma-separated list of addresses>] ceo members renew <username> --terms <number of terms> [--clubrep] ceo members pwreset <username> ceo updateprograms [--dry-run] [--members <comma-separated list of members>] ceo groups get <group name> ceo groups add <group name> --description <description> ceo groups addmember <group name> <username> [--no-subscribe] ceo groups removemember <group name> <username> [--no-unsubscribe] ceo positions [get] ceo positions set --president <president> --vice-president <vice-president> --treasurer <treasurer> ... ceo mysql create [username] ceo mysql pwreset [username] ceo postgresql create [username] ceo postgresql pwreset [username] ``` All commands should give a preview of the transaction which will be performed, and give the user the option to cancel it before the API request is sent. As usual, please leave your feedback in the comments.
Owner

@merenber One suggestion I have is the --terms options on both member add and member renew would be to make it accept the number of terms rather than a list of terms. It's calculated then as starting either from the current term or the next term after the last term a user is registered for (whichever is furthest)

This is how CEO works today, and users will be less likely to make an error.

@merenber One suggestion I have is the `--terms` options on both `member add` and `member renew` would be to make it accept the number of terms rather than a list of terms. It's calculated then as starting either from the current term or the next term after the last term a user is registered for (whichever is furthest) This is how CEO works today, and users will be less likely to make an error.
Contributor

For DB password reset I think we could have

ceo mysql pwreset [username]
ceo postgresql pwreset [username]
For DB password reset I think we could have ``` ceo mysql pwreset [username] ceo postgresql pwreset [username] ```
Author
Owner

CLI has now been fully implemented. 😄

CLI has now been fully implemented. 😄
Sign in to join this conversation.
No Milestone
No project
No Assignees
3 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: public/pyceo#8
No description provided.