Add support for scancode in Travis; update README with license & build badges (#41)
REVIEW: Add support for scancode in Travis; update README with license & build badges
diff --git a/.travis.yml b/.travis.yml
index 7be0f7a..cc06797 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -10,7 +10,9 @@
- docker
before_install:
+ - ./tools/travis/setupscan.sh
- ${TOOL}/.travis/setup.sh
script:
+ - ./tools/travis/scancode.sh
- ${TOOL}/.travis/build.sh
diff --git a/README.md b/README.md
index 16d6bc4..449c722 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,9 @@
-Developer tools for OpenWhisk
-=============================
+# Developer tools for OpenWhisk
-This repository is part of [Apache OpenWhisk](http://openwhisk.org) and provides developer tools that help with local development, testing and operation of OpenWhisk.
+[![License](https://img.shields.io/badge/license-Apache--2.0-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0)
+[![Build Status](https://travis-ci.org/apache/incubator-openwhisk-devtools.svg?branch=master)](https://travis-ci.org/apache/incubator-openwhisk-devtools)
+
+This repository is part of [Apache OpenWhisk](http://openwhisk.incubator.apache.org/) and provides developer tools that help with local development, testing and operation of OpenWhisk.
## Subprojects
diff --git a/docker-compose/README.md b/docker-compose/README.md
index 86b2a89..8f98fe0 100644
--- a/docker-compose/README.md
+++ b/docker-compose/README.md
@@ -8,7 +8,7 @@
The following are required to build and deploy OpenWhisk with Docker Compose:
-- [Docker 1.12+](https://www.docker.com/products/docker)
+- [Docker 1.12+](https://www.docker.com/products/docker)
- [Docker Compose 1.6+](https://docs.docker.com/compose/install/)
- [Java 8](http://www.oracle.com/technetwork/java/javase/downloads/index.html)
@@ -36,9 +36,9 @@
}
```
-If `PROJECT_HOME` variable is set ( i.e. `PROJECT_HOME=/path/to/openwhisk make quick-start`)
-then the command skips downloading the `master` branch and uses instead the source code found in the `PROJECT_HOME` folder.
-This is useful for working with a local clone, making changes to the code, and run it with `docker-compose`.
+If `PROJECT_HOME` variable is set ( i.e. `PROJECT_HOME=/path/to/openwhisk make quick-start`)
+then the command skips downloading the `master` branch and uses instead the source code found in the `PROJECT_HOME` folder.
+This is useful for working with a local clone, making changes to the code, and run it with `docker-compose`.
# Build
@@ -67,7 +67,7 @@
```
To remove the stopped containers, clean the database files and the temporary files use:
-
+
```bash
make destroy
```
@@ -80,19 +80,19 @@
make hello-world
```
-This command creates a new JS action, it invokes it, and then it deletes it.
+This command creates a new JS action, it invokes it, and then it deletes it.
The javascript action is:
```javascript
function main(params) {
var name = params.name || "World";
return {payload: "Hello, " + name + "!"};
}
-```
+```
The result of the invokation should be printed on the terminal:
```
{
"payload": "Hello, World!"
-}
+}
```
## Logs
@@ -109,4 +109,4 @@
- `DOCKER_REGISTRY` - specify a custom docker registry. I.e ```DOCKER_REGISTRY=registry.example.com make quick-start```
- `DOCKER_IMAGE_PREFIX` - specify a custom image prefix. I.e. ```DOCKER_IMAGE_PREFIX=my-prefix make quick-start```
-These 2 variable allow you to execute a JS action using the container `registry.example.com/my-prefix/nodejs6action` .
\ No newline at end of file
+These 2 variable allow you to execute a JS action using the container `registry.example.com/my-prefix/nodejs6action`.
diff --git a/node-local/test.js b/node-local/test.js
index 416f368..0490b14 100644
--- a/node-local/test.js
+++ b/node-local/test.js
@@ -1,3 +1,6 @@
+// Licensed to the Apache Software Foundation (ASF) under one or more contributor
+// license agreements; and to You under the Apache License, Version 2.0.
+
process.stdin.setEncoding('utf8');
var args = process.argv;
@@ -32,17 +35,17 @@
} else {
//if stdin, read input and parse as JSON
var input = "";
-
+
process.stdin.on('readable', () => {
var chunk = process.stdin.read();
if (chunk !== null) {
input += chunk;
}
});
-
+
process.stdin.on('end', () => {
const params = JSON.parse(input);
-
+
run(action, params, json);
});
}
@@ -75,12 +78,12 @@
help();
process.exit(1);
}
-
+
const imports = require(action);
//support a non-exported main function as a fallback
const mainfunct = imports.main ? imports.main : fallback(action);
-
+
let result = mainfunct(params);
if (result.then) {
Promise.resolve(result)
@@ -95,4 +98,4 @@
process.on('SIGINT', function() {
console.log("exiting...");
process.exit();
-});
\ No newline at end of file
+});
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