Rebrand user-visible CLI text; add legacy fallbacks for keyring, cache dir and version prefix

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
shadowdaoandClaude Sonnet 5.5 committed 2026-10-12 10:20:06 -07:00
1 parent 4cb3bda43a
commit ab4ed3c9e5
184 files changed
+934 -851

No files matched your search

+32 -32
View File
@@ -120,16 +120,16 @@ type Command struct {
}
func (c *Command) Synopsis() string {
return "Start a Boundary dev environment"
return "Start a Threshold dev environment"
}
func (c *Command) Help() string {
helpText := `
Usage: boundary dev [options]
Usage: threshold dev [options]
Start a dev environment:
$ boundary dev
$ threshold dev
For a full list of examples, please see the documentation.
@@ -145,7 +145,7 @@ func (c *Command) Flags() *base.FlagSets {
f.StringVar(&base.StringVar{
Name: "log-level",
Target: &c.flagLogLevel,
EnvVar: "BOUNDARY_LOG_LEVEL",
EnvVar: "THRESHOLD_LOG_LEVEL",
Completion: complete.PredictSet("trace", "debug", "info", "warn", "err"),
Usage: "Log verbosity level. Supported values (in order of more detail to less) are " +
"\"trace\", \"debug\", \"info\", \"warn\", and \"err\".",
@@ -162,23 +162,23 @@ func (c *Command) Flags() *base.FlagSets {
Name: "id-suffix",
Target: &c.flagIdSuffix,
Default: "1234567890",
EnvVar: "BOUNDARY_DEV_ID_SUFFIX",
Usage: `If set, auto-created resources will use this value for their identifier (along with their resource-specific prefix). Must be 10 alphanumeric characters. As an example, if this is set to "1234567890", the generated password auth method ID will be "ampw_1234567890", the generated TCP target ID will be "ttcp_1234567890", and so on. Must be different from -secondary-id-suffix (BOUNDARY_DEV_SECONDARY_ID_SUFFIX).`,
EnvVar: "THRESHOLD_DEV_ID_SUFFIX",
Usage: `If set, auto-created resources will use this value for their identifier (along with their resource-specific prefix). Must be 10 alphanumeric characters. As an example, if this is set to "1234567890", the generated password auth method ID will be "ampw_1234567890", the generated TCP target ID will be "ttcp_1234567890", and so on. Must be different from -secondary-id-suffix (THRESHOLD_DEV_SECONDARY_ID_SUFFIX).`,
})
f.StringVar(&base.StringVar{
Name: "secondary-id-suffix",
Target: &c.flagSecondaryIdSuffix,
Default: "0987654321",
EnvVar: "BOUNDARY_DEV_SECONDARY_ID_SUFFIX",
Usage: `If set, secondary auto-created resources will use this value for their identifier (along with their resource-specific prefix). Must be 10 alphanumeric characters. Currently only used for the target resource. Must be different from -id-suffix (BOUNDARY_DEV_ID_SUFFIX).`,
EnvVar: "THRESHOLD_DEV_SECONDARY_ID_SUFFIX",
Usage: `If set, secondary auto-created resources will use this value for their identifier (along with their resource-specific prefix). Must be 10 alphanumeric characters. Currently only used for the target resource. Must be different from -id-suffix (THRESHOLD_DEV_ID_SUFFIX).`,
})
f.StringVar(&base.StringVar{
Name: "password",
Target: &c.flagPassword,
Default: "password",
EnvVar: "BOUNDARY_DEV_PASSWORD",
EnvVar: "THRESHOLD_DEV_PASSWORD",
Usage: "Initial admin login password. If set to the empty string, one will be autogenerated.",
})
@@ -186,7 +186,7 @@ func (c *Command) Flags() *base.FlagSets {
Name: "login-name",
Target: &c.flagLoginName,
Default: "admin",
EnvVar: "BOUNDARY_DEV_LOGIN_NAME",
EnvVar: "THRESHOLD_DEV_LOGIN_NAME",
Usage: "Initial admin login name. If set to the empty string, one will be autogenerated.",
})
@@ -194,7 +194,7 @@ func (c *Command) Flags() *base.FlagSets {
Name: "unprivileged-password",
Target: &c.flagUnprivilegedPassword,
Default: "password",
EnvVar: "BOUNDARY_DEV_UNPRIVILEGED_PASSWORD",
EnvVar: "THRESHOLD_DEV_UNPRIVILEGED_PASSWORD",
Usage: "Initial unprivileged user login password. If set to the empty string, one will be autogenerated.",
})
@@ -202,14 +202,14 @@ func (c *Command) Flags() *base.FlagSets {
Name: "unprivileged-login-name",
Target: &c.flagUnprivilegedLoginName,
Default: "user",
EnvVar: "BOUNDARY_DEV_UNPRIVILEGED_LOGIN_NAME",
EnvVar: "THRESHOLD_DEV_UNPRIVILEGED_LOGIN_NAME",
Usage: "Initial unprivileged user name. If set to the empty string, one will be autogenerated.",
})
f.StringVar(&base.StringVar{
Name: "api-listen-address",
Target: &c.flagControllerApiListenAddr,
EnvVar: "BOUNDARY_DEV_CONTROLLER_API_LISTEN_ADDRESS",
EnvVar: "THRESHOLD_DEV_CONTROLLER_API_LISTEN_ADDRESS",
Usage: "Address to bind to for controller \"api\" purpose. If this begins with a forward slash, it will be assumed to be a Unix domain socket path.",
})
@@ -217,7 +217,7 @@ func (c *Command) Flags() *base.FlagSets {
Name: "host-address",
Default: "localhost",
Target: &c.flagHostAddress,
EnvVar: "BOUNDARY_DEV_HOST_ADDRESS",
EnvVar: "THRESHOLD_DEV_HOST_ADDRESS",
Usage: "Address to use for the default host that is created. Must be a bare host or IP address, no port.",
})
@@ -225,7 +225,7 @@ func (c *Command) Flags() *base.FlagSets {
Name: "target-default-port",
Default: 22,
Target: &c.flagTargetDefaultPort,
EnvVar: "BOUNDARY_DEV_TARGET_DEFAULT_PORT",
EnvVar: "THRESHOLD_DEV_TARGET_DEFAULT_PORT",
Usage: "Default port to use for the default target that is created.",
})
@@ -233,34 +233,34 @@ func (c *Command) Flags() *base.FlagSets {
Name: "target-session-connection-limit",
Target: &c.flagTargetSessionConnectionLimit,
Default: -1,
EnvVar: "BOUNDARY_DEV_TARGET_SESSION_CONNECTION_LIMIT",
EnvVar: "THRESHOLD_DEV_TARGET_SESSION_CONNECTION_LIMIT",
Usage: "Maximum number of connections per session to set on the default target. -1 means unlimited.",
})
f.Int64Var(&base.Int64Var{
Name: "target-session-max-seconds",
Target: &c.flagTargetSessionMaxSeconds,
EnvVar: "BOUNDARY_DEV_TARGET_SESSION_MAX_SECONDS",
EnvVar: "THRESHOLD_DEV_TARGET_SESSION_MAX_SECONDS",
Usage: "Max seconds to use for sessions on the default target.",
})
f.StringVar(&base.StringVar{
Name: "cluster-listen-address",
Target: &c.flagControllerClusterListenAddr,
EnvVar: "BOUNDARY_DEV_CONTROLLER_CLUSTER_LISTEN_ADDRESS",
EnvVar: "THRESHOLD_DEV_CONTROLLER_CLUSTER_LISTEN_ADDRESS",
Usage: "Address to bind to for controller \"cluster\" purpose. If this begins with a forward slash, it will be assumed to be a Unix domain socket path.",
})
f.StringVar(&base.StringVar{
Name: "controller-public-cluster-address",
Target: &c.flagControllerPublicClusterAddr,
EnvVar: "BOUNDARY_DEV_CONTROLLER_PUBLIC_CLUSTER_ADDRESS",
EnvVar: "THRESHOLD_DEV_CONTROLLER_PUBLIC_CLUSTER_ADDRESS",
Usage: "Public address at which the controller is reachable for cluster tasks (like worker connections).",
})
f.StringVar(&base.StringVar{
Name: "ops-listen-address",
Target: &c.flagOpsListenAddr,
EnvVar: "BOUNDARY_DEV_OPS_LISTEN_ADDRESS",
EnvVar: "THRESHOLD_DEV_OPS_LISTEN_ADDRESS",
Usage: "Address to bind to for \"ops\" purpose. If this begins with a forward slash, it will be assumed to be a Unix domain socket path.",
})
@@ -280,28 +280,28 @@ func (c *Command) Flags() *base.FlagSets {
f.StringVar(&base.StringVar{
Name: "proxy-listen-address",
Target: &c.flagWorkerProxyListenAddr,
EnvVar: "BOUNDARY_DEV_WORKER_PROXY_LISTEN_ADDRESS",
EnvVar: "THRESHOLD_DEV_WORKER_PROXY_LISTEN_ADDRESS",
Usage: "Address to bind to for worker \"proxy\" purpose.",
})
f.StringVar(&base.StringVar{
Name: "worker-public-address",
Target: &c.flagWorkerPublicAddr,
EnvVar: "BOUNDARY_DEV_WORKER_PUBLIC_ADDRESS",
EnvVar: "THRESHOLD_DEV_WORKER_PUBLIC_ADDRESS",
Usage: "Public address at which the worker is reachable for session proxying.",
})
f.StringVar(&base.StringVar{
Name: "worker-auth-key",
Target: &c.flagWorkerAuthKey,
EnvVar: "BOUNDARY_DEV_WORKER_AUTH_KEY",
EnvVar: "THRESHOLD_DEV_WORKER_AUTH_KEY",
Usage: "If set, a valid base64-encoded AES key to be used for worker-auth purposes",
})
f.StringVar(&base.StringVar{
Name: "bsr-key",
Target: &c.flagBsrKey,
EnvVar: "BOUNDARY_DEV_BSR_KEY",
EnvVar: "THRESHOLD_DEV_BSR_KEY",
Usage: "If set, a valid base64-encoded AES key to be used for bsr purposes",
})
@@ -320,14 +320,14 @@ func (c *Command) Flags() *base.FlagSets {
f.StringVar(&base.StringVar{
Name: "ui-passthrough-dir",
Target: &c.flagUiPassthroughDir,
EnvVar: "BOUNDARY_DEV_UI_PASSTHROUGH_DIR",
EnvVar: "THRESHOLD_DEV_UI_PASSTHROUGH_DIR",
Usage: "Enables a passthrough directory in the webserver at /",
})
f.StringVar(&base.StringVar{
Name: "recovery-key",
Target: &c.flagRecoveryKey,
EnvVar: "BOUNDARY_DEV_RECOVERY_KEY",
EnvVar: "THRESHOLD_DEV_RECOVERY_KEY",
Usage: "Specifies the base64'd 256-bit AES key to use for recovery operations",
})
@@ -385,8 +385,8 @@ func (c *Command) Flags() *base.FlagSets {
f.StringVar(&base.StringVar{
Name: "plugin-execution-dir",
Target: &c.flagPluginExecutionDir,
EnvVar: "BOUNDARY_DEV_PLUGIN_EXECUTION_DIR",
Usage: "Specifies where Boundary should write plugins that it is executing; if not set defaults to system temp directory.",
EnvVar: "THRESHOLD_DEV_PLUGIN_EXECUTION_DIR",
Usage: "Specifies where Threshold should write plugins that it is executing; if not set defaults to system temp directory.",
})
f.BoolVar(&base.BoolVar{
Name: "skip-plugins",
@@ -1059,10 +1059,10 @@ func (c *Command) Run(args []string) int {
}
if !c.flagControllerOnly {
c.UI.Output("==> Boundary dev environment graceful shutdown triggered, interrupt again to enter shutdown")
c.UI.Output("==> Threshold dev environment graceful shutdown triggered, interrupt again to enter shutdown")
workerGracefulShutdownFunc()
} else {
c.UI.Output("==> Boundary dev shutdown triggered, interrupt again to force")
c.UI.Output("==> Threshold dev shutdown triggered, interrupt again to force")
}
controllerOnce.Do(controllerShutdownFunc)
@@ -1096,7 +1096,7 @@ func (c *Command) Run(args []string) int {
for !errorEncountered.Load() && !shutdownCompleted.Load() {
select {
case <-c.ServerSideShutdownCh:
c.UI.Output("==> Boundary dev environment self-terminating")
c.UI.Output("==> Threshold dev environment self-terminating")
shutdownTriggerCount++
runShutdownLogic()
@@ -1105,7 +1105,7 @@ func (c *Command) Run(args []string) int {
runShutdownLogic()
case <-c.SighupCh:
c.UI.Output("==> Boundary dev environment does not support configuration reloading, taking no action")
c.UI.Output("==> Threshold dev environment does not support configuration reloading, taking no action")
case <-c.SigUSR2Ch:
buf := make([]byte, 32*1024*1024)