coder / coder

Provision remote development environments via Terraform
https://coder.com
GNU Affero General Public License v3.0
8.06k stars 677 forks source link

stick to consistent terminology re: build options / ephemeral parameters #10488

Open spikecurtis opened 11 months ago

spikecurtis commented 11 months ago

When authoring templates the concept is called an "ephemeral parameter" but when starting workspaces it's a "build option." The CLI help gives no further explanation of what a build option is.

We need to use consistent terminology. Template authors are often end users. Template authors and end users need to be able to communicate with one another about templates and workspaces, so they need a common set of terms.

BrunoQuaresma commented 8 months ago

cc.: @mtojek

mtojek commented 8 months ago

@spikecurtis Referring to our docs:

AFAIR, ephemeral was considered to be a bit mysterious, hence we decided to replace it with simpler term, a "build option". Without breaking API/Terraform changes, we can remove all references to ephemeral except for the Terraform template, unless we deprecate it, and define a new one - build_option = true.

Personally, I like the ephemeral as it is more descriptive.

spikecurtis commented 8 months ago

I just want it to be consistent in both places. We'll have to deprecate the old term in one place or other but keep it as an alias for back compat.

mtojek commented 8 months ago

@bpmct Are we good with deprecating ephemeral and replacing it with build_option? This will affect code, database schema, and docs, but it shouldn't be breaking.

bpmct commented 8 months ago

@kylecarbs expressed that the terminology build_option compared to build_parameter is pretty confusing. I agree. Naming is hard 😅

Because of this, my preference is to remove any in-product terminology/db stuff for build_option as well 👍🏼

spikecurtis commented 8 months ago

Because of this, my preference is to remove any in-product terminology/db stuff for build_option as well 👍🏼

You mean, rename build_option -> ephemeral parameter and deprecate build_option?

bpmct commented 8 months ago

Yep

bpmct commented 5 months ago

Did we do this? adding it into next sprint as a good debt item

defelmnq commented 2 days ago

Trying to understand the whole scope of this ticket as I'm working on it , I've seen there's two parameters :

      --build-option string-array, $CODER_BUILD_OPTION
          Build option value in the format "name=value".

      --build-options bool
          Prompt for one-time build options defined with ephemeral parameters.

Do we want to deprecate both or one specifically ?

The first one seems to be a list of key=value while the second one is enabling the prompt for each parameter considered as ephemeral in the template.