Apache OpenWhisk is a serverless event-based programming service and an Apache Incubator project
Scala JavaScript Python Swift Java Shell
Failed to load latest commit information.
.github Move note about not sharing sensitive information inside the comment … Sep 2, 2016
ansible Create keys the v2 way Jan 18, 2017
bin Move wskadmin to tools/admin. Sep 22, 2016
catalog Remove --shared on wsk action cmds. Dec 7, 2016
common/scala Allow blocking requests to specify a desired timeout. Jan 20, 2017
core Disable automatic timeouts for nodejs actions in proxy server. (#1745) Jan 24, 2017
docs Update Action Doc for Docker Actions Jan 17, 2017
gradle Do Not Cross Compile CLI by Default Nov 7, 2016
mobile/iOS/starterapp Issue #1458, update iOS starterApp FilterForecast action to work with… Nov 2, 2016
sdk/docker Remove Dockerfile.publish and rewrite existing out during deploy. Sep 6, 2016
tests Disable automatic timeouts for nodejs actions in proxy server. (#1745) Jan 24, 2017
tools Create keys the v2 way Jan 18, 2017
.gitattributes Use .gitattributes to correct EOL chars for bash scripts not having .… Jul 15, 2016
.gitignore Generate SSL certificate on setup. Oct 31, 2016
.project Move wskadmin to tools/admin. Sep 22, 2016
.pydevproject Update installation instructions. Feb 27, 2016
.travis.yml Add a webhook for TravisCI notifications. Oct 17, 2016
LICENSE.txt Initial OpenWhisk commit Feb 19, 2016
README.md update docs to point to openwhisk.org. Dec 15, 2016
gradlew Bump gradle version to 3.0 Sep 18, 2016
gradlew.bat Bump gradle version to 3.0 Sep 18, 2016
settings.gradle Exchange own Kafka image with ches/kafka Oct 24, 2016



Build Status License

OpenWhisk is a cloud-first distributed event-based programming service. It provides a programming model to upload event handlers to a cloud service, and register the handlers to respond to various events. Learn more at http://openwhisk.org or try it on IBM Bluemix.

Quick Start

A Vagrant machine is the easiest way to run OpenWhisk on Mac, Windows PC or GNU/Linux. Download and install Vagrant for your operating system and architecture.

Follow these step to run your first OpenWhisk Action:

# Clone openwhisk
git clone --depth=1 https://github.com/openwhisk/openwhisk.git

# Change directory to tools/vagrant
cd openwhisk/tools/vagrant

# Run script to create vm and run hello action

Wait for hello action output:

wsk action invoke /whisk.system/utils/echo -p message hello --blocking --result
    "message": "hello"

These steps were tested on Mac OS X El Capitan, Ubuntu 14.04.3 LTS and Windows using Vagrant. For more information about using OpenWhisk on Vagrant see the tools/vagrant/README.md

Native development

Docker must be natively installed in order to build and deploy OpenWhisk. If you plan to make contributions to OpenWhisk, we recommend either a Mac or Ubuntu environment.

Learn concepts and commands

Browse the documentation to learn more. Here are some topics you may be interested in:


Copyright 2015-2016 IBM Corporation

Licensed under the Apache License, Version 2.0 (the "License").

Unless required by applicable law or agreed to in writing, software distributed under the license is distributed on an "as is" basis, without warranties or conditions of any kind, either express or implied. See the license for the specific language governing permissions and limitations under the license.


Report bugs, ask questions and request features here on GitHub.

You can also join our slack channel and chat with developers. To get access to our slack channel, please see the instructions here.