This is the picture of parameters.











At 2022-07-05 15:51:52, "CongwangLi" <lcw769193...@163.com> wrote:
>
>
>Hello everyone, my name is CongwangLi and I am an Open Source Promotion Plan 
>2022 student working with ZhangChao(tokers).
>Background:
>
>OpenFunction is a cloud-native open source FaaS (Function as a Service) 
>platform aiming to let you focus on your business logic without having to 
>maintain the underlying runtime environment and infrastructure.
>
>OpenFunction features include:
>
>Cloud agnostic and decoupled with cloud providers' BaaS
>Pluggable architecture that allows multiple function runtimes
>Support both sync and async functions
>Unique async functions support that can consume events directly from event 
>sources
>Support generating OCI-Compliant container images directly from function 
>source code.
>Flexible autoscaling between 0 and N
>Advanced async function autoscaling based on event sources' specific metrics
>Simplified BaaS integration for both sync and async functions by introducing 
>Dapr
>Advanced function ingress & traffic management powered by K8s Gateway API (In 
>Progress)
>Flexible and easy-to-use events management framework
>Implementation design
>
> 
>
>1.     Objectives
>
>Supports using functions in OpenFunction as routing "upstream" via plugins to 
>enable access to Faas functions.
>
>2.     name
>
>The plugin is named openfunction, and the priority is -1902, ranking after 
>openwhisk
>
> 
>
>3.     Test Environment
>
> 
>
>Prepare the kubernetes environment, download OFN, the CLI of openfunction and 
>execute the following command
>
>   ofn install --all
>
>Then run openfunction samples according to the official documentation.
>
>4.     Authentication
>
>At present, openfunction provides two function entries, one is advanced 
>function ingress & Traffic Management powered by k8s gateway API (in progress) 
>which has many authentication methods vary from different implementations. The 
>other is the default gateway 
>kourier(https://github.com/knative-sandbox/net-kourier)  that supports 
>external auth.
>
>Therefore, I think basic auth can be a default authentication method for most 
>of k8s gateways.
>
> 
>
>5.     parameters
>|
>
>Name
>
>|
>
>Type
>
>|
>
>Required
>
>|
>
>Default
>
>|
>
>Valid Values
>
>|
>
>Description
>
>|
>|
>
>function_Url
>
>|
>
>String
>
>|
>
>True
>
>|
>
> 
>
>|
>
> 
>
>|
>
> 
>
>|
>|
>
>ssl_verify
>
>|
>
>Boolean
>
>|
>
>Fales
>
>|
>
>True
>
>|
>
> 
>
>|
>
> 
>
>|
>|
>
>service_token
>
>|
>
>String
>
>|
>
>False
>
>|
>
> 
>
>|
>
> 
>
>|
>
>Since openfunction does not require authentication, the token parameter is 
>optional.
>
>|
>|
>
>timeout
>
>|
>
>Integer
>
>|
>
>60000ms
>
>|
>
> 
>
>|
>
> 
>
>|
>
> 
>
>|
>|
>
>keepalive
>
>|
>
>Boolean
>
>|
>
>False
>
>|
>
> 
>
>|
>
> 
>
>|
>
> 
>
>|
>|
>
>keepalive_timeout
>
>|
>
>Integer
>
>|
>
>60000ms
>
>|
>
> 
>
>|
>
> 
>
>|
>
> 
>
>|
>|
>
>keepalive_pool
>
>|
>
>Integer
>
>|
>
>5
>
>|
>
> 
>
>|
>
> 
>
>|
>
> 
>
>|
> 6. example
>|
>
>curl http://127.0.0.1:9080/apisix/admin/routes/1 -H 'X-API-KEY: 
>edd1c9f034335f136f87ad84b625c8f1' -X PUT -d '
>
>{
>
>    "plugins": {
>
>        "openfunction": {
>
>            "function_uri": 
> "http://localhost:30585/default/function-sample/world";,
>
>            "service_token": “foo:foo123”
>
>        }
>
>    },
>
>    "uri": "/gohello"
>
>}'
>
>
>
>|
>
>|
>POST http://localhost:30585/default/function-sample/world
>Authentication: Basic xxxxx
> 
>{"payload":"Hello, world!"}
>|
>
>
>
>
>I would like to hear everyone's comments. Thanks!
>
>Best,
>
>CongwangLi
>
>

Reply via email to