Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
FeynmanZhou opened this issue May 9, 2022 · 13 comments
Open

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

FeynmanZhou opened this issue May 9, 2022 · 13 comments

Comments

@FeynmanZhou
Copy link
Member

FeynmanZhou commented May 9, 2022

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

@FeynmanZhou FeynmanZhou added the good first issue Good for newcomers label May 9, 2022
@iharshit009
Copy link

iharshit009 commented May 11, 2022

Is it possible to work on this simultaneously with @rajibmitra? @FeynmanZhou

@Aarush-Goyal
Copy link

Hey @FeynmanZhou
I would also like to contribute to the project I have also applied for mentorship through LFX.

I see @rajibmitra is assigned for this issue.
I would love to know about some other beginner friendly issue that I can contribute to.
If @rajibmitra would like to collaborate on the issue with me that will also be great.

@FeynmanZhou
Copy link
Member Author

Hi @rajibmitra @Aarush-Goyal @iharshit009 ,

I apologize that the LFX mentoring project should be applied via the LFX platform instead of the GitHub issue. Every mentee needs to submit the required materials and the candidate mentee will be voted by three mentors. Sorry for misunderstanding the process. You are welcome to submit your application and resume in the LFX platform. In this process, it will be much fairer for each mentee.

If you have any questions, feel free to ask us on the Slack channel.

@PromiseFru
Copy link

Hello @FeynmanZhou

Please I've been trying join the slack channel for a while and it won't let me in. It seems i need to sent an invite first

@Aarush-Goyal
Copy link

@PromiseFru Here is the joining link buddy https://communityinviter.com/apps/cloud-native/cncf

@PromiseFru
Copy link

@PromiseFru Here is the joining link buddy https://communityinviter.com/apps/cloud-native/cncf

Thank you. I got in 😃

@PromiseFru
Copy link

@Aarush-Goyal Please i don't if this is the best place to ask but I'm facing troubles creating a sample function for python from https://github.com/OpenFunction/OpenFunction#-quickstart
Please any pointers? 🙏🏾

@Aarush-Goyal
Copy link

@PromiseFru I guess @benjaminhuo would be able to help you in this.

@benjaminhuo
Copy link
Member

@PromiseFru
There is a python example here: https://github.com/OpenFunction/samples/tree/main/functions/knative/hello-world-python

@GlobeFishNG
Copy link

Hi guys, is there any update for this requirement? Our team are expecting python framework for quite a long time. Thank you in advance. @webup @kehuili @Aarush-Goyal

@benjaminhuo
Copy link
Member

benjaminhuo commented Jan 9, 2023

@GlobeFishNG, @kehuili is still working on the python functions-framework

@benjaminhuo
Copy link
Member

benjaminhuo commented Jan 27, 2023

@rajibmitra you're welcome to work on this!
Some useful stuff for develop python functions-framework:
#21
https://github.com/OpenFunction/OpenFunction/blob/main/docs/proposals/202112-functions-framework-refactoring.md

@rajibmitra
Copy link

Thanks @benjaminhuo Looking at it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: In Progress
Status: No status
Development

No branches or pull requests

9 participants