You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@openwhisk.apache.org by GitBox <gi...@apache.org> on 2018/06/21 01:37:42 UTC

[GitHub] csantanapr closed pull request #3745: Remove runtime builds

csantanapr closed pull request #3745: Remove runtime builds
URL: https://github.com/apache/incubator-openwhisk/pull/3745
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/.gitignore b/.gitignore
index 7a5367f33c..44a18f8ec9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -84,3 +84,6 @@ ansible/roles/controller/files/*.p12
 
 # dev
 intellij-run-config.groovy
+
+# VSCode
+.vscode/
diff --git a/.travis.yml b/.travis.yml
index a34a2a3e2a..859f29b469 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -29,7 +29,7 @@ services:
 env:
   global:
     - ANSIBLE_CMD="ansible-playbook -i environments/local -e docker_image_prefix=testing"
-    - GRADLE_PROJS_SKIP="-x :actionRuntimes:pythonAction:distDocker  -x :actionRuntimes:python2Action:distDocker -x actionRuntimes:swift3.1.1Action:distDocker -x actionRuntimes:swift4.1Action:distDocker -x :actionRuntimes:javaAction:distDocker"
+    - GRADLE_PROJS_SKIP=""
 
 notifications:
   email: false
diff --git a/actionRuntimes/actionProxy/build.gradle b/actionRuntimes/actionProxy/build.gradle
deleted file mode 100644
index 80b022a49c..0000000000
--- a/actionRuntimes/actionProxy/build.gradle
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
- * 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.
- */
-
-ext.dockerImageName = 'dockerskeleton'
-apply from: '../../gradle/docker.gradle'
diff --git a/actionRuntimes/javaAction/Dockerfile b/actionRuntimes/javaAction/Dockerfile
deleted file mode 100644
index 8c5c1acec3..0000000000
--- a/actionRuntimes/javaAction/Dockerfile
+++ /dev/null
@@ -1,4 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more contributor
-# license agreements; and to You under the Apache License, Version 2.0.
-
-FROM openwhisk/java8action:1.1.0
diff --git a/actionRuntimes/javaAction/build.gradle b/actionRuntimes/javaAction/build.gradle
deleted file mode 100644
index 539efcf40c..0000000000
--- a/actionRuntimes/javaAction/build.gradle
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
- * 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.
- */
-
-ext.dockerImageName = 'java8action'
-apply from: '../../gradle/docker.gradle'
diff --git a/actionRuntimes/javaAction/delete-build-run.sh b/actionRuntimes/javaAction/delete-build-run.sh
deleted file mode 100755
index 8765a319b8..0000000000
--- a/actionRuntimes/javaAction/delete-build-run.sh
+++ /dev/null
@@ -1,31 +0,0 @@
-#!/usr/bin/env bash
-#
-# 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.
-#
-
-# Useful for local testing.
-# USE WITH CAUTION !!
-
-# Removes all previously built instances.
-docker rm $(docker ps -a -q)
-
-docker build -t javabox .
-
-echo ""
-echo "  ---- RUNNING ---- "
-echo ""
-
-docker run -i -t -p 8080:8080 javabox
diff --git a/actionRuntimes/nodejs6Action/Dockerfile b/actionRuntimes/nodejs6Action/Dockerfile
deleted file mode 100644
index 1592a1e5c9..0000000000
--- a/actionRuntimes/nodejs6Action/Dockerfile
+++ /dev/null
@@ -1,4 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more contributor
-# license agreements; and to You under the Apache License, Version 2.0.
-
-FROM openwhisk/nodejs6action:1.9.1
diff --git a/actionRuntimes/nodejs6Action/build.gradle b/actionRuntimes/nodejs6Action/build.gradle
deleted file mode 100644
index 5b93a4bb17..0000000000
--- a/actionRuntimes/nodejs6Action/build.gradle
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * 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.
- */
-
-apply plugin: 'eclipse'
-eclipse {
-    project {
-        natures 'org.eclipse.wst.jsdt.core.jsNature'
-        buildCommand 'org.eclipse.wst.jsdt.core.javascriptValidator'
-    }
-}
-
-ext.dockerImageName = 'nodejs6action'
-apply from: '../../gradle/docker.gradle'
diff --git a/actionRuntimes/nodejs8Action/Dockerfile b/actionRuntimes/nodejs8Action/Dockerfile
deleted file mode 100644
index a6ec458196..0000000000
--- a/actionRuntimes/nodejs8Action/Dockerfile
+++ /dev/null
@@ -1,4 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more contributor
-# license agreements; and to You under the Apache License, Version 2.0.
-
-FROM openwhisk/action-nodejs-v8:1.6.1
diff --git a/actionRuntimes/nodejs8Action/build.gradle b/actionRuntimes/nodejs8Action/build.gradle
deleted file mode 100644
index d16f831d63..0000000000
--- a/actionRuntimes/nodejs8Action/build.gradle
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * 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.
- */
-
-apply plugin: 'eclipse'
-eclipse {
-    project {
-        natures 'org.eclipse.wst.jsdt.core.jsNature'
-        buildCommand 'org.eclipse.wst.jsdt.core.javascriptValidator'
-    }
-}
-
-ext.dockerImageName = 'action-nodejs-v8'
-apply from: '../../gradle/docker.gradle'
diff --git a/actionRuntimes/php7.1Action/Dockerfile b/actionRuntimes/php7.1Action/Dockerfile
deleted file mode 100644
index edf1f2aa99..0000000000
--- a/actionRuntimes/php7.1Action/Dockerfile
+++ /dev/null
@@ -1,4 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more contributor
-# license agreements; and to You under the Apache License, Version 2.0.
-
-FROM openwhisk/action-php-v7.1:1.0.1
diff --git a/actionRuntimes/php7.1Action/build.gradle b/actionRuntimes/php7.1Action/build.gradle
deleted file mode 100644
index a6e9292d57..0000000000
--- a/actionRuntimes/php7.1Action/build.gradle
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
- * 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.
- */
-
-ext.dockerImageName = 'action-php-v7.1'
-apply from: '../../gradle/docker.gradle'
diff --git a/actionRuntimes/python2Action/Dockerfile b/actionRuntimes/python2Action/Dockerfile
deleted file mode 100644
index f06d8c4994..0000000000
--- a/actionRuntimes/python2Action/Dockerfile
+++ /dev/null
@@ -1,4 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more contributor
-# license agreements; and to You under the Apache License, Version 2.0.
-
-FROM openwhisk/python2action:1.0.0
diff --git a/actionRuntimes/python2Action/build.gradle b/actionRuntimes/python2Action/build.gradle
deleted file mode 100644
index 6f9664e72f..0000000000
--- a/actionRuntimes/python2Action/build.gradle
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
- * 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.
- */
-
-ext.dockerImageName = 'python2action'
-apply from: '../../gradle/docker.gradle'
diff --git a/actionRuntimes/pythonAction/Dockerfile b/actionRuntimes/pythonAction/Dockerfile
deleted file mode 100644
index ccc727f123..0000000000
--- a/actionRuntimes/pythonAction/Dockerfile
+++ /dev/null
@@ -1,4 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more contributor
-# license agreements; and to You under the Apache License, Version 2.0.
-
-FROM openwhisk/python3action:1.0.0
diff --git a/actionRuntimes/pythonAction/build.gradle b/actionRuntimes/pythonAction/build.gradle
deleted file mode 100644
index f120d868f1..0000000000
--- a/actionRuntimes/pythonAction/build.gradle
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
- * 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.
- */
-
-ext.dockerImageName = 'python3action'
-apply from: '../../gradle/docker.gradle'
diff --git a/actionRuntimes/swift3.1.1Action/Dockerfile b/actionRuntimes/swift3.1.1Action/Dockerfile
deleted file mode 100755
index f735d276ea..0000000000
--- a/actionRuntimes/swift3.1.1Action/Dockerfile
+++ /dev/null
@@ -1,4 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more contributor
-# license agreements; and to You under the Apache License, Version 2.0.
-
-FROM openwhisk/action-swift-v3.1.1:1.0.0
diff --git a/actionRuntimes/swift3.1.1Action/build.gradle b/actionRuntimes/swift3.1.1Action/build.gradle
deleted file mode 100755
index 678d0ad39c..0000000000
--- a/actionRuntimes/swift3.1.1Action/build.gradle
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
- * 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.
- */
-
-ext.dockerImageName = 'action-swift-v3.1.1'
-apply from: '../../gradle/docker.gradle'
diff --git a/actionRuntimes/swift4.1Action/Dockerfile b/actionRuntimes/swift4.1Action/Dockerfile
deleted file mode 100755
index fda4404ae8..0000000000
--- a/actionRuntimes/swift4.1Action/Dockerfile
+++ /dev/null
@@ -1,4 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more contributor
-# license agreements; and to You under the Apache License, Version 2.0.
-
-FROM openwhisk/action-swift-v4.1:1.0.5
diff --git a/actionRuntimes/swift4.1Action/build.gradle b/actionRuntimes/swift4.1Action/build.gradle
deleted file mode 100755
index c70bc4c399..0000000000
--- a/actionRuntimes/swift4.1Action/build.gradle
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
- * 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.
- */
-
-ext.dockerImageName = 'action-swift-v4.1'
-apply from: '../../gradle/docker.gradle'
diff --git a/sdk/docker/Dockerfile b/sdk/docker/Dockerfile
deleted file mode 100644
index d0ae174d8c..0000000000
--- a/sdk/docker/Dockerfile
+++ /dev/null
@@ -1,5 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more contributor
-# license agreements; and to You under the Apache License, Version 2.0.
-
-# Dockerfile for example whisk docker action
-FROM openwhisk/example:1.0.0
diff --git a/sdk/docker/build.gradle b/sdk/docker/build.gradle
deleted file mode 100644
index 31cd41f346..0000000000
--- a/sdk/docker/build.gradle
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
- * 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.
- */
-
-ext.dockerImageName = 'example'
-apply from: '../../gradle/docker.gradle'
diff --git a/settings.gradle b/settings.gradle
index ecb59f2332..283120b660 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -19,23 +19,12 @@ include 'common:scala'
 
 include 'core:controller'
 include 'core:invoker'
