@eclipse-che/che-devworkspace-generator 0.0.1-25f630b → 0.0.1-a00c266
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -0
- package/lib/main.d.ts +2 -1
- package/lib/main.js +4 -5
- package/lib/main.js.map +1 -1
- package/package.json +1 -1
- package/src/main.ts +26 -21
package/README.md
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
## DevWorkspace Generator
|
|
2
|
+
The library is used by Devfile registry component to generate the DevWorkspace components and DevWorkspace templates.
|
|
3
|
+
|
|
4
|
+
## How to use the library
|
|
5
|
+
The library could be used as a standalone library.
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
USAGE
|
|
9
|
+
$ node lib/entrypoint.js [OPTIONS]
|
|
10
|
+
|
|
11
|
+
OPTIONS
|
|
12
|
+
--devfile-path path to the devfile.yaml file
|
|
13
|
+
--devfile-url URL to the git repository that contains devfile.yaml
|
|
14
|
+
--plugin-registry-url URL to the plugin registry that contains an editor's definition
|
|
15
|
+
--editor-entry editor's ID
|
|
16
|
+
--editor-path: path to the editor's devfile.yaml file
|
|
17
|
+
--output-file path to the file where the generated content will be stored
|
|
18
|
+
--project. describes project entry
|
|
19
|
+
|
|
20
|
+
EXAMPLE
|
|
21
|
+
|
|
22
|
+
$ node lib/entrypoint.js --devfile-url:https://github.com/che-samples/java-spring-petclinic/tree/main --editor-entry:che-incubator/che-code/insiders --plugin-registry-url:https://che-plugin-registry-main.surge.sh/v3/ --output-file:/tmp/all-in-one.yaml`
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
The file `/tmp/all-in-one.yaml` contains a DevWorkspace based on the repository devfile and a Che-Code DevWorkspaceTemplate.
|
|
26
|
+
If DevWorkspace engine is available on the cluster, the following command will create a DevWorkspace:
|
|
27
|
+
|
|
28
|
+
`$ kubectl apply -f /tmp/all-in-one.yaml`
|
package/lib/main.d.ts
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
*
|
|
8
8
|
* SPDX-License-Identifier: EPL-2.0
|
|
9
9
|
***********************************************************************/
|
|
10
|
+
import * as axios from 'axios';
|
|
10
11
|
import { DevfileContext } from './api/devfile-context';
|
|
11
12
|
export declare class Main {
|
|
12
13
|
/**
|
|
@@ -25,7 +26,7 @@ export declare class Main {
|
|
|
25
26
|
name: string;
|
|
26
27
|
location: string;
|
|
27
28
|
}[];
|
|
28
|
-
}): Promise<DevfileContext>;
|
|
29
|
+
}, axiosInstance: axios.AxiosInstance): Promise<DevfileContext>;
|
|
29
30
|
replaceIfExistingProjects(devfileContent: string, projects: {
|
|
30
31
|
name: string;
|
|
31
32
|
location: string;
|
package/lib/main.js
CHANGED
|
@@ -81,9 +81,9 @@ var Main = /** @class */ (function () {
|
|
|
81
81
|
// no-op
|
|
82
82
|
}
|
|
83
83
|
// Generates a devfile context object based on params
|
|
84
|
-
Main.prototype.generateDevfileContext = function (params) {
|
|
84
|
+
Main.prototype.generateDevfileContext = function (params, axiosInstance) {
|
|
85
85
|
return __awaiter(this, void 0, void 0, function () {
|
|
86
|
-
var devfilePath, devfileUrl, outputFile, editorPath, pluginRegistryUrl, editorEntry, projects,
|
|
86
|
+
var devfilePath, devfileUrl, outputFile, editorPath, pluginRegistryUrl, editorEntry, projects, inversifyBinbding, container, devfileContent, editorContent, githubResolver, githubUrl, devfileParsed, editorDevfile, generate;
|
|
87
87
|
return __generator(this, function (_a) {
|
|
88
88
|
switch (_a.label) {
|
|
89
89
|
case 0:
|
|
@@ -94,11 +94,10 @@ var Main = /** @class */ (function () {
|
|
|
94
94
|
if (!devfilePath && !devfileUrl && !params.devfileContent) {
|
|
95
95
|
throw new Error('missing devfilePath or devfileUrl or devfileContent');
|
|
96
96
|
}
|
|
97
|
-
if (
|
|
97
|
+
if (!pluginRegistryUrl) {
|
|
98
98
|
pluginRegistryUrl = 'https://eclipse-che.github.io/che-plugin-registry/main/v3';
|
|
99
99
|
console.log("No plug-in registry url. Setting to " + pluginRegistryUrl);
|
|
100
100
|
}
|
|
101
|
-
axiosInstance = axios["default"];
|
|
102
101
|
inversifyBinbding = new inversify_binding_1.InversifyBinding();
|
|
103
102
|
return [4 /*yield*/, inversifyBinbding.initBindings({
|
|
104
103
|
pluginRegistryUrl: pluginRegistryUrl,
|
|
@@ -240,7 +239,7 @@ var Main = /** @class */ (function () {
|
|
|
240
239
|
pluginRegistryUrl: pluginRegistryUrl,
|
|
241
240
|
editorEntry: editorEntry,
|
|
242
241
|
projects: projects
|
|
243
|
-
})];
|
|
242
|
+
}, axios["default"])];
|
|
244
243
|
case 2:
|
|
245
244
|
_a.sent();
|
|
246
245
|
return [2 /*return*/, true];
|
package/lib/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";AAAA;;;;;;;;yEAQyE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEzE,2CAA+B;AAC/B,2CAA+B;AAC/B,uCAAsC;AACtC,4DAA0D;AAC1D,8CAAkC;AAClC,mEAAiE;AACjE,mDAAiD;AACjD,uFAAoF;AAIpF;IACE;;OAEG;IACH;QACE,QAAQ;IACV,CAAC;IACD,qDAAqD;IACxC,qCAAsB,GAAnC,
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/main.ts
CHANGED
|
@@ -27,16 +27,19 @@ export class Main {
|
|
|
27
27
|
// no-op
|
|
28
28
|
}
|
|
29
29
|
// Generates a devfile context object based on params
|
|
30
|
-
public async generateDevfileContext(
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
30
|
+
public async generateDevfileContext(
|
|
31
|
+
params: {
|
|
32
|
+
devfilePath?: string;
|
|
33
|
+
devfileUrl?: string;
|
|
34
|
+
devfileContent?: string;
|
|
35
|
+
outputFile?: string;
|
|
36
|
+
editorPath?: string;
|
|
37
|
+
pluginRegistryUrl?: string;
|
|
38
|
+
editorEntry?: string;
|
|
39
|
+
projects: { name: string; location: string }[];
|
|
40
|
+
},
|
|
41
|
+
axiosInstance: axios.AxiosInstance
|
|
42
|
+
): Promise<DevfileContext> {
|
|
40
43
|
let { devfilePath, devfileUrl, outputFile, editorPath, pluginRegistryUrl, editorEntry, projects } = params;
|
|
41
44
|
|
|
42
45
|
if (!editorPath && !editorEntry) {
|
|
@@ -45,12 +48,11 @@ export class Main {
|
|
|
45
48
|
if (!devfilePath && !devfileUrl && !params.devfileContent) {
|
|
46
49
|
throw new Error('missing devfilePath or devfileUrl or devfileContent');
|
|
47
50
|
}
|
|
48
|
-
if (
|
|
51
|
+
if (!pluginRegistryUrl) {
|
|
49
52
|
pluginRegistryUrl = 'https://eclipse-che.github.io/che-plugin-registry/main/v3';
|
|
50
53
|
console.log(`No plug-in registry url. Setting to ${pluginRegistryUrl}`);
|
|
51
54
|
}
|
|
52
55
|
|
|
53
|
-
const axiosInstance = axios.default;
|
|
54
56
|
const inversifyBinbding = new InversifyBinding();
|
|
55
57
|
const container = await inversifyBinbding.initBindings({
|
|
56
58
|
pluginRegistryUrl,
|
|
@@ -182,15 +184,18 @@ export class Main {
|
|
|
182
184
|
if (!outputFile) {
|
|
183
185
|
throw new Error('missing --output-file: parameter');
|
|
184
186
|
}
|
|
185
|
-
await this.generateDevfileContext(
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
187
|
+
await this.generateDevfileContext(
|
|
188
|
+
{
|
|
189
|
+
devfilePath,
|
|
190
|
+
devfileUrl,
|
|
191
|
+
editorPath,
|
|
192
|
+
outputFile,
|
|
193
|
+
pluginRegistryUrl,
|
|
194
|
+
editorEntry,
|
|
195
|
+
projects,
|
|
196
|
+
},
|
|
197
|
+
axios.default
|
|
198
|
+
);
|
|
194
199
|
return true;
|
|
195
200
|
} catch (error) {
|
|
196
201
|
console.error('stack=' + error.stack);
|