You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: _implementors/contributing.md
+27-4
Original file line number
Diff line number
Diff line change
@@ -8,12 +8,13 @@ index: 9
8
8
9
9
We're excited for your contributions to the Dev Container Specification! This document outlines how you can get involved. We also welcome you to join our [community Slack channel](https://aka.ms/dev-container-community).
- Propose the change via an [issue](https://github.com/devcontainers/spec/issues) in the [spec repo](https://github.com/devcontainers/spec). Try to get early feedback before spending too much effort formalizing it.
14
-
- More formally document the proposed change in terms of properties and their semantics. Look to format your proposal like our [devcontainer.json reference](../json_reference), which is a JSON with Comments (jsonc) format.
13
+
If you'd like to contribute a change or addition to the spec, you may follow the guidance below:
14
+
- Propose the change via an [issue](https://github.com/devcontainers/spec/issues) in this repository. Try to get early feedback before spending too much effort formalizing it.
15
+
- More formally document the proposed change in terms of properties and their semantics. Look to format your proposal like our [devcontainer.json reference](https://aka.ms/devcontainer.json).
15
16
16
-
Here is a sample proposal:
17
+
Here is a sample:
17
18
18
19
| Property | Type | Description |
19
20
|:------------------|:------------|:------------|
@@ -43,6 +44,20 @@ Tool-specific properties are contained in namespaces in the `"customizations"` p
43
44
44
45
You may propose adding a new namespace for a specific tool, and any properties specific to that tool.
When contributing an official doc or referencing dev containers in your projects, please consider the following guidelines:
50
+
51
+
- Refer to the spec as the "Development Container Specification"
52
+
- All capital letters
53
+
- Singular "Container" rather than plural "Containers"
54
+
- The term "dev container" shouldn't be capitalized on its own
55
+
- It should only be capitalized when referring to an official tool title, like the VS Code Dev Containers extension
56
+
- Signify `devcontainer.json` is a file type through backticks
57
+
- Features and Templates should always be capitalized
58
+
- Refer to the CLI as the "Dev Container CLI" (note the caps)
59
+
- Use bolding for emphasis sprinkled throughout sections, rather than try to use it to always bold certain terms
60
+
46
61
## <ahref="#review-process"name="review-process"class="anchor"> Review process </a>
47
62
48
63
We use the following [labels](https://github.com/devcontainers/spec/labels) in the spec repo:
@@ -51,3 +66,11 @@ We use the following [labels](https://github.com/devcontainers/spec/labels) in t
51
66
-`finalization`: Proposals we intend to make part of the spec.
52
67
53
68
[Milestones](https://github.com/devcontainers/spec/milestones) use a "month year" pattern (i.e. January 2022). If a finalized proposal is added to a milestone, it is intended to be merged during that milestone.
69
+
70
+
## <ahref="#community-engagement"name="community-engagement"class="anchor"> Community Engagement </a>
71
+
72
+
There are several additional options to engage with the dev container community, such as asking questions, providing feedback, or engaging on how your team may use or contribute to dev containers:
73
+
-[GitHub Discussions](https://github.com/devcontainers/spec/discussions): This is a great opportunity to connect with the community and maintainers of this project, without the requirement of contributing a change to the actual spec (which we see more in issues and PRs)
74
+
-[Community Slack channel](https://aka.ms/dev-container-community): This is a great opportunity to connect with the community and maintainers
75
+
- You can always check out the issues and PRs (and contribute new ones) across the repos in the [Dev Containers GitHub org](https://github.com/devcontainers) too!
76
+
- Community collections: You can contribute your own [Templates](https://containers.dev/implementors/templates-distribution/#distribution) and [Features](https://containers.dev/implementors/features-distribution/#distribution) to our [community index](https://containers.dev/collections)!
Copy file name to clipboardExpand all lines: _implementors/json_reference.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -164,7 +164,7 @@ Variables can be referenced in certain string values in `devcontainer.json` in t
164
164
165
165
| Variable | Properties | Description |
166
166
|:------------------|:------------|:------------|
167
-
|`${localEnv:VARIABLE_NAME}`| Any | Value of an environment variable on the **host machine** (in this case, called `VARIABLE_NAME`). Unset variables are left blank. For example, this would set a variable to your local home folder on Linux / macOS or the user folder on Windows:<br/> `"remoteEnv": { "LOCAL_USER_PATH": "${localEnv:HOME}${localEnv:USERPROFILE}" }`<br /><br /> A default value for when the environment variable is not set can be given with `${localEnv:VARIABLE_NAME:default_value}`. <br /><br /> ⚠️ For a cloud service, the host is in the cloud rather than your local machine.|
167
+
|`${localEnv:VARIABLE_NAME}`| Any | Value of an environment variable on the **host machine** (in the examples below, called `VARIABLE_NAME`). Unset variables are left blank. <br /><br /> ⚠️ Clients (like VS Code) may need to be **restarted** to pick up newly set variables. <br /><br /> ⚠️ For a cloud service, the host is in the cloud rather than your local machine. <br /><br /> **Examples** <br /><br /> **1.** Set a variable containing your local home folder on Linux / macOS or the user folder on Windows:<br/> `"remoteEnv": { "LOCAL_USER_PATH": "${localEnv:HOME}${localEnv:USERPROFILE}" }`. <br /><br /> A default value for when the environment variable is not set can be given with `${localEnv:VARIABLE_NAME:default_value}`. <br /><br /> **2.** In modern versions of macOS, default configurations allow setting local variables with the command `echo 'export VARIABLE_NAME=my-value' >> ~/.zshenv`. |
168
168
|`${containerEnv:VARIABLE_NAME}`|`remoteEnv`| Value of an existing environment variable inside the container once it is up and running (in this case, called `VARIABLE_NAME`). For example:<br /> `"remoteEnv": { "PATH": "${containerEnv:PATH}:/some/other/path" }` <br /><br /> A default value for when the environment variable is not set can be given with `${containerEnv:VARIABLE_NAME:default_value}`. |
169
169
|`${localWorkspaceFolder}`| Any | Path of the local folder that was opened in the `devcontainer.json` supporting service / tool (that contains `.devcontainer/devcontainer.json`). |
170
170
|`${containerWorkspaceFolder}`| Any | The path that the workspaces files can be found in the container. |
Copy file name to clipboardExpand all lines: contributing.md
+5-5
Original file line number
Diff line number
Diff line change
@@ -1,8 +1,8 @@
1
1
# How to Contribute to the Dev Container Specification
2
2
3
-
We're excited for your contributions to the dev container specification! This document outlines how you can get involved.
3
+
We're excited for your contributions to the Dev Container Specification! This document outlines how you can get involved. We also welcome you to join our [community Slack channel](https://aka.ms/dev-container-community).
4
4
5
-
## Contribution approaches
5
+
## Spec contribution approaches
6
6
7
7
If you'd like to contribute a change or addition to the spec, you may follow the guidance below:
8
8
- Propose the change via an [issue](https://github.com/devcontainers/spec/issues) in this repository. Try to get early feedback before spending too much effort formalizing it.
@@ -16,7 +16,7 @@ Here is a sample:
16
16
17
17
- PRs to the [schema](https://github.com/microsoft/vscode/blob/main/extensions/configuration-editing/schemas/devContainer.schema.src.json), i.e code or shell scripts demonstrating approaches for implementation.
18
18
19
-
Once there is discussion on your proposal, please also open and link a PR to update the [devcontainer.json reference doc](https://github.com/microsoft/vscode-docs/blob/main/docs/remote/devcontainerjson-reference.md). When your proposal is merged, the docs will be kept up-to-date with the latest spec.
19
+
Once there is discussion on your proposal, please also open and link a PR to update the [devcontainer.json reference doc](https://aka.ms/devcontainer.json). When your proposal is merged, the docs will be kept up-to-date with the latest spec.
20
20
21
21
### Contributing tool-specific support
22
22
@@ -53,7 +53,7 @@ When contributing an official doc or referencing dev containers in your projects
53
53
54
54
## Review process
55
55
56
-
We use the following [labels](https://github.com/devcontainers/spec/labels):
56
+
We use the following [labels](https://github.com/devcontainers/spec/labels) in the spec repo:
57
57
58
58
-`proposal`: Issues under discussion, still collecting feedback.
59
59
-`finalization`: Proposals we intend to make part of the spec.
@@ -65,4 +65,4 @@ There are several additional options to engage with the dev container community,
65
65
-[GitHub Discussions](https://github.com/devcontainers/spec/discussions): This is a great opportunity to connect with the community and maintainers of this project, without the requirement of contributing a change to the actual spec (which we see more in issues and PRs)
66
66
-[Community Slack channel](https://aka.ms/dev-container-community): This is a great opportunity to connect with the community and maintainers
67
67
- You can always check out the issues and PRs (and contribute new ones) across the repos in the [Dev Containers GitHub org](https://github.com/devcontainers) too!
68
-
68
+
- Community collections: You can contribute your own [Templates](https://containers.dev/implementors/templates-distribution/#distribution) and [Features](https://containers.dev/implementors/features-distribution/#distribution) to our [community index](https://containers.dev/collections)!
0 commit comments