-include 'actionRuntimes:nodejs6Action'
-include 'actionRuntimes:nodejs8Action'
-include 'actionRuntimes:actionProxy'
-include 'actionRuntimes:pythonAction'
-include 'actionRuntimes:python2Action'
-include 'actionRuntimes:swift3.1.1Action'
-include 'actionRuntimes:swift4.1Action'
-include 'actionRuntimes:javaAction'
-include 'actionRuntimes:php7.1Action'
-
-include 'sdk:docker'
 
 include 'tests'
-include 'tests:dat:blackbox:badaction'
-include 'tests:dat:blackbox:badproxy'
 include 'tests:performance:gatling_tests'
 
+include 'tools:actionProxy'
+
 rootProject.name = 'openwhisk'
 
 gradle.ext.scala = [
diff --git a/tests/build.gradle b/tests/build.gradle
index 74dcf2ca3d..266dc31c50 100644
--- a/tests/build.gradle
+++ b/tests/build.gradle
@@ -42,9 +42,6 @@ tasks.withType(Test) {
 }
 
 def leanExcludes = [
-    '**/*Swift*',
-    '**/*Python*',
-    '**/*Java*',
     '**/*ThrottleTests*',
     '**/MaxActionDurationTests*',
 ]
@@ -52,7 +49,6 @@ def leanExcludes = [
 ext.testSets = [
     "REQUIRE_ONLY_DB" : [
         "includes" : [
-            "actionContainers/**",
             "ha/**",
             "whisk/**"
         ],
@@ -131,32 +127,8 @@ task testUnit(type: Test) {
     ]
 
     exclude couchDbExcludes
-    exclude "actionContainers/**"
 }
 
-task testLeanCli(type: Test) {
-    exclude '**/*Swift*'
-    exclude '**/*Python*'
-    exclude '**/*Java*'
-    exclude '**/*ThrottleTests*'
-    exclude '**/MaxActionDurationTests*'
-    exclude '**/*ApiGwRestBasicTests*'
-    exclude '**/*Rest*'
-}
-
-// Add all images needed for local testing here
-test.dependsOn([
-    ':actionRuntimes:nodejs6Action:distDocker',
-    ':actionRuntimes:actionProxy:distDocker',
-    ':actionRuntimes:pythonAction:distDocker',
-    ':actionRuntimes:python2Action:distDocker',
-    ':actionRuntimes:javaAction:distDocker',
-    ':actionRuntimes:swift3.1.1Action:distDocker',
-    ':sdk:docker:distDocker',
-    ':tests:dat:blackbox:badaction:distDocker',
-    ':tests:dat:blackbox:badproxy:distDocker'
-])
-
 dependencies {
     compile "org.scala-lang:scala-library:${gradle.scala.version}"
     compile 'org.apache.commons:commons-lang3:3.3.2'
diff --git a/tests/dat/blackbox/badaction/Dockerfile b/tests/dat/blackbox/badaction/Dockerfile
deleted file mode 100644
index bc0095b6fc..0000000000
--- a/tests/dat/blackbox/badaction/Dockerfile
+++ /dev/null
@@ -1,11 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more contributor
-# license agreements; and to You under the Apache License, Version 2.0.
-
-# Dockerfile for example whisk docker action
-FROM dockerskeleton
-
-ENV FLASK_PROXY_PORT 8080
-
-ADD runner.py /actionProxy/
-
-CMD ["/bin/bash", "-c", "cd actionProxy && python -u runner.py"]
diff --git a/tests/dat/blackbox/badaction/README.md b/tests/dat/blackbox/badaction/README.md
deleted file mode 100644
index b41336e2a5..0000000000
--- a/tests/dat/blackbox/badaction/README.md
+++ /dev/null
@@ -1,25 +0,0 @@
-<!--
-#
-# 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.
-#
--->
-
-A docker action that can manipulates `/init` and `/run` in different ways including
-- not responding
-- aborting and terminating the container
-
-The action overrides the [common action proxy runner](../../../core/actionProxy/actionproxy.py) with programmable `init` and `run` methods.
-These containers are used in [Docker container tests](../../src/actionContainers/DockerExampleContainerTests.scala).
diff --git a/tests/dat/blackbox/badaction/build.gradle b/tests/dat/blackbox/badaction/build.gradle
deleted file mode 100644
index d018a1421c..0000000000
--- a/tests/dat/blackbox/badaction/build.gradle
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * 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.
- */
-
-ext.dockerImageName = 'badaction'
-
-apply from: '../../../../gradle/docker.gradle'
-distDocker.dependsOn ':actionRuntimes:actionProxy:distDocker'
diff --git a/tests/dat/blackbox/badaction/runner.py b/tests/dat/blackbox/badaction/runner.py
deleted file mode 100644
index e7f7e1c3c5..0000000000
--- a/tests/dat/blackbox/badaction/runner.py
+++ /dev/null
@@ -1,57 +0,0 @@
-"""Python bad action runner (sleep forever).
-
-/*
- * 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.
- */
-"""
-import sys
-import time
-sys.path.append('../actionProxy')
-from actionproxy import ActionRunner, main, setRunner
-
-
-class Runner(ActionRunner):
-
-    def __init__(self):
-        ActionRunner.__init__(self)
-
-    def init(self, message):
-        if 'code' in message and message['code'] == 'sleep':
-            # sleep forever/never respond
-            while True:
-                print("sleeping")
-                time.sleep(60)
-        elif 'code' in message and message['code'] == 'exit':
-            print("exiting")
-            sys.exit(1)
-        else:
-            return ActionRunner.init(self, message)
-
-    def run(self, args, env):
-        if 'sleep' in args:
-            # sleep forever/never respond
-            while True:
-                print("sleeping")
-                time.sleep(60)
-        elif 'exit' in args:
-            print("exiting")
-            sys.exit(1)
-        else:
-            return ActionRunner.run(self, args, env)
-
-if __name__ == "__main__":
-    setRunner(Runner())
-    main()
diff --git a/tests/dat/blackbox/badproxy/Dockerfile b/tests/dat/blackbox/badproxy/Dockerfile
deleted file mode 100644
index af0c526f6a..0000000000
--- a/tests/dat/blackbox/badproxy/Dockerfile
+++ /dev/null
@@ -1,9 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more contributor
-# license agreements; and to You under the Apache License, Version 2.0.
-
-# Dockerfile for example whisk docker action
-FROM dockerskeleton
-
-ENV FLASK_PROXY_PORT 8080
-
-CMD ["/bin/bash", "-c", "tail -f /dev/null"]
diff --git a/tests/dat/blackbox/badproxy/README.md b/tests/dat/blackbox/badproxy/README.md
deleted file mode 100644
index d1a466d20c..0000000000
--- a/tests/dat/blackbox/badproxy/README.md
+++ /dev/null
@@ -1,20 +0,0 @@
-<!--
-#
-# 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.
-#
--->
-
-A docker action that does not implement a proper proxy. Runs a shell commands that never terminates.
diff --git a/tests/dat/blackbox/badproxy/build.gradle b/tests/dat/blackbox/badproxy/build.gradle
deleted file mode 100644
index 250182d57f..0000000000
--- a/tests/dat/blackbox/badproxy/build.gradle
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * 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.
- */
-
-ext.dockerImageName = 'badproxy'
-
-apply from: '../../../../gradle/docker.gradle'
-distDocker.dependsOn ':actionRuntimes:actionProxy:distDocker'
diff --git a/actionRuntimes/actionProxy/Dockerfile b/tools/actionProxy/Dockerfile
similarity index 87%
rename from actionRuntimes/actionProxy/Dockerfile
rename to tools/actionProxy/Dockerfile
index 32bf71bb24..c8a6917905 100644
--- a/actionRuntimes/actionProxy/Dockerfile
+++ b/tools/actionProxy/Dockerfile
@@ -2,4 +2,4 @@
 # license agreements; and to You under the Apache License, Version 2.0.
 
 # Dockerfile for docker skeleton (useful for running blackbox binaries, scripts, or Python 3 actions) .
-FROM openwhisk/dockerskeleton:1.3.0
+FROM openwhisk/dockerskeleton
diff --git a/actionRuntimes/actionProxy/README.md b/tools/actionProxy/README.md
similarity index 100%
rename from actionRuntimes/actionProxy/README.md
rename to tools/actionProxy/README.md
diff --git a/actionRuntimes/actionProxy/invoke.py b/tools/actionProxy/invoke.py
similarity index 100%
rename from actionRuntimes/actionProxy/invoke.py
rename to tools/actionProxy/invoke.py
diff --git a/tools/build/README.md b/tools/build/README.md
index f0e9792a19..f6166a5939 100644
--- a/tools/build/README.md
+++ b/tools/build/README.md
@@ -47,6 +47,12 @@ For example, the following is handy to run a subset of all tests from the comman
 
   * `redo tests -a '--tests package.name.TestClass.evenMethodName'`
 
+Some components are dynamically generated. This is supported by a generic component name
+which specifies a regex. The `runtime:([\w]+)` is one such component, useful for rebuilding
+action runtime images.
+
+  * `redo --dir /path/to/incubator-openwhisk-runtime-nodejs runtime:nodejs6action`
+
 ## How to use `citool`
 
 This script allows for monitoring of ongoing Jenkins and Travis builds.
diff --git a/tools/build/redo b/tools/build/redo
index de0d300b33..f40171558f 100755
--- a/tools/build/redo
+++ b/tools/build/redo
@@ -23,6 +23,7 @@ import platform
 import argparse
 import shlex
 import subprocess
+import re
 
 # the default openwhisk location in openwhisk checkouts
 defaultOpenwhisk = os.path.dirname(os.path.realpath(__file__)) + '/../../'
@@ -273,47 +274,16 @@ Components = [
                   yaml = 'postdeploy.yml'),
 
     # the following (re)build images via gradle
-
-    makeComponent('nodejs6action',
-                  'build node.js v6 action container',
-                  yaml = False,
-                  gradle = 'actionRuntimes:nodejs6Action'),
-
-    makeComponent('actionproxy',
-                  'build action proxy container',
-                  yaml = False,
-                  gradle = 'actionRuntimes:actionProxy'),
-
-    makeComponent('python2action',
-                  'build python v2.7 action container',
-                  yaml = False,
-                  gradle = 'actionRuntimes:python2Action'),
-
-    makeComponent('python3action',
-                  'build python action container',
-                  yaml = False,
-                  gradle = 'actionRuntimes:pythonAction'),
-
-    makeComponent('action-swift-v3.1.1',
-                  'build swift v3.1.1 action container',
+    makeComponent('runtime:([\w]+)',
+                  'build a runtime action container, matching name using the regex; NOTE: must use --dir for path to runtime directory',
                   yaml = False,
-                  gradle = 'actionRuntimes:swift3.1.1Action'),
-
-    makeComponent('java8action',
-                  'build java action container',
-                  yaml = False,
-                  gradle = 'actionRuntimes:javaAction'),
-
-    makeComponent('action-php-v7.1',
-                  'build PHP v7.1 action container',
-                  yaml = False,
-                  gradle = 'actionRuntimes:php7.1Action'),
-
-    makeComponent('dockersdk',
-                  'build docker action SDK (to deploy, use edge component)',
-                  yaml = False,
-                  gradle = 'sdk:docker'),
-
+                  gradle = 'core:$1:distDocker'),
+    
+    makeComponent('actionproxy',	
+                  'build action proxy container',	
+                  yaml = False,	
+                  gradle = 'tools:actionProxy'),
+    
     # required for tests
     makeComponent('props',
                   'build whisk.properties file (required for tests)',
@@ -337,6 +307,15 @@ def getComponent(component):
     for c in Components:
         if c['name'] == component:
             return c
+        else:
+            parts = re.match(c['name'], component)
+            if parts:
+                name = parts.group(1)
+                return makeComponent('runtime:' + name,
+                          'build a ' + name + ' runtime action container',
+                          yaml = False,
+                          gradle = 'core:' + name)
+
     return False
 
 def bold(string):


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services