Skip to content

[LFX-22-summer] Support and update functions-framework-python #18

Open
@FeynmanZhou

Description

@FeynmanZhou

Project Introduction

Support and update the Python Function Framework for OpenFunction.

Project Goals

Update the Python Function Framework to align with the latest version of OpenFunction, allowing developers to write lightweight Python functions and easily run functions in Kubernetes.

Requirements

  • Python
  • Kubernetes
  • OpenFunction
  • CloudEvent (optional)
  • Cloud Native Buildpacks (optional)
  • Dapr, Knative (optional)

Background Knowledge

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. You only need to submit business-related source code in the form of functions.

Project Details

OpenFunction 0.6.0 brings notable features including function plugin, distributed tracing for functions, control autoscaling behavior, HTTP trigger to async function, etc. Meanwhile, the asynchronous runtime definition has also been refactored. The core API has been upgraded from v1alpha1 to v1beta1.

So far, the Go Function Framework fully supports the latest features of OpenFunction 0.6.0. We hope the Python Function Framework could also be applicable in OpenFunction 0.6.0.

Project Scope

You can get familiar with the Go Function Framework first, then update the Python Function Framework and add function plugins and observability support to the Python function framework. Make it aligns with the OpenFunction 0.6.0.

Project Outputs

Potential outputs may include but are not limited to the following items:

  • Adding function plugins and observability support for Python Function Framework
  • Write test cases, sample functions, and instructions for Python Function Framework
  • Write documentation and quick start guides for Python Function Framework

Useful Links

Quick Start

You can start by installing OpenFunction and then [creating a simple function](https://github.com/OpenFunction/ OpenFunction#quickstart). You can refer to Go Function Framework to learn the current features and then update the Python function framework.

Mentors/Contacts

Metadata

Metadata

Assignees

Type

No type

Projects

Status

In Progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions