@@ -44,54 +44,112 @@ To add samples and stacks from other repositories, place the `extraDevfileEntrie
4444| `git`
4545| `git`
4646| The information of remote repositories.
47+
48+ | `versions`
49+ | `version[]`
50+ | The information of each stack or sample version.
51+ |===
52+
53+ .version schema
54+ [cols="3*"]
55+ |===
56+ |Name |Type |Description
57+
58+ |`version`
59+ | `string`
60+ | The stack version.
61+
62+ |`schemaVersion`
63+ | `string`
64+ | The devfile schema version.
65+
66+ |`default`
67+ | `boolean`
68+ | The default stack version.
69+
70+ | `git`
71+ | `git`
72+ | The information of remote repositories.
73+
74+ | `description`
75+ | `string`
76+ | The description of the stack version.
77+
78+ | `tags`
79+ | `string[]`
80+ | The tags associated to the stack version.
81+
82+ | `icon`
83+ | `string`
84+ | Icon of the stack version.
85+
86+ | `architectures`
87+ | `string[]`
88+ | The architectures associated to the stack version.
4789|===
4890
4991.extraDevfileEntries.yaml sample
5092
5193====
5294----
53- schemaVersion: 1 .0.0
95+ schemaVersion: 2 .0.0
5496samples:
5597 - name: nodejs-basic
56- displayName: Basic NodeJS
98+ displayName: Basic Node.js
5799 description: A simple Hello World Node.js application
58- icon: https://github.com/maysunfaisal/node-bulletin-board-2/blob/main/ nodejs-icon.png
100+ icon: https://nodejs.org/static/images/logos/ nodejs-new-pantone-black.svg
59101 tags: ["NodeJS", "Express"]
60102 projectType: nodejs
61103 language: nodejs
62- git:
63- remotes:
64- origin: https://github.com/redhat-developer/devfile-sample.git
104+ versions:
105+ - version: 1.1.0
106+ schemaVersion: 2.2.0
107+ default: true
108+ description: nodejs with devfile v2.2.0
109+ git:
110+ remotes:
111+ origin: https://github.com/nodeshift-starters/devfile-sample.git
65112 - name: code-with-quarkus
66113 displayName: Basic Quarkus
67114 description: A simple Hello World Java application using Quarkus
68- icon: .devfile/icon/ quarkus.png
115+ icon: https://design.jboss.org/ quarkus/logo/final/SVG/quarkus_icon_rgb_default.svg
69116 tags: ["Java", "Quarkus"]
70117 projectType: quarkus
71118 language: java
72- git:
73- remotes:
74- origin: https://github.com/elsony/devfile-sample-code-with-quarkus.git
119+ versions:
120+ - version: 1.1.0
121+ schemaVersion: 2.2.0
122+ default: true
123+ description: java quarkus with devfile v2.2.0
124+ git:
125+ remotes:
126+ origin: https://github.com/devfile-samples/devfile-sample-code-with-quarkus.git
127+ - version: 1.0.0
128+ schemaVersion: 2.0.0
129+ description: java quarkus with devfile v2.0.0
130+ git:
131+ remotes:
132+ origin: https://github.com/elsony/devfile-sample-code-with-quarkus.git
75133 - name: java-springboot-basic
76134 displayName: Basic Spring Boot
77135 description: A simple Hello World Java Spring Boot application using Maven
78- icon: .devfile/icon/ spring-logo.png
136+ icon: https://spring.io/images/projects/ spring-edf462fec682b9d48cf628eaf9e19521.svg
79137 tags: ["Java", "Spring"]
80138 projectType: springboot
81139 language: java
82140 git:
83141 remotes:
84- origin: https://github.com/elsony /devfile-sample-java-springboot-basic.git
142+ origin: https://github.com/devfile-samples /devfile-sample-java-springboot-basic.git
85143 - name: python-basic
86144 displayName: Basic Python
87145 description: A simple Hello World application using Python
88- icon: .devfile/icon/ python.png
146+ icon: https://www.python.org/static/community_logos/ python-logo-generic.svg
89147 tags: ["Python"]
90148 projectType: python
91149 language: python
92150 git:
93151 remotes:
94- origin: https://github.com/elsony /devfile-sample-python-basic.git
152+ origin: https://github.com/devfile-samples /devfile-sample-python-basic.git
95153----
96154====
97155
@@ -107,45 +165,80 @@ The `index.json` file contains metadata for the stacks and samples in the regist
107165| `string`
108166| The stack name.
109167
110- | `version `
111- | `string `
112- | The stack version.
168+ | `versions `
169+ | `version[] `
170+ | The information of each stack or sample version.
113171
114172| `attributes`
115173| `map[string]apiext.JSON`
116174| Map of implementation-dependant free-form YAML attributes.
117175
118176| `displayName`
119177| `string`
120- | The display name of a devfile .
178+ | The display name of a stack .
121179
122180| `description`
123181| `string`
124- | The description of a devfile .
182+ | The description of a stack .
125183
126184| `type`
127185| `DevfileType`
128- | The type of a devfile that currently supports stacks and samples .
186+ | The type: stack or sample .
129187
130188| `tags`
131189| `string[]`
132- | The tags for a devfile .
190+ | The tags for a stack .
133191
134192| `icon`
135193| `string`
136- | A devfile icon.
194+ | A stack icon.
137195
138196| `globalMemoryLimit`
139197| `string`
140- | A devfile global memory limit.
198+ | A stack global memory limit.
141199
142200| `projectType`
143201| `string`
144- | The project framework that is used in a devfile .
202+ | The project framework that is used in a stack .
145203
146- | `language`
204+ |===
205+
206+ .version schema
207+ [cols="3*"]
208+ |===
209+ |Name |Type |Description
210+
211+ |`version`
147212| `string`
148- | The project language that is used in a devfile.
213+ | The stack version.
214+
215+ |`schemaVersion`
216+ | `string`
217+ | The devfile schema version.
218+
219+ |`default`
220+ | `boolean`
221+ | The default stack version.
222+
223+ | `git`
224+ | `git`
225+ | The information of remote repositories.
226+
227+ | `description`
228+ | `string`
229+ | The description of the stack version.
230+
231+ | `tags`
232+ | `string[]`
233+ | The tags associated to the stack version.
234+
235+ | `icon`
236+ | `string`
237+ | Icon of the stack version.
238+
239+ | `architectures`
240+ | `string[]`
241+ | The architectures associated to the stack version.
149242
150243| `links`
151244| `map[string]string`
@@ -155,59 +248,110 @@ The `index.json` file contains metadata for the stacks and samples in the regist
155248| `string[]`
156249| The file resources that compose a devfile stack.
157250
158- | `tarterProjects `
251+ | `starterProjects `
159252| `string[]`
160253| The project templates that can be used in a devfile.
161-
162- | `git`
163- | `git`
164- | The information of remote repositories.
165-
166254|===
167255
168256.Index.json sample
169257
170258====
171259----
172260[
261+ {
262+ "name": "go",
263+ "displayName": "Go Runtime",
264+ "description": "Stack with the latest Go version",
265+ "type": "stack",
266+ "tags": [
267+ "Go",
268+ "testtag"
269+ ],
270+ "icon": "https://raw.githubusercontent.com/devfile-samples/devfile-stack-icons/main/golang.svg",
271+ "projectType": "go",
272+ "language": "go",
273+ "provider": "Red Hat",
274+ "versions": [
275+ {
276+ "version": "1.1.0",
277+ "schemaVersion": "2.0.0",
278+ "default": true,
279+ "description": "Stack with the latest Go version with devfile v2.0.0 schema verison",
280+ "tags": [
281+ "Go"
282+ ],
283+ "icon": "https://raw.githubusercontent.com/devfile-samples/devfile-stack-icons/main/golang.svg",
284+ "links": {
285+ "self": "devfile-catalog/go:1.1.0"
286+ },
287+ "resources": [
288+ "devfile.yaml"
289+ ],
290+ "starterProjects": [
291+ "go-starter"
292+ ]
293+ },
294+ {
295+ "version": "1.2.0",
296+ "schemaVersion": "2.1.0",
297+ "description": "Stack with the latest Go version with devfile v2.1.0 schema verison",
298+ "tags": [
299+ "testtag"
300+ ],
301+ "icon": "https://raw.githubusercontent.com/devfile-samples/devfile-stack-icons/main/golang.svg",
302+ "links": {
303+ "self": "devfile-catalog/go:1.2.0"
304+ },
305+ "resources": [
306+ "devfile.yaml"
307+ ],
308+ "starterProjects": [
309+ "go-starter"
310+ ]
311+ }
312+ ]
313+ },
173314 {
174315 "name": "java-maven",
175- "version": "1.1.0",
176316 "displayName": "Maven Java",
177317 "description": "Upstream Maven and OpenJDK 11",
178318 "type": "stack",
179319 "tags": [
180320 "Java",
181321 "Maven"
182322 ],
183- "projectType": "maven",
184- "language": "java",
185- "links": {
186- "self": "devfile-catalog/java-maven:latest"
187- },
188- "resources": [
189- "devfile.yaml"
323+ "architectures": [
324+ "amd64",
325+ "arm64",
326+ "s390x"
190327 ],
191- "starterProjects": [
192- "springbootproject"
193- ]
194- },
195- {
196- "name": "java-openliberty",
197- "version": "0.5.0",
198- "displayName": "Open Liberty",
199- "description": "Java application stack using Open Liberty runtime",
200- "type": "stack",
201- "projectType": "docker",
328+ "projectType": "maven",
202329 "language": "java",
203- "links": {
204- "self": "devfile-catalog/java-openliberty:latest"
205- },
206- "resources": [
207- "devfile.yaml"
208- ],
209- "starterProjects": [
210- "user-app"
330+ "versions": [
331+ {
332+ "version": "1.1.0",
333+ "schemaVersion": "2.1.0",
334+ "default": true,
335+ "description": "Upstream Maven and OpenJDK 11",
336+ "tags": [
337+ "Java",
338+ "Maven"
339+ ],
340+ "architectures": [
341+ "amd64",
342+ "arm64",
343+ "s390x"
344+ ],
345+ "links": {
346+ "self": "devfile-catalog/java-maven:1.1.0"
347+ },
348+ "resources": [
349+ "devfile.yaml"
350+ ],
351+ "starterProjects": [
352+ "springbootproject"
353+ ]
354+ }
211355 ]
212356 }
213357]
0 commit comments