Resolves the issue of `--prompt-ephemeral-parameters` and `--ephemeral-parameter` not being available for use in the `coder create` workspace creation command (they are only available in `coder start` command). Back when they were [added originally](https://github.com/coder/coder/pull/15030) it seems to have been an oversight that they were left out. The problem this solves: ``` coder create --parameter my_ephemeral_parameter=foo error: prepare build: ephemeral parameter "my_ephemeral_parameter" can be used only with --prompt-ephemeral-parameters or --ephemeral-parameter flag ``` ``` coder create my-test-ws -t general --ephemeral-parameter my_ephemeral_parameter=foo parsing flags ([create my-test-ws -t general --ephemeral-parameter my_ephemeral_parameter=foo]) for "coder create": unknown flag: --ephemeral-parameter ``` Tested on a template with the following: ``` data "coder_parameter" "my_ephemeral_parameter" { name = "my_ephemeral_parameter" type = "bool" description = "true or false?" mutable = true default = false ephemeral = true } resource "coder_env" "debug_ephemeral" { agent_id = coder_agent.main.id name = "EPHEMERAL_TEST" value = data.coder_parameter.my_ephemeral_parameter.value } ``` By running: ``` ➜ coder git:(rowan/coder-create-5495) ✗ go run cmd/coder/main.go create --ephemeral-parameter my_ephemeral_parameter=true > Specify a name for your workspace: ws4 Select a template below to preview the provisioned infrastructure: ? kasmvnc-ubuntu-coder-dev used by 1 active developer Select a preset below: ? Small (2 CPU / 4 GB) .... ... The ws4 workspace has been created at Jun 3 12:36:38! ➜ coder git:(rowan/coder-create-5495) ✗ coder ssh ws4 workspace-ws4-5d6994756f-qlwnl% echo $EPHEMERAL_TEST true workspace-ws4-5d6994756f-qlwnl% exit ```
6.1 KiB
Generated
external-workspaces create
Create a new external workspace
Usage
coder external-workspaces create [flags] [workspace]
Description
- Create a workspace for another user (if you have permission):
$ coder create <username>/<workspace_name>
Options
-t, --template
| Type | string |
| Environment | $CODER_TEMPLATE_NAME |
Specify a template name.
--template-version
| Type | string |
| Environment | $CODER_TEMPLATE_VERSION |
Specify a template version name.
--preset
| Type | string |
| Environment | $CODER_PRESET_NAME |
Specify the name of a template version preset. Use 'none' to explicitly indicate that no preset should be used.
--start-at
| Type | string |
| Environment | $CODER_WORKSPACE_START_AT |
Specify the workspace autostart schedule. Check coder schedule start --help for the syntax.
--stop-after
| Type | duration |
| Environment | $CODER_WORKSPACE_STOP_AFTER |
Specify a duration after which the workspace should shut down (e.g. 8h).
--automatic-updates
| Type | string |
| Environment | $CODER_WORKSPACE_AUTOMATIC_UPDATES |
| Default | never |
Specify automatic updates setting for the workspace (accepts 'always' or 'never').
--copy-parameters-from
| Type | string |
| Environment | $CODER_WORKSPACE_COPY_PARAMETERS_FROM |
Specify the source workspace name to copy parameters from.
--no-wait
| Type | bool |
| Environment | $CODER_CREATE_NO_WAIT |
Return immediately after creating the workspace. The build will run in the background.
-y, --yes
| Type | bool |
Bypass confirmation prompts.
--build-option
| Type | string-array |
| Environment | $CODER_BUILD_OPTION |
Build option value in the format "name=value".
--build-options
| Type | bool |
Prompt for one-time build options defined with ephemeral parameters.
--ephemeral-parameter
| Type | string-array |
| Environment | $CODER_EPHEMERAL_PARAMETER |
Set the value of ephemeral parameters defined in the template. The format is "name=value".
--prompt-ephemeral-parameters
| Type | bool |
| Environment | $CODER_PROMPT_EPHEMERAL_PARAMETERS |
Prompt to set values of ephemeral parameters defined in the template. If a value has been set via --ephemeral-parameter, it will not be prompted for.
--parameter
| Type | string-array |
| Environment | $CODER_RICH_PARAMETER |
Rich parameter value in the format "name=value".
--rich-parameter-file
| Type | string |
| Environment | $CODER_RICH_PARAMETER_FILE |
Specify a file path with values for rich parameters defined in the template. The file should be in YAML format, containing key-value pairs for the parameters.
--parameter-default
| Type | string-array |
| Environment | $CODER_RICH_PARAMETER_DEFAULT |
Rich parameter default values in the format "name=value".
--use-parameter-defaults
| Type | bool |
| Environment | $CODER_WORKSPACE_USE_PARAMETER_DEFAULTS |
Automatically accept parameter defaults when no value is provided.
--always-prompt
| Type | bool |
Always prompt all parameters. Does not pull parameter values from existing workspace.
-O, --org
| Type | string |
| Environment | $CODER_ORGANIZATION |
Select which organization (uuid or name) to use.