Andrew Clayton
07a0c9a348
Wasm-wc: Wire up the language module to the config system
...
This exposes the various WebAssembly Component Model language module
specific options.
The application type is "wasm-wasi-component".
There is a "component" option that is required, this specifies the full
path to the WebAssembly component to be run. This component should be in
binary format, i.e a .wasm file.
There is also currently one optional option
"access"
Due to the sandboxed nature of WebAssembly, by default Wasm
modules/components don't have any access to the underlying filesystem.
There is however a capabilities based mechanism[0] for allowing such
access.
This adds a config option to the 'wasm-wasi-component' application type
(same as for 'wasm');
'access.filesystem' which takes an array of
directory paths that are then made available to the wasm
module/component. This access works recursively, i.e everything under a
specific path is allowed access to.
Example config might look like
"applications": {
"my-wasm-component": {
"type": "wasm-wasi-component",
"component": "/path/to/component.wasm",
"access" {
"filesystem": [
"/tmp",
"/var/tmp"
]
}
}
}
The actual mechanism used allows directories to be mapped differently in
the guest. But at the moment we don't support that and just map say /tmp
to /tmp. This can be revisited if it's something users clamour for.
[0]: <https://github.com/bytecodealliance/wasmtime/blob/main/docs/WASI-capabilities.md >
Signed-off-by: Andrew Clayton <a.clayton@nginx.com >
2024-02-21 16:20:32 +00:00
..
2024-01-16 15:37:07 +00:00
2024-02-20 12:35:07 +00:00
2023-03-10 21:40:28 +00:00
2024-02-21 14:06:43 +00:00
2023-12-13 03:20:25 +00:00
2024-02-20 16:08:36 +00:00
2023-10-10 20:44:07 +01:00
2024-02-21 16:20:32 +00:00
2017-02-22 15:09:59 +03:00
2021-03-24 08:05:07 +03:00
2020-08-11 19:20:34 +03:00
2020-12-18 00:25:27 +03:00
2024-02-21 16:20:32 +00:00
2024-02-21 16:20:32 +00:00
2020-08-13 02:46:54 +03:00
2022-05-03 12:11:14 +02:00
2023-11-10 02:59:49 +00:00
2020-02-03 11:14:14 +03:00
2022-05-03 12:11:14 +02:00
2021-08-03 13:59:27 +03:00
2022-05-03 12:11:14 +02:00
2022-10-28 03:18:33 +01:00
2020-05-28 14:57:41 +01:00
2022-02-14 20:14:03 +08:00
2020-03-09 16:28:25 +00:00
2022-12-10 14:00:20 +00:00
2022-12-10 14:00:20 +00:00
2022-05-03 12:11:14 +02:00
2024-01-30 01:27:25 +00:00
2024-01-30 01:27:25 +00:00
2024-02-21 16:20:32 +00:00
2024-02-05 18:37:21 +01:00
2024-02-05 18:37:21 +01:00
2022-08-29 14:27:09 +08:00
2022-09-22 01:01:18 +08:00
2020-04-08 15:15:24 +03:00
2017-06-27 17:27:18 +03:00
2019-11-14 16:39:48 +03:00
2024-02-19 22:02:49 +00:00
2018-09-20 15:05:37 +03:00
2022-09-22 01:01:18 +08:00
2023-10-02 09:43:57 +01:00
2023-11-02 17:07:34 +08:00
2019-12-06 16:52:50 +00:00
2018-03-05 17:32:50 +03:00
2018-03-05 17:32:50 +03:00
2017-01-17 20:00:00 +03:00
2022-05-03 12:11:14 +02:00
2017-01-17 20:00:00 +03:00
2022-05-03 12:11:14 +02:00
2020-04-15 14:54:09 +03:00
2022-11-04 00:30:27 +01:00
2022-05-03 12:11:14 +02:00
2019-02-28 18:04:11 +03:00
2021-08-03 13:59:27 +03:00
2022-08-29 14:32:20 +08:00
2018-03-05 17:32:50 +03:00
2021-11-24 13:11:47 +03:00
2018-03-29 16:35:36 +03:00
2022-05-03 12:11:14 +02:00
2022-05-03 12:11:14 +02:00
2017-01-30 16:47:50 +03:00
2017-06-14 15:18:52 +03:00
2017-06-20 19:49:17 +03:00
2017-06-20 19:49:17 +03:00
2024-02-19 12:59:29 +00:00
2024-02-19 12:59:29 +00:00
2017-02-22 15:09:59 +03:00
2022-10-14 12:25:47 +01:00
2022-10-14 12:25:47 +01:00
2023-04-03 14:53:04 +01:00
2022-10-14 12:25:47 +01:00
2017-01-17 20:00:00 +03:00
2022-04-26 12:38:48 +02:00
2021-09-20 09:01:08 +03:00
2023-07-01 12:18:22 +08:00
2023-07-01 12:18:22 +08:00
2017-01-17 20:00:00 +03:00
2019-03-11 17:31:59 +03:00
2022-05-03 12:11:14 +02:00
2019-11-14 16:39:54 +03:00
2024-02-20 06:09:23 +08:00
2023-04-20 23:20:41 +08:00
2023-04-20 23:20:41 +08:00
2021-07-26 15:00:46 +08:00
2024-01-29 13:48:53 +08:00
2020-04-16 17:09:23 +03:00
2022-11-20 23:16:51 +08:00
2023-10-05 13:38:15 +01:00
2022-11-04 00:30:50 +01:00
2022-07-26 16:24:33 +02:00
2023-08-09 14:37:16 +08:00
2023-08-09 14:37:16 +08:00
2024-02-05 18:37:32 +01:00
2024-02-20 06:09:23 +08:00
2020-08-11 19:20:34 +03:00
2023-08-09 14:37:16 +08:00
2024-01-30 01:27:25 +00:00
2022-08-18 15:43:03 +02:00
2021-10-28 17:46:54 +03:00
2017-06-20 19:49:17 +03:00
2023-04-03 14:53:04 +01:00
2022-05-03 12:11:14 +02:00
2024-02-20 06:09:23 +08:00
2023-05-08 16:00:25 +08:00
2023-04-24 19:40:16 +01:00
2020-10-14 18:41:31 +03:00
2018-01-24 15:16:33 +03:00
2017-06-28 23:52:07 +03:00
2022-05-03 12:11:14 +02:00
2024-02-19 12:59:58 +00:00
2020-04-08 15:15:24 +03:00
2020-04-15 14:54:09 +03:00
2022-05-03 12:11:14 +02:00
2021-03-24 08:05:07 +03:00
2022-05-03 12:11:14 +02:00
2022-05-03 12:11:14 +02:00
2022-05-03 12:11:14 +02:00
2017-06-14 15:18:52 +03:00
2024-02-21 16:20:32 +00:00
2021-11-09 15:48:44 +03:00
2021-12-01 17:09:02 +03:00
2023-06-19 16:29:22 +08:00
2022-02-22 19:18:18 +08:00
2022-05-03 12:11:14 +02:00
2017-01-17 20:00:00 +03:00
2022-05-03 12:11:14 +02:00
2023-04-03 14:53:04 +01:00
2022-05-03 12:11:14 +02:00
2022-06-22 00:30:44 +02:00
2020-08-13 02:46:54 +03:00
2018-04-04 18:13:05 +03:00
2017-01-17 20:00:00 +03:00
2022-07-18 19:09:30 +02:00
2022-07-18 19:09:30 +02:00
2024-01-16 15:37:07 +00:00
2017-04-10 03:43:00 +03:00
2017-01-17 20:00:00 +03:00
2021-05-05 17:23:33 +08:00
2020-11-17 15:03:30 +00:00
2023-11-15 03:34:49 +00:00
2018-03-05 17:32:50 +03:00
2019-03-11 17:31:59 +03:00
2018-03-05 17:32:50 +03:00
2018-03-29 16:35:38 +03:00
2018-03-29 16:35:38 +03:00
2022-06-22 00:30:44 +02:00
2022-06-07 13:59:45 +08:00
2022-06-07 13:59:45 +08:00
2020-08-11 19:20:34 +03:00
2022-06-07 13:59:45 +08:00
2020-05-28 12:41:00 +03:00
2022-06-22 00:30:44 +02:00
2022-10-28 03:18:33 +01:00
2023-05-08 16:00:25 +08:00
2017-03-14 19:03:49 +03:00
2021-11-09 15:48:44 +03:00
2023-04-11 19:08:32 +01:00
2023-05-08 16:00:25 +08:00
2017-01-17 20:00:00 +03:00
2022-05-03 12:11:14 +02:00
2018-07-27 17:52:21 +03:00
2017-08-30 00:31:02 +03:00
2017-05-29 10:17:36 +03:00
2017-03-14 19:02:30 +03:00
2017-01-17 20:00:00 +03:00
2017-01-17 20:00:00 +03:00
2020-11-17 15:03:30 +00:00
2024-01-29 13:48:53 +08:00
2021-03-25 14:16:30 +03:00
2024-02-21 16:20:32 +00:00
2024-01-29 13:48:53 +08:00
2024-02-19 12:59:58 +00:00
2024-02-19 12:59:58 +00:00
2023-05-08 16:00:25 +08:00
2023-05-08 16:00:25 +08:00
2017-06-14 15:18:52 +03:00
2017-01-17 20:00:00 +03:00
2017-01-17 20:00:00 +03:00
2019-11-14 16:39:48 +03:00
2018-09-20 15:05:37 +03:00
2018-03-05 17:32:50 +03:00
2022-05-03 12:11:14 +02:00
2019-08-20 16:31:53 +03:00
2019-08-20 16:31:53 +03:00
2023-09-07 23:13:34 +01:00
2017-08-24 17:43:32 +03:00
2022-05-03 12:11:14 +02:00
2022-11-04 00:30:50 +01:00
2022-08-11 18:43:12 +02:00
2021-11-09 15:48:44 +03:00
2023-09-11 16:59:27 +01:00
2024-01-16 15:37:07 +00:00
2022-05-03 12:11:14 +02:00
2021-11-09 15:48:44 +03:00
2017-02-22 15:09:59 +03:00
2017-01-17 20:00:00 +03:00
2022-05-03 12:11:14 +02:00
2018-09-17 16:37:17 +03:00
2018-09-17 16:37:17 +03:00
2023-10-10 14:30:02 +08:00
2017-01-17 20:00:00 +03:00
2022-09-06 09:40:54 +08:00
2022-08-29 14:32:20 +08:00
2022-11-04 00:30:27 +01:00
2022-11-04 00:30:50 +01:00
2017-01-17 20:00:00 +03:00
2017-01-17 20:00:00 +03:00
2018-03-05 17:32:50 +03:00
2022-05-03 12:11:14 +02:00
2018-03-05 17:32:50 +03:00
2018-03-05 17:32:50 +03:00
2018-01-24 15:16:33 +03:00
2017-01-27 11:35:11 +03:00
2017-08-24 17:43:32 +03:00
2022-05-03 12:11:14 +02:00
2018-07-27 17:52:21 +03:00
2022-05-03 12:11:14 +02:00
2022-06-22 00:30:44 +02:00
2017-01-17 20:00:00 +03:00
2022-05-03 12:11:14 +02:00
2019-02-26 17:42:20 +03:00
2019-03-11 17:31:59 +03:00
2021-10-26 15:43:44 +03:00
2023-06-30 14:38:34 +02:00
2023-06-19 16:29:22 +08:00
2018-06-25 16:51:47 +03:00
2018-04-04 18:13:05 +03:00
2019-03-11 17:31:59 +03:00
2018-04-04 18:13:05 +03:00
2019-11-14 16:39:54 +03:00
2022-11-02 14:22:39 +00:00
2018-08-06 17:27:33 +03:00
2018-08-06 17:27:33 +03:00
2019-08-20 16:31:53 +03:00
2019-08-20 16:31:53 +03:00
2023-09-28 15:21:16 +01:00
2023-11-14 16:48:16 +00:00
2022-07-18 19:09:30 +02:00
2020-03-30 19:47:01 +03:00
2021-09-07 21:13:44 +08:00
2020-03-06 18:28:54 +03:00
2018-04-04 18:13:05 +03:00
2018-04-04 18:13:05 +03:00
2024-02-20 06:09:23 +08:00
2024-02-20 06:09:23 +08:00
2017-06-27 17:27:18 +03:00
2022-05-03 12:11:14 +02:00
2022-06-22 00:30:44 +02:00
2023-01-12 17:56:00 +00:00
2019-10-10 19:42:41 +03:00
2019-08-20 16:31:53 +03:00
2018-02-07 15:34:42 +03:00
2022-05-03 12:11:14 +02:00
2023-08-01 10:16:17 -07:00