Skip to content

Commit 5bf1274

Browse files
Merge branch 'devcontainers:gh-pages' into gh-pages
2 parents f1397ed + 8d793c7 commit 5bf1274

File tree

4 files changed

+117
-17
lines changed

4 files changed

+117
-17
lines changed

_data/collection-index.yml

+89-15
Original file line numberDiff line numberDiff line change
@@ -38,16 +38,6 @@
3838
contact: https://github.com/mpriscella/features/issues
3939
repository: https://github.com/mpriscella/features
4040
ociReference: ghcr.io/mpriscella/features
41-
- name: DevContainers-Contrib Features
42-
maintainer: Daniel Braun
43-
contact: https://github.com/devcontainers-contrib/features/issues
44-
repository: https://github.com/devcontainers-contrib/features
45-
ociReference: ghcr.io/devcontainers-contrib/features
46-
- name: DevContainers-Contrib Templates
47-
maintainer: Daniel Braun
48-
contact: https://github.com/devcontainers-contrib/templates/issues
49-
repository: https://github.com/devcontainers-contrib/templates
50-
ociReference: ghcr.io/devcontainers-contrib/templates
5141
- name: Assorted Features
5242
maintainer: eitsupi
5343
contact: https://github.com/eitsupi/devcontainer-features/issues
@@ -288,11 +278,6 @@
288278
contact: https://github.com/swift-server/swift-devcontainer-template/issues
289279
repository: https://github.com/swift-server/swift-devcontainer-template
290280
ociReference: ghcr.io/swift-server/swift-devcontainer-template
291-
- name: Android SDK Tools and Apt packages
292-
maintainer: akhildevelops
293-
contact: https://github.com/akhildevelops/devcontainer-features/issues
294-
repository: https://github.com/akhildevelops/devcontainer-features
295-
ociReference: ghcr.io/akhildevelops/devcontainer-features
296281
- name: UNSW cs3231 OS Development
297282
maintainer: Hamish Cox
298283
contact: https://github.com/HamishWHC/cs3231-devcontainer/issues
@@ -868,3 +853,92 @@
868853
contact: https://github.com/sleter/mojo-devcontainer/issues
869854
repository: https://github.com/sleter/mojo-devcontainer
870855
ociReference: ghcr.io/sleter/mojo-devcontainer
856+
- name: Devcontainer features by sidecus
857+
maintainer: sidecus
858+
contact: https://github.com/sidecus/devcontainer-features/issues
859+
repository: https://github.com/sidecus/devcontainer-features
860+
ociReference: ghcr.io/sidecus/devcontainer-features
861+
- name: MATLAB Feature for DevContainers
862+
maintainer: The MathWorks Inc.
863+
contact: https://github.com/mathworks/devcontainer-features/issues
864+
repository: https://github.com/mathworks/devcontainer-features
865+
ociReference: ghcr.io/mathworks/devcontainer-features
866+
- name: Julian Pawlowski Dev Container Features
867+
maintainer: Julian Pawlowski
868+
contact: https://github.com/jpawlowski/devcontainer-features/issues
869+
repository: https://github.com/jpawlowski/devcontainer-features
870+
ociReference: ghcr.io/jpawlowski/devcontainer-features
871+
- name: pre-commit hooks(via pip) & sonarlint
872+
maintainer: gvatsal60 (Vatsal Gupta)
873+
contact: https://github.com/gvatsal60/dev-container-features/issues
874+
repository: https://github.com/gvatsal60/dev-container-features
875+
ociReference: ghcr.io/gvatsal60/dev-container-features
876+
- name: Devcontainer features by git-saj
877+
maintainer: git-saj
878+
contact: https://github.com/git-saj/devcontainer-features/issues
879+
repository: https://github.com/git-saj/devcontainer-features
880+
ociReference: ghcr.io/git-saj/devcontainer-features
881+
- name: Devcontainer features by Codefabrik
882+
maintainer: Codefabrik GmbH
883+
contact: https://github.com/code-fabrik/features/issues
884+
repository: https://github.com/code-fabrik/features
885+
ociReference: ghcr.io/code-fabrik/features
886+
- name: Devcontainer features by Juan Ayala
887+
maintainer: Juan Ayala
888+
contact: https://github.com/juan-ayala/devcontainer-features/issues
889+
repository: https://github.com/juan-ayala/devcontainer-features
890+
ociReference: ghcr.io/juan-ayala/devcontainer-features
891+
- name: Devcontainer templates by Juan Ayala
892+
maintainer: Juan Ayala
893+
contact: https://github.com/juan-ayala/devcontainer-templates/issues
894+
repository: https://github.com/juan-ayala/devcontainer-templates
895+
ociReference: ghcr.io/juan-ayala/devcontainer-templates
896+
- name: LocalStack DevContainer Feature
897+
maintainer: LocalStack GmbH
898+
contact: https://github.com/localstack/devcontainer-feature/issues
899+
repository: https://github.com/localstack/devcontainer-feature
900+
ociReference: ghcr.io/localstack/devcontainer-feature
901+
- name: LocalStack DevContainer Template
902+
maintainer: LocalStack GmbH
903+
contact: https://github.com/localstack/devcontainer-template/issues
904+
repository: https://github.com/localstack/devcontainer-template
905+
ociReference: ghcr.io/localstack/devcontainer-template
906+
- name: DeepSpaceCartel DevContainer Features
907+
maintainer: DeepSpaceCartel Inc.
908+
contact: https://github.com/deep-space-cartel/devcontainers-features/issues
909+
repository: https://github.com/deep-space-cartel/devcontainers-features
910+
ociReference: ghcr.io/deep-space-cartel/devcontainers-features
911+
- name: Dev Container features by Adaptavist
912+
maintainer: Mark Gibson
913+
contact: https://github.com/adaptavist/devcontainer-features/issues
914+
repository: https://github.com/adaptavist/devcontainer-features
915+
ociReference: ghcr.io/adaptavist/devcontainer-features
916+
- name: Dev Container features by phil-bell
917+
maintainer: Phil Bell
918+
contact: https://github.com/phil-bell/devcontainer-features/issues
919+
repository: https://github.com/phil-bell/devcontainer-features
920+
ociReference: ghcr.io/phil-bell/devcontainer-features
921+
- name: Dev Container Templates by Alex Wegener
922+
maintainer: Alex Wegener
923+
contact: https://github.com/lx-0/devcontainer-templates/issues
924+
repository: https://github.com/lx-0/devcontainer-templates
925+
ociReference: ghcr.io/lx-0/devcontainer-templates
926+
- name: Hauke's Features for Development Containers
927+
maintainer: Hauke D
928+
contact: https://github.com/haukex/devcontainer-features/issues
929+
repository: https://github.com/haukex/devcontainer-features
930+
ociReference: ghcr.io/haukex/devcontainer-features
931+
- name: Devcontainer features by vmvarela
932+
maintainer: Victor M. Varela
933+
contact: https://github.com/vmvarela/devcontainer-features/issues
934+
repository: https://github.com/vmvarela/devcontainer-features
935+
- name: Crystal features
936+
maintainer: Caesarovich
937+
contact: https://github.com/Caesarovich/devcontainer-feature-crystal/issues
938+
repository: https://github.com/Caesarovich/devcontainer-feature-crystal
939+
ociReference: ghcr.io/caesarovich/devcontainer-feature-crystal
940+
- name: Dev Container Features by devcontainers-extra
941+
maintainer: devcontainers-extra
942+
contact: https://github.com/devcontainers-extra/features/issues
943+
repository: https://github.com/devcontainers-extra/features
944+
ociReference: ghcr.io/devcontainers-extra/features

