OpenWhisk | Simple Function Example

This example shows a Serverless boilerplate in Go.

Clone This Example

Step #1 - npm install serverless -g
Step #2 - serverless install -u https://github.com/serverless/examples/tree/master/openwhisk-go-simple -n  openwhisk-go-simple

Serverless Boilerplate - OpenWhisk - Go

Make sure serverless is installed. See installation guide.

You will also need to set up your OpenWhisk account credentials using environment variables or a configuration file. Please see the this guide for more information.

1. Install Project Dependencies

npm install in this directory to download the modules from package.json.

2. Compile Go Binary

$ env GOOS=linux GOARCH=amd64 go build handler.go

3. Deploy

serverless deploy or sls deploy. sls is shorthand for the Serverless CLI command

Serverless: Packaging service...
Serverless: Compiling Functions...
Serverless: Compiling API Gateway definitions...
Serverless: Compiling Rules...
Serverless: Compiling Triggers & Feeds...
Serverless: Deploying Functions...
Serverless: Deployment successful!

Service Information
platform:   openwhisk.ng.bluemix.net
namespace:  _
service:    go-service

actions:
go-service-dev-greeting

4. Invoke deployed function

serverless invoke --function greeting or serverless invoke -f greeting

-f is shorthand for --function

In your terminal window you should see the response from Apache OpenWhisk

$ serverless invoke -f greeting
{
    "msg": "Hello stranger!"
}
$ serverless invoke -f greeting -d '{"name": "James"}'
{
    "msg": "Hello James!"
}

For more information on the Serverless OpenWhisk plugin, please see the project repository: https://serverless.com/framework/docs/providers/openwhisk/guide/credentials/.

view on Github

Latest commit b2f54ec on Sep 24, 2017

New to serverless?

To get started, pop open your terminal & run:

npm install serverless -g