Commit Graph

22 Commits

Author SHA1 Message Date
Max Erenberg 1fc432bb0f add hint to GetGroupResponseView
continuous-integration/drone/push Build is passing Details
2022-06-05 10:20:22 -04:00
Max Erenberg b543f0eb0c Rewrite TUI (#52)
continuous-integration/drone/push Build is passing Details
Closes #44.
Closes #47.
Closes #49.
Closes #50.

The TUI has been rewritten using urwid instead of asciimatics. The MVC pattern was also used to help increase organization and readability.

The mouse has been disabled, which allows users to easily copy text from the terminal.

Terms are now sorted when displayed, for both the CLI and the TUI.

Reviewed-on: #52
2022-05-22 14:09:46 -04:00
Max Erenberg 539de01c4d use admin GSSAPI creds for some API endpoints (#45)
continuous-integration/drone/push Build is passing Details
Office staff currently can't sign up new members because ceod uses their GSSAPI credentials to authenticate to LDAP, and those credentials are insufficient.

This PR uses the ceod/admin credentials instead for signing up new members and for renewing existing memberships.

Reviewed-on: #45
2022-03-12 15:19:14 -05:00
Max Erenberg 1e94132e97 Add container registry API (#42)
continuous-integration/drone/push Build is passing Details
Add an API for members to create a project on Harbor.

Co-authored-by: Max Erenberg <>
Reviewed-on: #42
Co-authored-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
Co-committed-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
2022-01-01 00:49:05 -05:00
Max Erenberg f08f4872cf Add Kubernetes API endpoint (#38)
continuous-integration/drone/push Build is passing Details
Add an API for members to create their own Kubernetes namespace.

Co-authored-by: Max Erenberg <>
Reviewed-on: #38
Co-authored-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
Co-committed-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
2021-12-18 16:35:05 -05:00
Max Erenberg 1338825c5d use NGINX with acme.sh 2021-11-28 22:35:46 -05:00
Max Erenberg a7c5098b67 Add cloud vhost API (#35)
continuous-integration/drone/push Build is passing Details
Add an API for members to create their own virtual hosts.

Co-authored-by: Max Erenberg <>
Reviewed-on: #35
Co-authored-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
Co-committed-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
2021-11-27 17:59:21 -05:00
Max Erenberg ac98aaf38d Add API to manage cloud accounts (#34)
continuous-integration/drone/push Build is passing Details
This PR adds API endpoints and a CLI to create cloud accounts and to purge accounts of expired members.

Co-authored-by: Max Erenberg <>
Reviewed-on: #34
Co-authored-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
Co-committed-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
2021-11-21 11:11:20 -05:00
Max Erenberg 2493bb1a6b modify CSC schema instead of using inetOrgPerson
continuous-integration/drone/push Build is passing Details
2021-10-28 21:33:32 -04:00
Max Erenberg 2970736105 place CI fix into common.sh
continuous-integration/drone/push Build is passing Details
2021-10-25 08:18:25 -04:00
Max Erenberg 23f40c74f9 Use inetOrgPerson instead of account (#29)
continuous-integration/drone/push Build is passing Details
Closes #25.

Co-authored-by: Max Erenberg <>
Reviewed-on: #29
Co-authored-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
Co-committed-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
2021-10-23 23:21:09 -04:00
Max Erenberg e3c50d867a Add isClubRep attribute (#27)
continuous-integration/drone/push Build is passing Details
Closes #24.

Co-authored-by: Max Erenberg <>
Reviewed-on: #27
Co-authored-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
Co-committed-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
2021-10-23 10:23:43 -04:00
Max Erenberg 3e1131c4e4 no-resizing (#21)
continuous-integration/drone/push Build is passing Details
This PR disables resizing the TUI.
Unfortunately this is a regression from the old ceo. But trying to preserve state when destroying and creating new views in asciimatics proved to be very difficult.

Co-authored-by: Max Erenberg <>
Reviewed-on: #21
Co-authored-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
Co-committed-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
2021-10-04 20:04:05 -04:00
Max Erenberg de18a9f293 add option to use Docker instead of VM (#16)
continuous-integration/drone/push Build is passing Details
Co-authored-by: Max Erenberg <>
Co-authored-by: Rio <r345liu@localhost>
Reviewed-on: #16
Co-authored-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
Co-committed-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
2021-09-17 22:39:27 -04:00
Andrew Wang 33323fd112 Add database CLI (#15)
continuous-integration/drone/push Build is passing Details
Closes #12

Co-authored-by: Andrew Wang <a268wang@csclub.uwaterloo.ca>
Co-authored-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
Reviewed-on: #15
Co-authored-by: Andrew Wang <a268wang@localhost>
Co-committed-by: Andrew Wang <a268wang@localhost>
2021-09-11 13:33:43 -04:00
Andrew Wang eb5d632606 db-api (#10)
continuous-integration/drone/push Build is passing Details
Implement DB endpoints

Co-authored-by: Andrew Wang <someone.zip@gmail.com>
Co-authored-by: Max Erenberg <merenber@csclub.uwaterloo.ca>
Reviewed-on: #10
Co-authored-by: Andrew Wang <a268wang@localhost>
Co-committed-by: Andrew Wang <a268wang@localhost>
2021-08-29 13:08:35 -04:00
Max Erenberg bb82945b41 remove hostname from /etc/hosts in auth1
continuous-integration/drone/push Build is passing Details
2021-08-21 07:13:36 +00:00
Max Erenberg 38f354c106 add sasl-host to slapd.conf
continuous-integration/drone/push Build is failing Details
2021-08-21 06:54:59 +00:00
Max Erenberg 95d083fca1 use our own SPNEGO implementation
continuous-integration/drone/push Build is failing Details
2021-08-21 06:27:33 +00:00
Max Erenberg 89e6c541ab add hostname check
continuous-integration/drone/push Build is failing Details
2021-08-20 18:46:36 +00:00
Max Erenberg e4970bf008 remove search option from resolv.conf
continuous-integration/drone/push Build is failing Details
2021-08-20 18:34:29 +00:00
Max Erenberg d11c6af2ec add tests to drone.yml
continuous-integration/drone/push Build is failing Details
2021-08-20 18:17:00 +00:00