CLI draft spec #8

Closed
opened 1 year ago 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.
Owner

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] ```
Poster
Owner

CLI has now been fully implemented. 😄

CLI has now been fully implemented. 😄
merenber closed this issue 1 year ago
Sign in to join this conversation.
No Label
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date

No due date set.

Dependencies

No dependencies set.

Reference: public/pyceo#8
Loading…
There is no content yet.