Skip to content

Commit 66eec95

Browse files
authored
Merge pull request #6 from devcontainers/edgon/features-1
Changes for Features V2
2 parents 60dd3bd + e92dd24 commit 66eec95

14 files changed

+1008
-540
lines changed

.vscode/launch.json

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
{
2+
// Use IntelliSense to learn about possible attributes.
3+
// Hover to view descriptions of existing attributes.
4+
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5+
"version": "0.2.0",
6+
"configurations": [
7+
{
8+
"type": "node",
9+
"request": "launch",
10+
"name": "Launch cli - up",
11+
"program": "${workspaceFolder}/src/spec-node/devContainersSpecCLI.ts",
12+
"cwd": "${workspaceFolder}",
13+
"args": [
14+
"up",
15+
"--workspace-folder",
16+
"../devcontainers-features",
17+
"--log-level",
18+
"debug",
19+
],
20+
"console": "integratedTerminal",
21+
}
22+
]
23+
}

package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
"@types/js-yaml": "^4.0.5",
4242
"@types/mocha": "^9.1.0",
4343
"@types/node": "^16.11.7",
44+
"@types/ncp": "^2.0.5",
4445
"@types/pull-stream": "^3.6.2",
4546
"@types/semver": "^7.3.9",
4647
"@types/shell-quote": "^1.7.1",
@@ -65,6 +66,7 @@
6566
"vinyl-fs": "^3.0.3"
6667
},
6768
"dependencies": {
69+
"ncp": "^2.0.0",
6870
"follow-redirects": "^1.14.8",
6971
"js-yaml": "^4.1.0",
7072
"jsonc-parser": "^3.0.0",

src/spec-configuration/configuration.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,11 @@ export interface HostRequirements {
2626
storage?: string;
2727
}
2828

29+
export interface DevContainerFeature {
30+
id: string;
31+
options: boolean | string | Record<string, boolean | string | undefined>;
32+
}
33+
2934
export interface DevContainerFromImageConfig {
3035
configFilePath: URI;
3136
image: string;
@@ -55,6 +60,7 @@ export interface DevContainerFromImageConfig {
5560
updateRemoteUserUID?: boolean;
5661
userEnvProbe?: UserEnvProbe;
5762
features?: Record<string, string | boolean | Record<string, string | boolean>>;
63+
overrideFeatureInstallOrder?: string[];
5864
hostRequirements?: HostRequirements;
5965
}
6066

@@ -86,6 +92,7 @@ export type DevContainerFromDockerfileConfig = {
8692
updateRemoteUserUID?: boolean;
8793
userEnvProbe?: UserEnvProbe;
8894
features?: Record<string, string | boolean | Record<string, string | boolean>>;
95+
overrideFeatureInstallOrder?: string[];
8996
hostRequirements?: HostRequirements;
9097
} & (
9198
{
@@ -133,6 +140,7 @@ export interface DevContainerFromDockerComposeConfig {
133140
updateRemoteUserUID?: boolean;
134141
userEnvProbe?: UserEnvProbe;
135142
features?: Record<string, string | boolean | Record<string, string | boolean>>;
143+
overrideFeatureInstallOrder?: string[];
136144
hostRequirements?: HostRequirements;
137145
}
138146

0 commit comments

Comments
 (0)