Skip to content

Commit

Permalink
Merge branch 'devcontainers:gh-pages' into gh-pages
Browse files Browse the repository at this point in the history
  • Loading branch information
projectoperations authored Sep 29, 2024
2 parents f1397ed + 8d793c7 commit 5bf1274
Show file tree
Hide file tree
Showing 4 changed files with 117 additions and 17 deletions.
104 changes: 89 additions & 15 deletions _data/collection-index.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,16 +38,6 @@
contact: https://github.com/mpriscella/features/issues
repository: https://github.com/mpriscella/features
ociReference: ghcr.io/mpriscella/features
- name: DevContainers-Contrib Features
maintainer: Daniel Braun
contact: https://github.com/devcontainers-contrib/features/issues
repository: https://github.com/devcontainers-contrib/features
ociReference: ghcr.io/devcontainers-contrib/features
- name: DevContainers-Contrib Templates
maintainer: Daniel Braun
contact: https://github.com/devcontainers-contrib/templates/issues
repository: https://github.com/devcontainers-contrib/templates
ociReference: ghcr.io/devcontainers-contrib/templates
- name: Assorted Features
maintainer: eitsupi
contact: https://github.com/eitsupi/devcontainer-features/issues
Expand Down Expand Up @@ -288,11 +278,6 @@
contact: https://github.com/swift-server/swift-devcontainer-template/issues
repository: https://github.com/swift-server/swift-devcontainer-template
ociReference: ghcr.io/swift-server/swift-devcontainer-template
- name: Android SDK Tools and Apt packages
maintainer: akhildevelops
contact: https://github.com/akhildevelops/devcontainer-features/issues
repository: https://github.com/akhildevelops/devcontainer-features
ociReference: ghcr.io/akhildevelops/devcontainer-features
- name: UNSW cs3231 OS Development
maintainer: Hamish Cox
contact: https://github.com/HamishWHC/cs3231-devcontainer/issues
Expand Down Expand Up @@ -868,3 +853,92 @@
contact: https://github.com/sleter/mojo-devcontainer/issues
repository: https://github.com/sleter/mojo-devcontainer
ociReference: ghcr.io/sleter/mojo-devcontainer
- name: Devcontainer features by sidecus
maintainer: sidecus
contact: https://github.com/sidecus/devcontainer-features/issues
repository: https://github.com/sidecus/devcontainer-features
ociReference: ghcr.io/sidecus/devcontainer-features
- name: MATLAB Feature for DevContainers
maintainer: The MathWorks Inc.
contact: https://github.com/mathworks/devcontainer-features/issues
repository: https://github.com/mathworks/devcontainer-features
ociReference: ghcr.io/mathworks/devcontainer-features
- name: Julian Pawlowski Dev Container Features
maintainer: Julian Pawlowski
contact: https://github.com/jpawlowski/devcontainer-features/issues
repository: https://github.com/jpawlowski/devcontainer-features
ociReference: ghcr.io/jpawlowski/devcontainer-features
- name: pre-commit hooks(via pip) & sonarlint
maintainer: gvatsal60 (Vatsal Gupta)
contact: https://github.com/gvatsal60/dev-container-features/issues
repository: https://github.com/gvatsal60/dev-container-features
ociReference: ghcr.io/gvatsal60/dev-container-features
- name: Devcontainer features by git-saj
maintainer: git-saj
contact: https://github.com/git-saj/devcontainer-features/issues
repository: https://github.com/git-saj/devcontainer-features
ociReference: ghcr.io/git-saj/devcontainer-features
- name: Devcontainer features by Codefabrik
maintainer: Codefabrik GmbH
contact: https://github.com/code-fabrik/features/issues
repository: https://github.com/code-fabrik/features
ociReference: ghcr.io/code-fabrik/features
- name: Devcontainer features by Juan Ayala
maintainer: Juan Ayala
contact: https://github.com/juan-ayala/devcontainer-features/issues
repository: https://github.com/juan-ayala/devcontainer-features
ociReference: ghcr.io/juan-ayala/devcontainer-features
- name: Devcontainer templates by Juan Ayala
maintainer: Juan Ayala
contact: https://github.com/juan-ayala/devcontainer-templates/issues
repository: https://github.com/juan-ayala/devcontainer-templates
ociReference: ghcr.io/juan-ayala/devcontainer-templates
- name: LocalStack DevContainer Feature
maintainer: LocalStack GmbH
contact: https://github.com/localstack/devcontainer-feature/issues
repository: https://github.com/localstack/devcontainer-feature
ociReference: ghcr.io/localstack/devcontainer-feature
- name: LocalStack DevContainer Template
maintainer: LocalStack GmbH
contact: https://github.com/localstack/devcontainer-template/issues
repository: https://github.com/localstack/devcontainer-template
ociReference: ghcr.io/localstack/devcontainer-template
- name: DeepSpaceCartel DevContainer Features
maintainer: DeepSpaceCartel Inc.
contact: https://github.com/deep-space-cartel/devcontainers-features/issues
repository: https://github.com/deep-space-cartel/devcontainers-features
ociReference: ghcr.io/deep-space-cartel/devcontainers-features
- name: Dev Container features by Adaptavist
maintainer: Mark Gibson
contact: https://github.com/adaptavist/devcontainer-features/issues
repository: https://github.com/adaptavist/devcontainer-features
ociReference: ghcr.io/adaptavist/devcontainer-features
- name: Dev Container features by phil-bell
maintainer: Phil Bell
contact: https://github.com/phil-bell/devcontainer-features/issues
repository: https://github.com/phil-bell/devcontainer-features
ociReference: ghcr.io/phil-bell/devcontainer-features
- name: Dev Container Templates by Alex Wegener
maintainer: Alex Wegener
contact: https://github.com/lx-0/devcontainer-templates/issues
repository: https://github.com/lx-0/devcontainer-templates
ociReference: ghcr.io/lx-0/devcontainer-templates
- name: Hauke's Features for Development Containers
maintainer: Hauke D
contact: https://github.com/haukex/devcontainer-features/issues
repository: https://github.com/haukex/devcontainer-features
ociReference: ghcr.io/haukex/devcontainer-features
- name: Devcontainer features by vmvarela
maintainer: Victor M. Varela
contact: https://github.com/vmvarela/devcontainer-features/issues
repository: https://github.com/vmvarela/devcontainer-features
- name: Crystal features
maintainer: Caesarovich
contact: https://github.com/Caesarovich/devcontainer-feature-crystal/issues
repository: https://github.com/Caesarovich/devcontainer-feature-crystal
ociReference: ghcr.io/caesarovich/devcontainer-feature-crystal
- name: Dev Container Features by devcontainers-extra
maintainer: devcontainers-extra
contact: https://github.com/devcontainers-extra/features/issues
repository: https://github.com/devcontainers-extra/features
ociReference: ghcr.io/devcontainers-extra/features
2 changes: 1 addition & 1 deletion _implementors/features-distribution.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ Goals include:

Features source code is stored in a git repository.

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>`).
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>`).

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

Expand Down
1 change: 1 addition & 0 deletions _implementors/json_reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,7 @@ While `devcontainer.json` does not focus on hardware or VM provisioning, it can
| `hostRequirements.cpus` 🏷️ | integer | Indicates the minimum required number of CPUs / virtual CPUs / cores. For example: `"hostRequirements": {"cpus": 2}` |
| `hostRequirements.memory` 🏷️ | string | A string indicating minimum memory requirements with a `tb`, `gb`, `mb`, or `kb` suffix. For example, `"hostRequirements": {"memory": "4gb"}` |
| `hostRequirements.storage` 🏷️ | string | A string indicating minimum storage requirements with a `tb`, `gb`, `mb`, or `kb` suffix. For example, `"hostRequirements": {"storage": "32gb"}` |
| `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" }` |
{: .table .table-bordered .table-responsive}

## <a href="#port-attributes" name="port-attributes" class="anchor"> Port attributes </a>
Expand Down
27 changes: 26 additions & 1 deletion _implementors/templates.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,10 +37,11 @@ The properties of the file are as follows:
| `description` | string | Description of the Template. |
| `documentationURL` | string | Url that points to the documentation of the Template. |
| `licenseURL` | string | Url that points to the license of the Template. |
| `options` | object | A map of options that the supporting tools should use to populate different configuration options for the Template. |
| [`options`](#options) | object | A map of options that the supporting tools should use to populate different configuration options for the Template. |
| `platforms` | array | Languages and platforms supported by the Template. |
| `publisher` | string | Name of the publisher/maintainer of the Template. |
| `keywords` | array | List of strings relevant to a user that would search for this Template. |
| [`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/*`).
{: .table .table-bordered .table-responsive}

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

> `Note`: The `options` must be unique for every `devcontainer-template.json`
### <a href="#optionalPaths" name="optionalPaths" class="anchor"> The `optionalPaths` property</a>

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.

- For a single file, provide the full relative path (without any leading or trailing path delimiters).
- 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.

Examples are shown below:

```jsonc
{
"id": "cpp",
"version": "3.0.0",
"name": "C++",
"description": "Develop C++ applications",
"optionalPaths": [
"GETTING-STARTED.md", // Single file
"example-project-1/MyProject.csproj", // Single file in nested directory
".github/*" // Entire recursive contents of directory
]
}
```


### <a href="#referencing-a-template" name="referencing-a-template" class="anchor"> Referencing a Template </a>

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:
Expand Down

0 comments on commit 5bf1274

Please sign in to comment.