Skip to content

Improve presentation of admin options #6055

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
ammario opened this issue Feb 6, 2023 · 3 comments
Closed

Improve presentation of admin options #6055

ammario opened this issue Feb 6, 2023 · 3 comments
Assignees

Comments

@ammario
Copy link
Member

ammario commented Feb 6, 2023

Related #6002

Right now, coder server --help is overwhelmingly long and unorganized. Perhaps we could section of the flags, e.g. group all scheduling flags together? Also, we should hide some flags (e.g. obscure security knobs) and just list them in the docs.

Related is improving our CLI docs experience. This is almost unusable.

@ammario ammario added the feature label Feb 6, 2023
@bpmct
Copy link
Member

bpmct commented Feb 8, 2023

I took a stab at organizing our CLI options. At the time of writing, we have 42 top-level categories. The presentation can be drastically improved by grouping them (and hiding ones that are pretty irrelevant to 99% of users)

I used https://coder.yourdomain.com/api/v2/config/deployment to get the top-level config options

General

"access_url",
"address",
"redirect_to_access_url",
"wildcard_access_url"
"http_address",
"tls",
"pg_connection_url",
"cache_directory",
"telemetry",
"update_check",

Authentication

"scim_api_key",
"oauth2",
"oidc",
"gitauth",

Workspace builds

"provisioner",

Workspace connections

"derp",

Security

"max_session_expiry",
"max_token_lifetime",
"browser_only",
"secure_auth_cookie",
"ssh_keygen_algorithm",
"rate_limit",
"disable_password_auth",
"audit_logging",

Monitoring & documentation

"logging",
"pprof",
"prometheus",
"trace",
"swagger",

Extras

"agent_fallback_troubleshooting_url",
"agent_stat_refresh_interval",
"autobuild_poll_interval",
"dangerous",
"disable_path_apps",
"disable_session_expiry_refresh",
"experimental",
"experiments",
"in_memory_database",
"metrics_cache_refresh_interval",
"proxy_trusted_headers",
"proxy_trusted_origins",

One concept

$ coder server --help

Showing general configuration options: 

      For a list of all options: `coder server help --all`
      or visit https://coder.com/docs/v2/latest/cli/coder_server

General:
      --access-url string                                 External URL to access your
        (consumes $CODER_ACCESS_URL)                      deployment. This must be accessible
                                                          by all provisioned workspaces.
      
      --http-address string                               HTTP bind address of the server.
        (consumes $CODER_HTTP_ADDRESS)                    Unset to disable the HTTP endpoint.
                                                          (default "127.0.0.1:3000")
      ...all general options

Authentication:
      Run `coder server --help authentication` to see available options

Workspace builds:
      Run `coder server --help workspace-builds` to see available options

...all categories

Then we could also change https://coder.com/docs/v2/latest/cli/coder_server or https://coder.com/docs/v2/latest/admin/configure to have different groups and display the options in a table.


Open to other ideas though!

@bpmct
Copy link
Member

bpmct commented Feb 13, 2023

I've found it quite clunky to inform users about new flags via email or Slack. I end up sending them a snippet of the --help output, but it'd be super nice if I could send a docs link or a specific CLI command they could type to see the flag.

@ammario ammario self-assigned this Feb 17, 2023
@kylecarbs
Copy link
Member

This seems to be fixed by the flags work!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants