You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwhisk.apache.org by be...@apache.org on 2017/07/10 15:19:33 UTC

[incubator-openwhisk-client-swift] branch master updated: Add support for Travis CI and scancode. (#43)

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

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


The following commit(s) were added to refs/heads/master by this push:
     new 56a4f23  Add support for Travis CI and scancode. (#43)
56a4f23 is described below

commit 56a4f23f3e71804b3b8082805837fce174f8f32d
Author: Matt Rutkowski <mr...@us.ibm.com>
AuthorDate: Mon Jul 10 10:19:31 2017 -0500

    Add support for Travis CI and scancode. (#43)
---
 .travis.yml               |  8 ++++++++
 README.md                 | 36 ++++++++++++++++++++----------------
 tools/travis/scancode.sh  | 11 +++++++++++
 tools/travis/setupscan.sh |  8 ++++++++
 4 files changed, 47 insertions(+), 16 deletions(-)

diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..2370221
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,8 @@
+# https://docs.travis-ci.com/user/languages/python/
+language: python
+
+install:
+  - ./tools/travis/setupscan.sh
+
+script:
+  - ./tools/travis/scancode.sh
diff --git a/README.md b/README.md
index dc124c3..2437264 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,9 @@
 # Swift Client SDK for OpenWhisk
-This is a Swift-based client SDK for OpenWhisk. You can use it to connect to the [IBM Bluemix OpenWhisk service](http://www.ibm.com/cloud-computing/bluemix/openwhisk/), or you own installation of [OpenWhisk](https://github.com/openwhisk/openwhisk).  It partially implements the OpenWhisk [REST API](https://github.com/openwhisk/openwhisk/blob/master/docs/reference.md#rest-api) and allows you to invoke actions and fire triggers. The client SDK is compatible with Swift 3.x and runs on iOS 9  [...]
+
+[![License](https://img.shields.io/badge/license-Apache--2.0-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0)
+[![Build Status](https://api.travis-ci.org/apache/incubator-openwhisk-client-swift.svg?branch=master)](https://api.travis-ci.org/apache/incubator-openwhisk-client-swift)
+
+This is a Swift-based client SDK for OpenWhisk. You can use it to connect to the [IBM Bluemix OpenWhisk service](http://www.ibm.com/cloud-computing/bluemix/openwhisk/), or you own installation of [OpenWhisk](https://github.com/openwhisk/openwhisk).  It partially implements the OpenWhisk [REST API](https://github.com/openwhisk/openwhisk/blob/master/docs/reference.md#rest-api) and allows you to invoke actions and fire triggers. The client SDK is compatible with Swift 3.x and runs on iOS 9  [...]
 
 ## Installation
 You can install the SDK using the source code in this repo, as a Cocoapod for iOS and WatchOS apps, Carthage, and as a package using the Swift Package Manager for Darwin CLI apps.
@@ -14,7 +18,7 @@ To build the source code:
 ### CocoaPods Installation
 The [official CocoaPods website](http://cocoapods.org) has detailed instructions on how to install and use CocoaPods.
 
-The following lines in a Podfile will install the SDK for an iOS app with a watch OS extension: 
+The following lines in a Podfile will install the SDK for an iOS app with a watch OS extension:
 
 ```
 install! 'cocoapods', :deterministic_uuids => false
@@ -24,7 +28,7 @@ target 'MyApp' do
      pod 'OpenWhisk', :git => 'https://github.com/openwhisk/openwhisk-client-swift.git', :tag => '0.2.2'
 end
 
-target 'MyApp WatchKit Extension' do 
+target 'MyApp WatchKit Extension' do
      pod 'OpenWhisk', :git => 'https://github.com/openwhisk/openwhisk-client-swift.git', :tag => '0.2.2'
 end
 ```
@@ -48,7 +52,7 @@ end
 
 Visit the [official Carthage site on Github](https://github.com/Carthage/Carthage) for detailed instructions on installing and using Carthage.
 
-Here is an example Cartfile for iOS installation using Carthage:  
+Here is an example Cartfile for iOS installation using Carthage:
 
 ```
 github "openwhisk/openwhisk-client-swift.git" ~> 0.2.2 # Or latest version
@@ -102,21 +106,21 @@ var params = Dictionary<String, String>()
 params["payload"] = "Hi from mobile"
 
 do {
-    try whisk.invokeAction(name: "helloConsole", package: "mypackage", namespace: "mynamespace", parameters: params, hasResult: false, callback: {(reply, error) -> Void in 
+    try whisk.invokeAction(name: "helloConsole", package: "mypackage", namespace: "mynamespace", parameters: params, hasResult: false, callback: {(reply, error) -> Void in
         if let error = error {
             //do something
             print("Error invoking action \(error.localizedDescription)")
         } else {
             print("Action invoked!")
         }
-        
+
     })
 } catch {
     print("Error \(error)")
 }
 ```
 
-In the above example, we are invoking the "helloConsole" action using the default namespace. 
+In the above example, we are invoking the "helloConsole" action using the default namespace.
 
 ### Fire an OpenWhisk Trigger
 To fire a remote OpenWhisk trigger, call the "fireTrigger" method.  Pass in parameters as required using a dictionary.
@@ -129,7 +133,7 @@ locationParams["payload"] = "{\"lat\":41.27093, \"lon\":-73.77763}"
 
 do {
     try whisk.fireTrigger(name: "locationChanged", package: "mypackage", namespace: "mynamespace", parameters: locationParams, callback: {(reply, error) -> Void in
-        
+
         if let error = error {
             print("Error firing trigger \(error.localizedDescription)")
         } else {
@@ -148,17 +152,17 @@ If the action returns a result, set hasResult to true in the invokeAction call.
 ```swift
 do {
     try whisk.invokeAction(name: "actionWithResult", package: "mypackage", namespace: "mynamespace", parameters: params, hasResult: true, callback: {(reply, error) -> Void in
-        
+
         if let error = error {
             //do something
             print("Error invoking action \(error.localizedDescription)")
-            
+
         } else {
             var result = reply["result"]
             print("Got result \(result)")
         }
-        
-        
+
+
     })
 } catch {
     print("Error \(error)")
@@ -188,7 +192,7 @@ You can pass in a custom URLSession in case you require special network handling
 // create a network delegate that trusts everything
 class NetworkUtilsDelegate: NSObject, URLSessionDelegate {
     func urlSession(_ session: URLSession, didReceive challenge: URLAuthenticationChallenge, completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
-        
+
         completionHandler(Foundation.URLSession.AuthChallengeDisposition.useCredential, URLCredential(trust: challenge.protectionSpace.serverTrust!))
     }
 }
@@ -205,7 +209,7 @@ All actions and triggers have a fully qualified name which is made up of a names
 1. qName = "foo" will result in namespace = default, package = default, action/trigger = "foo"
 2. qName = "mypackage/foo" will result in namespace = default, package = mypackage, action/trigger = "foo"
 3. qName = "/mynamespace/foo" will result in namespace = mynamespace, package = default, action/trigger = "foo"
-4. qName = "/mynamespace/mypackage/foo will result in namespace = mynamespace, package = mypackage, action/trigger = "foo" 
+4. qName = "/mynamespace/mypackage/foo will result in namespace = mynamespace, package = mypackage, action/trigger = "foo"
 
 All other combinations will throw a WhiskError.QualifiedName error. When using qualified names, you must wrap the call in a do/try/catch block.
 
@@ -219,7 +223,7 @@ whiskButton.setupWhiskAction("helloConsole", package: "mypackage", namespace: "_
 
 let myParams = ["name":"value"]
 
-// Call this when you detect a press event, e.g. in an IBAction, to invoke the action 
+// Call this when you detect a press event, e.g. in an IBAction, to invoke the action
 whiskButton.invokeAction(parameters: myParams, callback: { reply, error in
     if let error = error {
         print("Oh no, error: \(error)")
@@ -232,7 +236,7 @@ whiskButton.invokeAction(parameters: myParams, callback: { reply, error in
 
 var whiskButtonSelfContained = WhiskButton(frame: CGRectMake(0,0,20,20))
 whiskButtonSelfContained.listenForPressEvents = true
-do { 
+do {
 
    // use qualified name API which requires do/try/catch
    try whiskButtonSelfContained.setupWhiskAction("mypackage/helloConsole", credentials: credentialsConfiguration!, hasResult: false, parameters: nil, urlSession: nil)
diff --git a/tools/travis/scancode.sh b/tools/travis/scancode.sh
new file mode 100755
index 0000000..2202c45
--- /dev/null
+++ b/tools/travis/scancode.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+set -e
+
+# Build script for Travis-CI.
+SCRIPTDIR=$(cd $(dirname "$0") && pwd)
+ROOTDIR="$SCRIPTDIR/../.."
+UTIL_DIR="$ROOTDIR/../incubator-openwhisk-utilities"
+
+# run scancode
+cd $UTIL_DIR
+scancode/scanCode.py $ROOTDIR
\ No newline at end of file
diff --git a/tools/travis/setupscan.sh b/tools/travis/setupscan.sh
new file mode 100755
index 0000000..35f070f
--- /dev/null
+++ b/tools/travis/setupscan.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+SCRIPTDIR=$(cd $(dirname "$0") && pwd)
+HOMEDIR="$SCRIPTDIR/../../../"
+
+# clone OpenWhisk utilities repo. in order to run scanCode.py
+cd $HOMEDIR
+git clone https://github.com/apache/incubator-openwhisk-utilities.git

-- 
To stop receiving notification emails like this one, please contact
['"commits@openwhisk.apache.org" <co...@openwhisk.apache.org>'].