_implementors/features-distribution.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ Goals include:
2323

2424
Features source code is stored in a git repository.
2525

26-
For ease of authorship and maintenance, [1..n] features can share a single git repository. This set of Features is referred to as a "collection," and will share the same [`devcontainer-collection.json`](#devcontainer-collection.json) file and "namespace" (eg. `<owner>/<repo>`).
26+
For ease of authorship and maintenance, [1..n] features can share a single git repository. This set of Features is referred to as a "collection," and will share the same [`devcontainer-collection.json`](#devcontainer-collection-json) file and "namespace" (eg. `<owner>/<repo>`).
2727

2828
Source code for the set follows the example file structure below:
2929

_implementors/json_reference.md

+1
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ While `devcontainer.json` does not focus on hardware or VM provisioning, it can
9999
| `hostRequirements.cpus` 🏷️ | integer | Indicates the minimum required number of CPUs / virtual CPUs / cores. For example: `"hostRequirements": {"cpus": 2}` |
100100
| `hostRequirements.memory` 🏷️ | string | A string indicating minimum memory requirements with a `tb`, `gb`, `mb`, or `kb` suffix. For example, `"hostRequirements": {"memory": "4gb"}` |
101101
| `hostRequirements.storage` 🏷️ | string | A string indicating minimum storage requirements with a `tb`, `gb`, `mb`, or `kb` suffix. For example, `"hostRequirements": {"storage": "32gb"}` |
102+
| `hostRequirements.gpu` 🏷️ | boolean,<br>string,<br>object | Indicates if any GPU is required. A boolean indicates if a GPU is required or not. The string `"optional"` indicates that a GPU is used when available, but is not required.<br><br>The object syntax specifies how much GPU resources are required. The `cores` property indicates the minimum number of cores and the `memory` property indicates minimum storage requirements with a `tb`, `gb`, `mb`, or `kb` suffix. For example, `"gpu": { "cores": 1000, "storage": "32gb" }` |
102103
{: .table .table-bordered .table-responsive}
103104

104105
## <a href="#port-attributes" name="port-attributes" class="anchor"> Port attributes </a>

_implementors/templates.md

+26-1
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,11 @@ The properties of the file are as follows:
3737
| `description` | string | Description of the Template. |
3838
| `documentationURL` | string | Url that points to the documentation of the Template. |
3939
| `licenseURL` | string | Url that points to the license of the Template. |
40-
| `options` | object | A map of options that the supporting tools should use to populate different configuration options for the Template. |
40+
| [`options`](#options) | object | A map of options that the supporting tools should use to populate different configuration options for the Template. |
4141
| `platforms` | array | Languages and platforms supported by the Template. |
4242
| `publisher` | string | Name of the publisher/maintainer of the Template. |
4343
| `keywords` | array | List of strings relevant to a user that would search for this Template. |
44+
| [`optionalPaths`](#optionalPaths) | array | An array of files or directories that tooling may consider "optional" when applying a Template. Directories are indicated with a trailing `/*`, (eg: `.github/*`).
4445
{: .table .table-bordered .table-responsive}
4546

4647
### <a href="#options" name="options" class="anchor"> The `options` property</a>
@@ -71,6 +72,30 @@ The `options` property contains a map of option IDs and their related configurat
7172

7273
> `Note`: The `options` must be unique for every `devcontainer-template.json`
7374
75+
### <a href="#optionalPaths" name="optionalPaths" class="anchor"> The `optionalPaths` property</a>
76+
77+
Before applying a Template, tooling must inspect the `optionalPaths` property of a Template and prompt the user on whether each file or folder should be included in the resulting output workspace folder. A path is relative to the root of the Template source directory.
78+
79+
- For a single file, provide the full relative path (without any leading or trailing path delimiters).
80+
- For a directory, provide the full relative path with a trailing slash and asterisk (`/*`) appended to the path. The directory and its children will be recursively ignored.
81+
82+
Examples are shown below:
83+
84+
```jsonc
85+
{
86+
"id": "cpp",
87+
"version": "3.0.0",
88+
"name": "C++",
89+
"description": "Develop C++ applications",
90+
"optionalPaths": [
91+
"GETTING-STARTED.md", // Single file
92+
"example-project-1/MyProject.csproj", // Single file in nested directory
93+
".github/*" // Entire recursive contents of directory
94+
]
95+
}
96+
```
97+
98+
7499
### <a href="#referencing-a-template" name="referencing-a-template" class="anchor"> Referencing a Template </a>
75100

76101
The `id` format (`<oci-registry>/<namespace>/<template>[:<semantic-version>]`) dictates how a [supporting tool](/supporting) will locate and download a given Template from an OCI registry. For example:

0 commit comments

Comments
 (0)