Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Jan 17, 2025. It is now read-only.

⛔️ DEPRECATED - IBM Cloud Functions Python Runtime

License

NotificationsYou must be signed in to change notification settings

ibm-functions/runtime-python

Repository files navigation

IBM Cloud Functions reached end of life and this repository is no longer active.

For Apache OpenWhisk visit:https://github.com/apache/openwhisk.


IBM Cloud Functions Runtime for Python

Some of the python packages are to be used onIBM Cloud:

Docker runtime is based on Debian/Ubuntu

Hello Action

Write a function usingApache OpenWhisk Serverless programming inteface

defmain(args):name=args.get("name","stranger")greeting="Hello "+name+"!"print(greeting)return {"greeting":greeting}

IBM Cloud Functions (based on Apache OpenWhisk)

To use as a python kind action

bx wsk action update helloPython hello.py --kind python:3.11

How to use as a docker Action locally

To use as a docker action

bx wsk action update helloPython hello.py --docker ibmfunctions/action-python-v3.11

This works on any deployment of Apache OpenWhisk or IBM Cloud Functions

Working with the local git repo

Prerequisite:Export OPENWHISK_HOME to point to youropenwhisk cloned directory.

./gradlew python3:distDocker

This will produce the imagewhisk/action-python-v3.11

Build and Push image

docker login./gradlew python3.11:distDocker -PdockerImagePrefix=$prefix-user -PdockerRegistry=docker.io

Deploy OpenWhisk using ansible environment that adds the new kingpython:3Assuming you have OpenWhisk already deploy localy andOPENWHISK_HOME pointing to root directory of OpenWhisk core repository.

SetROOTDIR to the root directory of this repository.

Redeploy OpenWhisk

cd $OPENWHISK_HOME/ansibleANSIBLE_CMD="ansible-playbook -i ${ROOTDIR}/ansible/environments/local"$ANSIBLE_CMD setup.yml$ANSIBLE_CMD couchdb.yml$ANSIBLE_CMD initdb.yml$ANSIBLE_CMD wipe.yml$ANSIBLE_CMD openwhisk.yml

To use as docker action push to your own dockerhub account

docker tag whisk/action-python-v3 $user_prefix/action-python-v3docker push $user_prefix/action-python-v3

Then create the action using your the image from dockerhub

wsk action update myAction myAction.py --docker $user_prefix/action-python-v3

The$user_prefix is usually your dockerhub user id.

Testing

Install dependencies from the root directory on $OPENWHISK_HOME repository

./gradlew install

Using gradle to run all tests

./gradlew :tests:test

Using gradle to run some tests

./gradlew :tests:test --tests *ActionContainerTests*

Using IntelliJ:

  • Import project as gradle project.
  • Make sure working directory is root of the project/repo

Using container image to test

To use as docker action push to your own dockerhub account

docker tag whisk/action-python-v3 $user_prefix/action-python-v3docker push $user_prefix/action-python-v3

Then create the action using your the image from dockerhub

wsk action update myAction myAction.py --docker $user_prefix/action-python-v3

The$user_prefix is usually your dockerhub user id.

Maintenance Tasks

Updating Python 3.11 runtime

Updating Python 3.9 runtime

  • Check if there are new pip packages available
    • Use the latest released image to check the outdated pip packages
    docker run --rm -it ibmfunctions/action-python-v3.9:1.1.0 sh -c "pip list --outdated"

Pushing new versions for runtimes

  • After the PR is merged and the master pass the build, checkout master.
  • Create tag for each runtime and push upstream
git tag 3.11@<new version>git push upstream 3.11@<new version>
  • After the image is deployed to production update thelatest tag for each runtime.
git tag 3.11@latest -fgit push upstream 3.11@latest -f

License

Apache 2.0

About

⛔️ DEPRECATED - IBM Cloud Functions Python Runtime

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors16


[8]ページ先頭

©2009-2025 Movatter.jp