-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Moved demo to IBM Cloud Functions (#5)
- Loading branch information
Showing
31 changed files
with
1,783 additions
and
1 deletion.
There are no files selected for viewing
11 changes: 11 additions & 0 deletions
11
cloud-functions/rehearsal-centos-6-package-list/Dockerfile
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
FROM centos:6 | ||
MAINTAINER Arjun Guha <[email protected]> | ||
|
||
RUN yum -y install yum-utils wget | ||
RUN wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm | ||
RUN rpm -ivh epel-release-6-8.noarch.rpm | ||
RUN curl --silent --location https://rpm.nodesource.com/setup_8.x | bash - | ||
RUN yum -y install nodejs | ||
COPY action /action | ||
|
||
ENTRYPOINT ["/usr/bin/node", "/action/js/index.js"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
1. Install Node packages: `cd action && yarn install` | ||
2. Create the action: `bx wsk action create rehearsal-centos-6-package-list --docker=arjunguha/rehearsal-centos-6-package-list` | ||
3. To update the action: `./update.sh` |
1 change: 1 addition & 0 deletions
1
cloud-functions/rehearsal-centos-6-package-list/action/.gitignore
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
/node_modules |
59 changes: 59 additions & 0 deletions
59
cloud-functions/rehearsal-centos-6-package-list/action/js/index.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
// This is based on: | ||
// | ||
// https://github.com/apache/incubator-openwhisk-runtime-docker/blob/master/core/actionProxy/actionproxy.py | ||
var express = require('express'); | ||
var bodyParser = require('body-parser'); | ||
var cp = require('child_process'); | ||
|
||
var app = express(); | ||
var jsonParser = bodyParser.json() | ||
|
||
var LOG_SENTINEL = 'XXX_THE_END_OF_A_WHISK_ACTIVATION_XXX\n'; | ||
|
||
function complete() { | ||
process.stdout.write(LOG_SENTINEL); | ||
process.stderr.write(LOG_SENTINEL); | ||
} | ||
|
||
// This handler receives executable source code if an action is a ZIP file | ||
// based on this image. But, we are never going to do that. | ||
app.post('/init', function(req, resp) { | ||
resp.status(200).send(); | ||
}); | ||
|
||
app.post('/run', jsonParser, function(req, resp) { | ||
var packageName = req.body.value.package; | ||
if (typeof packageName !== 'string') { | ||
resp.status(404).send(JSON.stringify({ | ||
error: 'expected "package" parameter' | ||
})); | ||
complete(); | ||
return; | ||
} | ||
|
||
var cmd = `repoquery -l ${packageName}`; | ||
cp.exec(cmd, | ||
{ encoding: 'utf8' }, | ||
function(err, stdout, stderr) { | ||
if (err !== null) { | ||
resp.status(404).send(JSON.stringify({ | ||
error: { | ||
message: `error from ${cmd}`, | ||
stdout: stdout, | ||
stderr: stderr | ||
} | ||
})); | ||
complete(); | ||
return; | ||
} | ||
|
||
var files = stdout.slice(0, stdout.length - 1) // drop trailing newline | ||
.split('\n'); // one file per line | ||
resp.status(200).send(JSON.stringify({ | ||
files: files | ||
})); | ||
complete(); | ||
}); | ||
}); | ||
|
||
app.listen(8080); |
10 changes: 10 additions & 0 deletions
10
cloud-functions/rehearsal-centos-6-package-list/action/package.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
{ | ||
"name": "rehearsal-ubuntu-trusty-package-list", | ||
"version": "1.0.0", | ||
"main": "index.js", | ||
"license": "MIT", | ||
"dependencies": { | ||
"body-parser": "^1.18.2", | ||
"express": "^4.16.2" | ||
} | ||
} |
293 changes: 293 additions & 0 deletions
293
cloud-functions/rehearsal-centos-6-package-list/action/yarn.lock
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,293 @@ | ||
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. | ||
# yarn lockfile v1 | ||
|
||
|
||
accepts@~1.3.4: | ||
version "1.3.4" | ||
resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.4.tgz#86246758c7dd6d21a6474ff084a4740ec05eb21f" | ||
dependencies: | ||
mime-types "~2.1.16" | ||
negotiator "0.6.1" | ||
|
||
[email protected]: | ||
version "1.1.1" | ||
resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" | ||
|
||
[email protected], body-parser@^1.18.2: | ||
version "1.18.2" | ||
resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.2.tgz#87678a19d84b47d859b83199bd59bce222b10454" | ||
dependencies: | ||
bytes "3.0.0" | ||
content-type "~1.0.4" | ||
debug "2.6.9" | ||
depd "~1.1.1" | ||
http-errors "~1.6.2" | ||
iconv-lite "0.4.19" | ||
on-finished "~2.3.0" | ||
qs "6.5.1" | ||
raw-body "2.3.2" | ||
type-is "~1.6.15" | ||
|
||
[email protected]: | ||
version "3.0.0" | ||
resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" | ||
|
||
[email protected]: | ||
version "0.5.2" | ||
resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" | ||
|
||
content-type@~1.0.4: | ||
version "1.0.4" | ||
resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" | ||
|
||
[email protected]: | ||
version "1.0.6" | ||
resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" | ||
|
||
[email protected]: | ||
version "0.3.1" | ||
resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" | ||
|
||
[email protected]: | ||
version "2.6.9" | ||
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" | ||
dependencies: | ||
ms "2.0.0" | ||
|
||
[email protected], depd@~1.1.1: | ||
version "1.1.1" | ||
resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359" | ||
|
||
destroy@~1.0.4: | ||
version "1.0.4" | ||
resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" | ||
|
||
[email protected]: | ||
version "1.1.1" | ||
resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" | ||
|
||
encodeurl@~1.0.1: | ||
version "1.0.1" | ||
resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.1.tgz#79e3d58655346909fe6f0f45a5de68103b294d20" | ||
|
||
escape-html@~1.0.3: | ||
version "1.0.3" | ||
resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" | ||
|
||
etag@~1.8.1: | ||
version "1.8.1" | ||
resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" | ||
|
||
express@^4.16.2: | ||
version "4.16.2" | ||
resolved "https://registry.yarnpkg.com/express/-/express-4.16.2.tgz#e35c6dfe2d64b7dca0a5cd4f21781be3299e076c" | ||
dependencies: | ||
accepts "~1.3.4" | ||
array-flatten "1.1.1" | ||
body-parser "1.18.2" | ||
content-disposition "0.5.2" | ||
content-type "~1.0.4" | ||
cookie "0.3.1" | ||
cookie-signature "1.0.6" | ||
debug "2.6.9" | ||
depd "~1.1.1" | ||
encodeurl "~1.0.1" | ||
escape-html "~1.0.3" | ||
etag "~1.8.1" | ||
finalhandler "1.1.0" | ||
fresh "0.5.2" | ||
merge-descriptors "1.0.1" | ||
methods "~1.1.2" | ||
on-finished "~2.3.0" | ||
parseurl "~1.3.2" | ||
path-to-regexp "0.1.7" | ||
proxy-addr "~2.0.2" | ||
qs "6.5.1" | ||
range-parser "~1.2.0" | ||
safe-buffer "5.1.1" | ||
send "0.16.1" | ||
serve-static "1.13.1" | ||
setprototypeof "1.1.0" | ||
statuses "~1.3.1" | ||
type-is "~1.6.15" | ||
utils-merge "1.0.1" | ||
vary "~1.1.2" | ||
|
||
[email protected]: | ||
version "1.1.0" | ||
resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.0.tgz#ce0b6855b45853e791b2fcc680046d88253dd7f5" | ||
dependencies: | ||
debug "2.6.9" | ||
encodeurl "~1.0.1" | ||
escape-html "~1.0.3" | ||
on-finished "~2.3.0" | ||
parseurl "~1.3.2" | ||
statuses "~1.3.1" | ||
unpipe "~1.0.0" | ||
|
||
forwarded@~0.1.2: | ||
version "0.1.2" | ||
resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" | ||
|
||
[email protected]: | ||
version "0.5.2" | ||
resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" | ||
|
||
[email protected], http-errors@~1.6.2: | ||
version "1.6.2" | ||
resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.2.tgz#0a002cc85707192a7e7946ceedc11155f60ec736" | ||
dependencies: | ||
depd "1.1.1" | ||
inherits "2.0.3" | ||
setprototypeof "1.0.3" | ||
statuses ">= 1.3.1 < 2" | ||
|
||
[email protected]: | ||
version "0.4.19" | ||
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" | ||
|
||
[email protected]: | ||
version "2.0.3" | ||
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" | ||
|
||
[email protected]: | ||
version "1.5.2" | ||
resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.5.2.tgz#d4b505bde9946987ccf0fc58d9010ff9607e3fa0" | ||
|
||
[email protected]: | ||
version "0.3.0" | ||
resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" | ||
|
||
[email protected]: | ||
version "1.0.1" | ||
resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" | ||
|
||
methods@~1.1.2: | ||
version "1.1.2" | ||
resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" | ||
|
||
mime-db@~1.30.0: | ||
version "1.30.0" | ||
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" | ||
|
||
mime-types@~2.1.15, mime-types@~2.1.16: | ||
version "2.1.17" | ||
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" | ||
dependencies: | ||
mime-db "~1.30.0" | ||
|
||
[email protected]: | ||
version "1.4.1" | ||
resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" | ||
|
||
[email protected]: | ||
version "2.0.0" | ||
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" | ||
|
||
[email protected]: | ||
version "0.6.1" | ||
resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" | ||
|
||
on-finished@~2.3.0: | ||
version "2.3.0" | ||
resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" | ||
dependencies: | ||
ee-first "1.1.1" | ||
|
||
parseurl@~1.3.2: | ||
version "1.3.2" | ||
resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" | ||
|
||
[email protected]: | ||
version "0.1.7" | ||
resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" | ||
|
||
proxy-addr@~2.0.2: | ||
version "2.0.2" | ||
resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.2.tgz#6571504f47bb988ec8180253f85dd7e14952bdec" | ||
dependencies: | ||
forwarded "~0.1.2" | ||
ipaddr.js "1.5.2" | ||
|
||
[email protected]: | ||
version "6.5.1" | ||
resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" | ||
|
||
range-parser@~1.2.0: | ||
version "1.2.0" | ||
resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" | ||
|
||
[email protected]: | ||
version "2.3.2" | ||
resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.2.tgz#bcd60c77d3eb93cde0050295c3f379389bc88f89" | ||
dependencies: | ||
bytes "3.0.0" | ||
http-errors "1.6.2" | ||
iconv-lite "0.4.19" | ||
unpipe "1.0.0" | ||
|
||
[email protected]: | ||
version "5.1.1" | ||
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" | ||
|
||
[email protected]: | ||
version "0.16.1" | ||
resolved "https://registry.yarnpkg.com/send/-/send-0.16.1.tgz#a70e1ca21d1382c11d0d9f6231deb281080d7ab3" | ||
dependencies: | ||
debug "2.6.9" | ||
depd "~1.1.1" | ||
destroy "~1.0.4" | ||
encodeurl "~1.0.1" | ||
escape-html "~1.0.3" | ||
etag "~1.8.1" | ||
fresh "0.5.2" | ||
http-errors "~1.6.2" | ||
mime "1.4.1" | ||
ms "2.0.0" | ||
on-finished "~2.3.0" | ||
range-parser "~1.2.0" | ||
statuses "~1.3.1" | ||
|
||
[email protected]: | ||
version "1.13.1" | ||
resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.1.tgz#4c57d53404a761d8f2e7c1e8a18a47dbf278a719" | ||
dependencies: | ||
encodeurl "~1.0.1" | ||
escape-html "~1.0.3" | ||
parseurl "~1.3.2" | ||
send "0.16.1" | ||
|
||
[email protected]: | ||
version "1.0.3" | ||
resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" | ||
|
||
[email protected]: | ||
version "1.1.0" | ||
resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" | ||
|
||
"statuses@>= 1.3.1 < 2": | ||
version "1.4.0" | ||
resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" | ||
|
||
statuses@~1.3.1: | ||
version "1.3.1" | ||
resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" | ||
|
||
type-is@~1.6.15: | ||
version "1.6.15" | ||
resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.15.tgz#cab10fb4909e441c82842eafe1ad646c81804410" | ||
dependencies: | ||
media-typer "0.3.0" | ||
mime-types "~2.1.15" | ||
|
||
[email protected], unpipe@~1.0.0: | ||
version "1.0.0" | ||
resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" | ||
|
||
[email protected]: | ||
version "1.0.1" | ||
resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" | ||
|
||
vary@~1.1.2: | ||
version "1.1.2" | ||
resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
#!/bin/bash | ||
set -e | ||
set -x | ||
ACTION_NAME=rehearsal-centos-6-package-list | ||
IMAGE_NAME=arjunguha/$ACTION_NAME | ||
docker build -t $IMAGE_NAME . | ||
docker push $IMAGE_NAME | ||
bx wsk action update $ACTION_NAME |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
/node_modules | ||
/dist | ||
/rehearsal-package-server.zip |
Oops, something went wrong.