remove golang1.11 and golang1.12 (#130)

diff --git a/.gitignore b/.gitignore
index 80e637f..a06a05b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -14,8 +14,8 @@
 # Go binary proxy
 common/proxy
 actionloop/proxy
-golang1.11/proxy
-golang1.12/proxy
+golang1.13/proxy
+golang1.15/proxy
 
 # Go test transient files
 openwhisk/_test/exec
diff --git a/CHANGES.md b/CHANGES.md
index 9ba63f1..5606f5f 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -17,9 +17,9 @@
 #
 -->
 # 1.16.0 (next release)
-- removed build for go1.11 and go1.12
+- removed support for go1.11 and go1.12
 - updated examples
-- added go 1.13 and 1.14 with Go modules
+- added go 1.13 and 1.15 with Go modules
 - upgraded to go 1.12.17
 - add 'apt-get upgrade' to the image build to get latest security fixes during each build, for the case the base images are not updated frequently
 - added OW_WAIT_FOR_ACK such at if true, the proxy waits for an acknowledgement from the action on startup
diff --git a/golang1.11/CHANGELOG.md b/golang1.11/CHANGELOG.md
deleted file mode 100644
index e75ec07..0000000
--- a/golang1.11/CHANGELOG.md
+++ /dev/null
@@ -1,24 +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.
-#
--->
-
-# Go 1.11 OpenWhisk Runtime Container
-
-## Apache 1.16 (next release)
-Changes:
-- Adding Go 1.11.13
diff --git a/golang1.11/Dockerfile b/golang1.11/Dockerfile
deleted file mode 100644
index 1291c4e..0000000
--- a/golang1.11/Dockerfile
+++ /dev/null
@@ -1,35 +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.
-#
-FROM golang:1.11.13
-RUN echo "deb http://deb.debian.org/debian buster-backports main contrib non-free" >>/etc/apt/sources.list \
-    && apt-get update \
-    && apt-get -y --no-install-recommends upgrade \
-    && apt-get -y --no-install-recommends install \
-                        curl jq git \
-                        librdkafka1=0.11.6-1.1 \
-                        librdkafka++1=0.11.6-1.1 \
-                        librdkafka-dev=0.11.6-1.1 \
-    && apt-get clean \
-    && rm -rf /var/lib/apt/lists/* \
-    && mkdir /action
-
-WORKDIR /action
-ADD proxy /bin/proxy
-ADD gobuild.py /bin/compile
-ADD gobuild.py.launcher.go /bin/compile.launcher.go
-ENV OW_COMPILER=/bin/compile
-ENTRYPOINT [ "/bin/proxy" ]
diff --git a/golang1.11/build.gradle b/golang1.11/build.gradle
deleted file mode 100644
index c576a8b..0000000
--- a/golang1.11/build.gradle
+++ /dev/null
@@ -1,52 +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-golang-v1.11'
-apply from: '../gradle/docker.gradle'
-
-distDocker.dependsOn 'staticBuildProxy'
-distDocker.dependsOn 'copyCompiler'
-distDocker.dependsOn 'copyEpilogue'
-distDocker.finalizedBy('cleanup')
-
-task staticBuildProxy(type: Exec) {
-	environment CGO_ENABLED: "0"
-	environment GOOS: "linux"
-	environment GOARCH: "amd64"
-    environment GO111MODULE: "on"
-
-	commandLine 'go', 'build',
-		'-o',  'proxy', '-a',
-		'-ldflags', '-extldflags "-static"',
-		'../main/proxy.go'
-}
-
-task copyCompiler(type: Copy) {
-    from '../common/gobuild.py'
-    into '.'
-}
-
-task copyEpilogue(type: Copy) {
-    from '../common/gobuild.py.launcher.go'
-    into '.'
-}
-
-task cleanup(type: Delete) {
-    delete 'proxy'
-    delete 'gobuild.py'
-    delete 'gobuild.py.launcher.go'
-}
diff --git a/golang1.12/CHANGELOG.md b/golang1.12/CHANGELOG.md
deleted file mode 100644
index f80653e..0000000
--- a/golang1.12/CHANGELOG.md
+++ /dev/null
@@ -1,24 +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.
-#
--->
-
-# Go 1.12 OpenWhisk Runtime Container
-
-## Apache 1.16 (next release)
-Changes:
-- Adding Go 1.12.17
diff --git a/golang1.12/Dockerfile b/golang1.12/Dockerfile
deleted file mode 100644
index 5713ef1..0000000
--- a/golang1.12/Dockerfile
+++ /dev/null
@@ -1,35 +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.
-#
-FROM golang:1.12.17
-RUN echo "deb http://deb.debian.org/debian buster-backports main contrib non-free" >>/etc/apt/sources.list \
-    && apt-get update \
-    && apt-get -y --no-install-recommends upgrade \
-    && apt-get -y --no-install-recommends install \
-                        curl jq git \
-                        librdkafka1=0.11.6-1.1 \
-                        librdkafka++1=0.11.6-1.1 \
-                        librdkafka-dev=0.11.6-1.1 \
-    && apt-get clean \
-    && rm -rf /var/lib/apt/lists/* \
-    && mkdir /action
-
-WORKDIR /action
-ADD proxy /bin/proxy
-ADD gobuild.py /bin/compile
-ADD gobuild.py.launcher.go /bin/compile.launcher.go
-ENV OW_COMPILER=/bin/compile
-ENTRYPOINT [ "/bin/proxy" ]
diff --git a/golang1.12/build.gradle b/golang1.12/build.gradle
deleted file mode 100644
index 4dc2e36..0000000
--- a/golang1.12/build.gradle
+++ /dev/null
@@ -1,53 +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-golang-v1.12'
-apply from: '../gradle/docker.gradle'
-
-distDocker.dependsOn 'staticBuildProxy'
-distDocker.dependsOn 'copyCompiler'
-distDocker.dependsOn 'copyEpilogue'
-distDocker.finalizedBy('cleanup')
-
-task staticBuildProxy(type: Exec) {
-	environment CGO_ENABLED: "0"
-	environment GOOS: "linux"
-	environment GOARCH: "amd64"
-    environment GO111MODULE: "on"
-
-	commandLine 'go', 'build',
-		'-o',  'proxy', '-a',
-		'-ldflags', '-extldflags "-static"',
-		'../main/proxy.go'
-}
-
-
-task copyCompiler(type: Copy) {
-    from '../common/gobuild.py'
-    into '.'
-}
-
-task copyEpilogue(type: Copy) {
-    from '../common/gobuild.py.launcher.go'
-    into '.'
-}
-
-task cleanup(type: Delete) {
-    delete 'proxy'
-    delete 'gobuild.py'
-    delete 'gobuild.py.launcher.go'
-}
diff --git a/settings.gradle b/settings.gradle
index 810ebb9..9af38c8 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -18,8 +18,6 @@
 include 'tests'
 
 include 'actionloop'
-include 'golang1.11'
-include 'golang1.12'
 include 'golang1.13'
 include 'golang1.15'
 
diff --git a/tests/src/test/scala/runtime/actionContainers/ActionLoopBasicGo12Tests.scala b/tests/src/test/scala/runtime/actionContainers/ActionLoopBasicGo12Tests.scala
deleted file mode 100644
index 7502a67..0000000
--- a/tests/src/test/scala/runtime/actionContainers/ActionLoopBasicGo12Tests.scala
+++ /dev/null
@@ -1,31 +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.
- */
-package runtime.actionContainers
-
-import common.WskActorSystem
-import org.junit.runner.RunWith
-import org.scalatest.junit.JUnitRunner
-
-@RunWith(classOf[JUnitRunner])
-class ActionLoopBasicGo12Tests
-    extends ActionLoopBasicGoTests
-      with WskActorSystem {
-
-  override lazy val goCompiler = "action-golang-v1.12"
-  override lazy val image = goCompiler
-
-}
diff --git a/tests/src/test/scala/runtime/actionContainers/ActionLoopBasicGoTests.scala b/tests/src/test/scala/runtime/actionContainers/ActionLoopBasicGoTests.scala
index a9380be..e9b78b3 100644
--- a/tests/src/test/scala/runtime/actionContainers/ActionLoopBasicGoTests.scala
+++ b/tests/src/test/scala/runtime/actionContainers/ActionLoopBasicGoTests.scala
@@ -19,17 +19,14 @@
 import actionContainers.ActionContainer.withContainer
 import actionContainers.{ActionContainer, BasicActionRunnerTests}
 import common.WskActorSystem
-import org.junit.runner.RunWith
-import org.scalatest.junit.JUnitRunner
 
-@RunWith(classOf[JUnitRunner])
-class ActionLoopBasicGoTests
+abstract class ActionLoopBasicGoTests
     extends BasicActionRunnerTests
     with WskActorSystem {
 
-  lazy val goCompiler = "action-golang-v1.11"
-  lazy val image = goCompiler
-  lazy val requireAck = false
+  val goCompiler : String
+  val image : String
+  val requireAck : Boolean
 
   override def withActionContainer(env: Map[String, String] = Map.empty)(
       code: ActionContainer => Unit) = {
diff --git a/tests/src/test/scala/runtime/actionContainers/ActionLoopGo12ContainerTests.scala b/tests/src/test/scala/runtime/actionContainers/ActionLoopGo12ContainerTests.scala
deleted file mode 100644
index 2e83682..0000000
--- a/tests/src/test/scala/runtime/actionContainers/ActionLoopGo12ContainerTests.scala
+++ /dev/null
@@ -1,32 +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.
- */
-
-package runtime.actionContainers
-
-import common.WskActorSystem
-import org.junit.runner.RunWith
-import org.scalatest.junit.JUnitRunner
-
-@RunWith(classOf[JUnitRunner])
-class ActionLoopGo12ContainerTests
-    extends ActionLoopGoContainerTests
-      with WskActorSystem {
-
-  override lazy val goCompiler = "action-golang-v1.12"
-  override lazy val image = goCompiler
-
-}
diff --git a/tests/src/test/scala/runtime/actionContainers/ActionLoopGoContainerTests.scala b/tests/src/test/scala/runtime/actionContainers/ActionLoopGoContainerTests.scala
index b23a5dc..a058738 100644
--- a/tests/src/test/scala/runtime/actionContainers/ActionLoopGoContainerTests.scala
+++ b/tests/src/test/scala/runtime/actionContainers/ActionLoopGoContainerTests.scala
@@ -20,20 +20,17 @@
 import actionContainers.{ActionContainer, ActionProxyContainerTestUtils}
 import actionContainers.ActionContainer.withContainer
 import common.WskActorSystem
-import org.junit.runner.RunWith
-import org.scalatest.junit.JUnitRunner
 
 import spray.json.{JsObject, JsString}
 
-@RunWith(classOf[JUnitRunner])
-class ActionLoopGoContainerTests
+abstract class ActionLoopGoContainerTests
     extends ActionProxyContainerTestUtils
     with WskActorSystem {
 
   import GoResourceHelpers._
 
-  lazy val goCompiler = "action-golang-v1.11"
-  lazy val image = goCompiler
+  val goCompiler : String
+  val image : String
 
   def withActionLoopContainer(code: ActionContainer => Unit) =
     withContainer(image)(code)