Skip to content
Apache OpenWhisk SDK for building Docker “blackbox" runtimes. https://openwhisk.apache.org/
Scala Python Shell Dockerfile C
Branch: master
Clone or download
dgrove-oss and rabbah gradlew licensing (#72)
Update gradlew[.bat] scripts from Gradle v5.5 release which
have proper Apache license headers and add corresponding
entry to LICENSE.txt.
Latest commit aeadcf5 Jul 31, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github replace github refs openwhisk to apache (#2236) May 15, 2017
core update readme.md for invalid link (#66) Jan 4, 2019
gradle Update all files using Mini license header to use full ASF header Jun 18, 2019
sdk/docker Update all files using Mini license header to use full ASF header Jun 18, 2019
tests Update all files using Mini license header to use full ASF header Jun 18, 2019
tools/travis change travis builds to publish docker images with tag 'nightly' (#71) Jun 29, 2019
.gitattributes Use .gitattributes to correct EOL chars for bash scripts not having .… Jul 15, 2016
.gitignore
.scalafmt.conf
.travis.yml change travis builds to publish docker images with tag 'nightly' (#71) Jun 29, 2019
CONTRIBUTING.md Fix markdown files with a typo. in the Hash license header. (#36) May 10, 2018
DISCLAIMER.txt
LICENSE.txt gradlew licensing (#72) Aug 1, 2019
NOTICE.txt
README.md
build.gradle Last files to need ASF License headers. (#39) May 23, 2018
gradlew gradlew licensing (#72) Aug 1, 2019
gradlew.bat gradlew licensing (#72) Aug 1, 2019
settings.gradle Switch to Scala 2.12.7 (#64) Nov 7, 2018

README.md

Apache OpenWhisk runtimes for docker

License Build Status

Give it a try today

Create a zip action with a exec in the root of the zip

echo \
'#!/bin/bash
echo "{\"message\":\"Hello World\"}"' > exec
chmod +x exec
zip myAction.zip exec

Create the action using the docker image for the runtime

wsk action update myAction myAction.zip --docker openwhisk/dockerskeleton:1.3.2

This works on any deployment of Apache OpenWhisk

To use on a deployment that contains the runtime deployed

Create action using --native

wsk action update myAction myAction.zip --native

Local development

./gradlew :core:actionProxy:distDocker :sdk:docker:distDocker

This will produce the image whisk/dockerskeleton

Build and Push image

docker login
./gradlew core:actionProxy:distDocker -PdockerImagePrefix=$prefix-user -PdockerRegistry=docker.io

Deploy OpenWhisk using ansible environment that contains the runtime of type blackboxes with name dockerskeleton Assuming you have OpenWhisk already deploy localy and OPENWHISK_HOME pointing to root directory of OpenWhisk core repository.

Set ROOTDIR to the root directory of this repository.

Redeploy OpenWhisk

cd $OPENWHISK_HOME/ansible
ANSIBLE_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

Or you can use wskdev and create a soft link to the target ansible environment, for example:

ln -s ${ROOTDIR}/ansible/environments/local ${OPENWHISK_HOME}/ansible/environments/local-docker
wskdev fresh -t local-docker

To use as docker action push to your own dockerhub account

docker tag whisk/dockerskeleton $user_prefix/dockerskeleton
docker push $user_prefix/dockerskeleton

Then create the action using your image from dockerhub

wsk action update myAction myAction.zip --docker $user_prefix/dockerskeleton

The $user_prefix is usually your dockerhub user id.

Disclaimer

Apache OpenWhisk Runtime Docker is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.

You can’t perform that action at this time.