TODO items
Blocked:
- we should get a Project ID from the API when we login (need to add a new endpoint to the API)
- need to add JWT/OATH2 support so that users don't handle API keys
Active List:
- should we alias the auth login command to login?
Done:
- ✅ update exit codes for authentication and permission errors
- ✅ test the --password-storage flag with none option and PGPASSWORD env var
- ✅ add integration test for service 404s
- ✅ api key stuff right now is messy. we require setting the api key from the public key and private key as public_key:private_key. should be a single string instead.
- ✅ change service operations to use --wait-timeout instead of --timeout
- ✅ implement --wait-timeout flag to accept time.ParseDuration format (e.g., "30m", "1h30m", "90s")
- ✅ update --timeout flag for db test-connection to accept time.ParseDuration format
- ✅ implement exit code 2 for wait-timeout scenarios (operation continues on server)
- ✅ update global exit code mapping per new spec (authentication moved to code 3, etc.)
- ✅ ensure wait-timeout operations display status updates every 10 seconds while waiting
- ✅ change from "tiger services" to "tiger service" with aliases for "services" and "svc"
- ✅ add --password-storage flag to all commands that save passwords (keyring|pgpass|none)
- ✅ update create-service and update-password commands to respect global --password-storage flag (keyring|pgpass|none)
- ✅ make sure create makes the service the default service (with option to not do this)