This is an automated email from the ASF dual-hosted git repository.

mrutkowski pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwhisk-client-go.git


The following commit(s) were added to refs/heads/master by this push:
     new cc53c35  chore: update docs & provide example code (#144)
cc53c35 is described below

commit cc53c351d9eb501ba8c3f9fefa57485210e43f0e
Author: Sameer Bihari <[email protected]>
AuthorDate: Tue Mar 2 18:19:04 2021 -0500

    chore: update docs & provide example code (#144)
    
    Co-authored-by: Sameer Bihari <>
---
 README.md                       | 78 +++++++++++++++++++++++++++++++----------
 example/example_list_actions.go | 50 ++++++++++++++++++++++++++
 2 files changed, 109 insertions(+), 19 deletions(-)

diff --git a/README.md b/README.md
index af9d261..83e6627 100644
--- a/README.md
+++ b/README.md
@@ -88,7 +88,10 @@ available for you to run this library.
 
 We use a configuration file called _wskprop_ to specify all the parameters 
necessary for this Go client library to access the OpenWhisk services. Make 
sure you create or edit the file _~/.wskprops_, and add the mandatory 
parameters APIHOST, APIVERSION, NAMESPACE and AUTH.
 
-- The parameter `APIHOST` is the OpenWhisk API hostname (for example, 
openwhisk.ng.bluemix.net, 172.17.0.1, and so on).
+- The parameter `APIHOST` is the OpenWhisk API hostname.
+    - If you are using a local [quick start 
standalone](https://github.com/apache/openwhisk#quick-start), OpenWhisk 
services APIHOST will look like `http://localhost:3233`
+    - If you are using IBM cloud functions as your provider, APIHOST will look 
like `<region>.functions.cloud.ibm.com` where region can be `us-east`, 
`us-south` or any additional 
[regions](https://cloud.ibm.com/docs/openwhisk?topic=openwhisk-cloudfunctions_regions)
+
 - The parameter `APIVERSION` is the version of OpenWhisk API to be used to 
access the OpenWhisk resources.
 - The parameter `NAMESPACE` is the OpenWhisk namespace used to specify the 
OpenWhisk resources about to be accessed.
 - The parameter `AUTH` is the authentication key used to authenticate the 
incoming requests to the OpenWhisk services.
@@ -101,23 +104,23 @@ For more information regarding the REST API of OpenWhisk, 
please refer to [OpenW
 import "github.com/apache/openwhisk-client-go/whisk"
 ```
 
-Construct a new whisk client, then use various services to access different 
parts of the whisk api.  For example to get the `hello` action:
+Construct a new whisk client, then use various services to access different 
parts of the whisk api.  For example to get the `hello` package actions:
 
 ```go
 client, _ := whisk.NewClient(http.DefaultClient, nil)
-action, resp, err := client.Actions.List("hello")
+actions, resp, err := client.Actions.List("hello", nil)
 ```
 
-Some API methods have optional parameters that can be passed. For example, to 
list the first 30 actions, after the 30th action:
+Some API methods have optional parameters that can be passed. For example, to 
list the first 10 actions of the `hello` package:
 ```go
 client, _ := whisk.NewClient(http.DefaultClient, nil)
 
 options := &whisk.ActionListOptions{
-  Limit: 30,
-  Skip: 30,
+  Limit: 10,
+  Skip: 0,
 }
 
-actions, resp, err := client.Actions.List(options)
+actions, resp, err := client.Actions.List("hello", options)
 ```
 
 By default, this Go client library is automatically configured by the 
configuration file _wskprop_. The parameters of APIHOST, APIVERSION,
@@ -127,22 +130,25 @@ In addition, it can also be configured by passing in a 
`*whisk.Config` object as
 
 ```go
 config := &whisk.Config{
-  Host: "openwhisk.ng.bluemix.net",
-  Version: "v1"
-  Namespace: "_",
-  AuthKey: "aaaaa-bbbbb-ccccc-ddddd-eeeee"
+  Host: "<APIHOST>",
+  Version: "<APIVERSION>",
+  Namespace: "<NAMESPACE>",
+  AuthToken: "<AUTH>",
 }
 client, err := whisk.Newclient(http.DefaultClient, config)
 ```
 
 ### Example
 
-You need to have an OpenWhisk service accessible, to run the following example.
+You need to have an OpenWhisk service accessible, to run the following 
[example](https://github.com/apache/openwhisk-client-go/blob/master/example/example_list_actions.go).
 
 ```go
+package main
+
 import (
+  "os"
+  "fmt"
   "net/http"
-  "net/url"
 
   "github.com/apache/openwhisk-client-go/whisk"
 )
@@ -155,26 +161,60 @@ func main() {
   }
 
   options := &whisk.ActionListOptions{
-    Limit: 30,
-    Skip: 30,
+    Limit: 10,
+    Skip: 0,
   }
 
-  actions, resp, err := client.Actions.List(options)
+  actions, resp, err := client.Actions.List("", options)
   if err != nil {
     fmt.Println(err)
     os.Exit(-1)
   }
 
   fmt.Println("Returned with status: ", resp.Status)
-  fmt.Println("Returned actions: \n%+v", actions)
+  fmt.Printf("Returned actions: \n%+v", actions)
 
 }
 ```
 
-Then build it with the go tool:
+Then run it with the go tool:
 
 ```
-$ go build
+$ cd example
+$ go run example_list_actions.go
 ```
 
 If the openWhisk service is available and your configuration is correct, you 
should receive the status and the actions with the above example.
+
+---
+
+## Contributing to the project
+
+### Git repository setup
+
+1. 
[Fork](https://docs.github.com/en/github/getting-started-with-github/fork-a-repo)
 the Apache repository
+
+    If you intend to contribute code, you will want to fork the 
`apache/openwhisk-client-go` repository into your github account and use that 
as the source for your clone.
+
+2. Clone the repository from your fork:
+
+    ```sh
+    git clone 
[email protected]:${GITHUB_ACCOUNT_USERNAME}/openwhisk-client-go.git
+    ```
+
+3. Add the Apache repository as a remote with the `upstream` alias:
+
+    ```sh
+    git remote add upstream [email protected]:apache/openwhisk-client-go
+    ```
+
+    You can now use `git push` to push local `commit` changes to your `origin` 
repository and submit pull requests to the `upstream` project repository.
+
+4. Optionally, prevent accidental pushes to `upstream` using this command:
+
+    ```sh
+    git remote set-url --push upstream no_push
+    ```
+
+> Be sure to [Sync your 
fork](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/syncing-a-fork)
 before starting any contributions to keep it up-to-date with the upstream 
repository.
+
diff --git a/example/example_list_actions.go b/example/example_list_actions.go
new file mode 100644
index 0000000..67a2eef
--- /dev/null
+++ b/example/example_list_actions.go
@@ -0,0 +1,50 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * 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.
+ */
+
+package main
+
+import (
+       "fmt"
+       "net/http"
+       "os"
+
+       "github.com/apache/openwhisk-client-go/whisk"
+)
+
+func main() {
+
+       client, err := whisk.NewClient(http.DefaultClient, nil)
+       if err != nil {
+               fmt.Println(err)
+               os.Exit(-1)
+       }
+
+       options := &whisk.ActionListOptions{
+               Limit: 10,
+               Skip:  0,
+       }
+
+       actions, resp, err := client.Actions.List("", options)
+       if err != nil {
+               fmt.Println(err)
+               os.Exit(-1)
+       }
+
+       fmt.Println("Returned with status: ", resp.Status)
+       fmt.Printf("Returned actions: \n %+v", actions)
+
+}

Reply via email to