envoyproxy/envoy

Expose files to wasm extensions

オープン

#22,557 opened on 2022/08/04

 (15 件のコメント) (8 件のリアクション) (0 人の担当者)C++ (5,373 件のフォーク)batch import
enhancementhelp wanted

Repository metrics

Stars
 (27,997 個のスター)
PR merge metrics
 (PR metrics pending)

説明

Title: Allow files to be specified when enabling a wasm plugin which will be accessible via wasi.

Description:

It can be useful to load large-ish data files from a wasm plugin, for example complex WAF rules or neural network parameters used to classify requests. While wasi defines an interface for reading files, Envoy does not expose it to wasm plugins yet. Plugins should not be able to access any file on the host automatically - the configuration should decide what folders or files are expose. The configuration could look like

{
  "vm_id": ...,
  "runtime": ...,
  "code": {...},
  "configuration": {...},
  "allow_precompiled": ...,
  "nack_on_code_cache_miss": ...,
  "environment_variables": {...}
  "filesystem": [
    "/some/directory/",
    "/some/other/directory/file.dat",
  ]
}

[optional Relevant Links:] This is similar to #14958 but for files instead of environment variables.

コントリビューターガイド