Skip to content

Commit 40aad56

Browse files
dgrove-ossmtt-merz
authored andcommitted
Refresh runtimes list: add new versions; remove old/deprecated versions (apache#5426)
(cherry picked from commit 54564cb)
1 parent 2ee4ac4 commit 40aad56

File tree

28 files changed

+113
-216
lines changed

28 files changed

+113
-216
lines changed

ansible/files/runtimes-nodeonly.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"This file describes the different languages (aka. managed action runtimes) supported by the system",
44
"as well as blackbox images that support the runtime specification.",
55
"Only actions with runtime families / kinds defined here can be created / read / updated / deleted / invoked.",
6-
"Define a list of runtime families (example: 'nodejs') with at least one kind per family (example: 'nodejs:14').",
6+
"Define a list of runtime families (example: 'nodejs') with at least one kind per family (example: 'nodejs:20').",
77
"Each runtime family needs a default kind (default: true).",
88
"When removing or renaming runtime families or runtime kinds from this file, preexisting actions",
99
"with the affected kinds can no longer be read / updated / deleted / invoked. In order to remove or rename",
@@ -16,11 +16,11 @@
1616
"runtimes": {
1717
"nodejs": [
1818
{
19-
"kind": "nodejs:14",
19+
"kind": "nodejs:20",
2020
"default": true,
2121
"image": {
2222
"prefix": "openwhisk",
23-
"name": "action-nodejs-v14",
23+
"name": "action-nodejs-v20",
2424
"tag": "nightly"
2525
},
2626
"deprecated": false,

ansible/files/runtimes.json

Lines changed: 25 additions & 124 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"This file describes the different languages (aka. managed action runtimes) supported by the system",
44
"as well as blackbox images that support the runtime specification.",
55
"Only actions with runtime families / kinds defined here can be created / read / updated / deleted / invoked.",
6-
"Define a list of runtime families (example: 'nodejs') with at least one kind per family (example: 'nodejs:14').",
6+
"Define a list of runtime families (example: 'nodejs') with at least one kind per family (example: 'nodejs:20').",
77
"Each runtime family needs a default kind (default: true).",
88
"When removing or renaming runtime families or runtime kinds from this file, preexisting actions",
99
"with the affected kinds can no longer be read / updated / deleted / invoked. In order to remove or rename",
@@ -15,11 +15,25 @@
1515
"runtimes": {
1616
"nodejs": [
1717
{
18-
"kind": "nodejs:14",
18+
"kind": "nodejs:18",
19+
"default": false,
20+
"image": {
21+
"prefix": "openwhisk",
22+
"name": "action-nodejs-v18",
23+
"tag": "nightly"
24+
},
25+
"deprecated": false,
26+
"attached": {
27+
"attachmentName": "codefile",
28+
"attachmentType": "text/plain"
29+
}
30+
},
31+
{
32+
"kind": "nodejs:20",
1933
"default": true,
2034
"image": {
2135
"prefix": "openwhisk",
22-
"name": "action-nodejs-v14",
36+
"name": "action-nodejs-v20",
2337
"tag": "nightly"
2438
},
2539
"deprecated": false,
@@ -40,43 +54,15 @@
4054
}
4155
}
4256
]
43-
},
44-
{
45-
"kind": "nodejs:16",
46-
"default": false,
47-
"image": {
48-
"prefix": "openwhisk",
49-
"name": "action-nodejs-v16",
50-
"tag": "nightly"
51-
},
52-
"deprecated": false,
53-
"attached": {
54-
"attachmentName": "codefile",
55-
"attachmentType": "text/plain"
56-
}
57-
},
58-
{
59-
"kind": "nodejs:18",
60-
"default": false,
61-
"image": {
62-
"prefix": "openwhisk",
63-
"name": "action-nodejs-v18",
64-
"tag": "nightly"
65-
},
66-
"deprecated": false,
67-
"attached": {
68-
"attachmentName": "codefile",
69-
"attachmentType": "text/plain"
70-
}
7157
}
7258
],
7359
"python": [
7460
{
75-
"kind": "python:3",
61+
"kind": "python:3.10",
7662
"default": true,
7763
"image": {
7864
"prefix": "openwhisk",
79-
"name": "action-python-v3.7",
65+
"name": "action-python-v3.10",
8066
"tag": "nightly"
8167
},
8268
"deprecated": false,
@@ -86,11 +72,11 @@
8672
}
8773
},
8874
{
89-
"kind": "python:3.10",
75+
"kind": "python:3.11",
9076
"default": false,
9177
"image": {
9278
"prefix": "openwhisk",
93-
"name": "action-python-v3.10",
79+
"name": "action-python-v3.11",
9480
"tag": "nightly"
9581
},
9682
"deprecated": false,
@@ -101,20 +87,6 @@
10187
}
10288
],
10389
"swift": [
104-
{
105-
"kind": "swift:5.1",
106-
"default": false,
107-
"image": {
108-
"prefix": "openwhisk",
109-
"name": "action-swift-v5.1",
110-
"tag": "nightly"
111-
},
112-
"deprecated": false,
113-
"attached": {
114-
"attachmentName": "codefile",
115-
"attachmentType": "text/plain"
116-
}
117-
},
11890
{
11991
"kind": "swift:5.3",
12092
"default": true,
@@ -130,11 +102,11 @@
130102
}
131103
},
132104
{
133-
"kind": "swift:5.4",
105+
"kind": "swift:5.7",
134106
"default": false,
135107
"image": {
136108
"prefix": "openwhisk",
137-
"name": "action-swift-v5.4",
109+
"name": "action-swift-v5.7",
138110
"tag": "nightly"
139111
},
140112
"deprecated": false,
@@ -162,51 +134,9 @@
162134
}
163135
],
164136
"php": [
165-
{
166-
"kind": "php:7.3",
167-
"default": false,
168-
"deprecated": true,
169-
"image": {
170-
"prefix": "openwhisk",
171-
"name": "action-php-v7.3",
172-
"tag": "nightly"
173-
},
174-
"attached": {
175-
"attachmentName": "codefile",
176-
"attachmentType": "text/plain"
177-
}
178-
},
179-
{
180-
"kind": "php:7.4",
181-
"default": true,
182-
"deprecated": false,
183-
"image": {
184-
"prefix": "openwhisk",
185-
"name": "action-php-v7.4",
186-
"tag": "nightly"
187-
},
188-
"attached": {
189-
"attachmentName": "codefile",
190-
"attachmentType": "text/plain"
191-
}
192-
},
193-
{
194-
"kind": "php:8.0",
195-
"default": false,
196-
"deprecated": false,
197-
"image": {
198-
"prefix": "openwhisk",
199-
"name": "action-php-v8.0",
200-
"tag": "nightly"
201-
},
202-
"attached": {
203-
"attachmentName": "codefile",
204-
"attachmentType": "text/plain"
205-
}
206-
},
207137
{
208138
"kind": "php:8.1",
209-
"default": false,
139+
"default": true,
210140
"deprecated": false,
211141
"image": {
212142
"prefix": "openwhisk",
@@ -236,23 +166,9 @@
236166
}
237167
],
238168
"go": [
239-
{
240-
"kind": "go:1.17",
241-
"default": true,
242-
"deprecated": false,
243-
"attached": {
244-
"attachmentName": "codefile",
245-
"attachmentType": "text/plain"
246-
},
247-
"image": {
248-
"prefix": "openwhisk",
249-
"name": "action-golang-v1.17",
250-
"tag": "nightly"
251-
}
252-
},
253169
{
254170
"kind": "go:1.20",
255-
"default": false,
171+
"default": true,
256172
"deprecated": false,
257173
"attached": {
258174
"attachmentName": "codefile",
@@ -266,21 +182,6 @@
266182
}
267183
],
268184
"dotnet": [
269-
{
270-
"kind": "dotnet:2.2",
271-
"default": false,
272-
"deprecated": true,
273-
"requireMain": true,
274-
"image": {
275-
"prefix": "openwhisk",
276-
"name": "action-dotnet-v2.2",
277-
"tag": "nightly"
278-
},
279-
"attached": {
280-
"attachmentName": "codefile",
281-
"attachmentType": "text/plain"
282-
}
283-
},
284185
{
285186
"kind": "dotnet:3.1",
286187
"default": true,

core/controller/src/main/resources/apiv1swagger.json

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2001,29 +2001,23 @@
20012001
"blackbox",
20022002
"java:8",
20032003
"java:default",
2004-
"nodejs:14",
20052004
"nodejs:16",
20062005
"nodejs:18",
2006+
"nodejs:20",
20072007
"nodejs:default",
2008-
"php:7.3",
2009-
"php:7.4",
2010-
"php:8.0",
20112008
"php:8.1",
20122009
"php:default",
2013-
"python:3",
20142010
"python:3.10",
2011+
"python:3.11",
20152012
"python:default",
20162013
"ruby:2.5",
20172014
"ruby:default",
2018-
"go:1.17",
20192015
"go:1.20",
20202016
"go:default",
20212017
"sequence",
2022-
"swift:5.1",
20232018
"swift:5.3",
2024-
"swift:5.4",
2019+
"swift:5.7",
20252020
"swift:default",
2026-
"dotnet:2.2",
20272021
"dotnet:3.1",
20282022
"dotnet:6.0",
20292023
"dotnet:default",

core/monitoring/user-events/src/test/scala/org/apache/openwhisk/core/monitoring/metrics/KamonRecorderTests.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ class KamonRecorderTests extends KafkaSpecBase with BeforeAndAfterEach with Kamo
6262
val namespaceGuest = "guest"
6363
val actionWithCustomPackage = "apimgmt/createApi"
6464
val actionWithDefaultPackage = "createApi"
65-
val kind = "nodejs:14"
65+
val kind = "nodejs:20"
6666
val memory = 256
6767

6868
it should "push user events to kamon" in {

core/monitoring/user-events/src/test/scala/org/apache/openwhisk/core/monitoring/metrics/PrometheusRecorderTests.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ class PrometheusRecorderTests extends KafkaSpecBase with BeforeAndAfterEach with
3838
val namespaceGuest = "guest"
3939
val actionWithCustomPackage = "apimgmt/createApiOne"
4040
val actionWithDefaultPackage = "createApi"
41-
val kind = "nodejs:14"
41+
val kind = "nodejs:20"
4242
val memory = "256"
4343
createCustomTopic(EventConsumer.userEventTopic)
4444

core/standalone/bin/waitready

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ wsk property set --apihost "http://$(hostname):3233" --auth "$AUTH"
2020
until wsk action list 2>/dev/null >/dev/null
2121
do sleep 1 ; echo server still not ready - retrying
2222
done
23-
wsk action update testme <(echo 'function main(){return {"ready":true}}') --kind nodejs:14
23+
wsk action update testme <(echo 'function main(){return {"ready":true}}') --kind nodejs:20
2424
until wsk action invoke testme -r 2>/dev/null | grep 'ready'
2525
do sleep 1 ; echo server initializing...
2626
done

core/standalone/src/main/scala/org/apache/openwhisk/standalone/StandaloneOpenWhisk.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -175,11 +175,11 @@ object StandaloneOpenWhisk extends SLF4JLogging {
175175
| "runtimes": {
176176
| "nodejs": [
177177
| {
178-
| "kind": "nodejs:14",
178+
| "kind": "nodejs:20",
179179
| "default": true,
180180
| "image": {
181181
| "prefix": "openwhisk",
182-
| "name": "action-nodejs-v14",
182+
| "name": "action-nodejs-v20",
183183
| "tag": "latest"
184184
| },
185185
| "deprecated": false,

docs/actions-new.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -61,21 +61,21 @@ Further, you should automate and pass the following test suites:
6161
Actions when created specify the desired runtime for the function via a property called "kind".
6262
When using the `wsk` CLI, this is specified as `--kind <runtime-kind>`. The value is typically
6363
a string describing the language (e.g., `nodejs`) followed by a colon and the version for the runtime
64-
as in `nodejs:14` or `php:7.4`.
64+
as in `nodejs:20` or `php:8.1`.
6565

6666
The manifest is a map of runtime family names to an array of specific kinds. The details of the
6767
schema are found in the [Exec Manifest](../common/scala/src/main/scala/org/apache/openwhisk/core/entity/ExecManifest.scala).
6868
As an example, the following entry add a new runtime family called `nodejs` with a single kind
69-
`nodejs:14`.
69+
`nodejs:20`.
7070

7171
```json
7272
{
7373
"nodejs": [{
74-
"kind": "nodejs:14",
74+
"kind": "nodejs:20",
7575
"default": true,
7676
"image": {
7777
"prefix": "openwhisk",
78-
"name": "action-nodejs-v10",
78+
"name": "action-nodejs-v20",
7979
"tag": "latest"
8080
}
8181
}]
@@ -113,7 +113,7 @@ new language and added to the [test artifacts directory](../tests/dat/actions/un
113113
with the name `<runtime-kind>.txt` for plain text file or `<runtime-kind>.bin` for a
114114
a binary file. The `<runtime-kind>` must match the value used for `kind` in the corresponding
115115
runtime manifest entry, replacing `:` in the kind with a `-`.
116-
For example, a plain text function for `nodejs:14` becomes `nodejs-14.txt`.
116+
For example, a plain text function for `nodejs:20` becomes `nodejs-20.txt`.
117117

118118
```js
119119
function main(args) {

0 commit comments

Comments
 (0)