You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwhisk.apache.org by ra...@apache.org on 2019/12/27 02:04:00 UTC

[openwhisk-runtime-dotnet] branch master updated: Migrate .NET 3.0 to .NET 3.1 (#30)

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

rabbah pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwhisk-runtime-dotnet.git


The following commit(s) were added to refs/heads/master by this push:
     new 1fa70f6  Migrate .NET 3.0 to .NET 3.1 (#30)
1fa70f6 is described below

commit 1fa70f66e3ff078b295194efeed3f8bc9dce9060
Author: Shawn Black <sh...@users.noreply.github.com>
AuthorDate: Thu Dec 26 20:03:55 2019 -0600

    Migrate .NET 3.0 to .NET 3.1 (#30)
    
    * .NET Core 3.0 support
    
    * Updated .NET Core 2.2 project references
    Updated .NET Core 2.2 Dockerfile to reference latest MS images
    Migrated Quick Starts to individual projects
    Moved shared test code to shared folder for reducing duplications
    
    * .NET Core 2.2 quickstart update for JSON reference
    
    * Removed trailing whitespace
    
    Removed trailing whitespace
    
    * Travis updates
    
    Updating to xenial; dotnet sdk 3.0 install
    
    * Download correct dpkg for .NET Core on 16.04
    
    Didn't update it, still referenced 14.04 dpkg
    
    * Scala formatting
    
    Updated to match expected formatting of file ... note for self: `gradlew scalafmtAll`
    
    * CHANGELOG Updates
    
    Updated to reflect appropriate release and release status.
    
    * .NET 3.0 to .NET 3.1
    
    .NET 3.0 to .NET 3.1
    
    * Scala Tests
    
    Fixed test class names; added additional test for 3.1 runtime to test 2.2 project
---
 .travis.yml                                         |   2 +-
 README.md                                           |   4 ++--
 core/{dotnet3.0 => dotnet3.1}/CHANGELOG.md          |   2 +-
 core/{dotnet3.0 => dotnet3.1}/Dockerfile            |   6 +++---
 core/{dotnet3.0 => dotnet3.1}/QUICKSTART.md         |  20 ++++++++++----------
 core/{dotnet3.0 => dotnet3.1}/build.gradle          |   2 +-
 .../Apache.OpenWhisk.Runtime.Common.csproj          |   2 +-
 .../HttpResponseExtension.cs                        |   0
 .../proxy/Apache.OpenWhisk.Runtime.Common/Init.cs   |   0
 .../proxy/Apache.OpenWhisk.Runtime.Common/Run.cs    |   0
 .../Apache.OpenWhisk.Runtime.Common/Startup.cs      |   0
 .../Apache.OpenWhisk.Runtime.Dotnet.Minimal.csproj  |   2 +-
 .../Program.cs                                      |   0
 core/{dotnet3.0 => dotnet3.1}/proxy/build.gradle    |   0
 .../proxy/gradle/wrapper/gradle-wrapper.jar         | Bin
 .../proxy/gradle/wrapper/gradle-wrapper.properties  |   0
 core/{dotnet3.0 => dotnet3.1}/proxy/gradlew         |   0
 core/{dotnet3.0 => dotnet3.1}/proxy/gradlew.bat     |   0
 .../proxy/openwhisk-runtime-dotnet.sln              |   0
 settings.gradle                                     |   6 +++---
 tests/build.gradle                                  |   2 +-
 .../Apache.OpenWhisk.Tests.Dotnet.csproj            |   0
 tests/{dotnet3.0 => dotnet3.1}/build.gradle         |   2 +-
 .../openwhisk-tests-dotnet.sln                      |   0
 ...ts.scala => DotNet3_1ActionContainerTests.scala} |   8 ++++----
 ...cala => DotNet3_1ActionContainerTests_2_2.scala} |   8 ++++----
 tools/travis/build.sh                               |   4 ++--
 27 files changed, 35 insertions(+), 35 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index cbf41e1..b6ff633 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -41,7 +41,7 @@ deploy:
     all_branches: true
     repo: apache/openwhisk-runtime-dotnet
 - provider: script
-  script: "./tools/travis/publish.sh openwhisk 2.2 nightly && ./tools/travis/publish.sh openwhisk 3.0 nightly"
+  script: "./tools/travis/publish.sh openwhisk 2.2 nightly && ./tools/travis/publish.sh openwhisk 3.1 nightly"
   on:
     branch: master
     repo: apache/openwhisk-runtime-dotnet
diff --git a/README.md b/README.md
index a529e1f..aef4ddc 100644
--- a/README.md
+++ b/README.md
@@ -25,12 +25,12 @@
 ## Changelogs
 
 - [.NET Core 2.2 CHANGELOG.md](core/dotnet2.2/CHANGELOG.md)
-- [.NET Core 3.0 CHANGELOG.md](core/dotnet3.0/CHANGELOG.md)
+- [.NET Core 3.1 CHANGELOG.md](core/dotnet3.1/CHANGELOG.md)
 
 ## Quick Start Guides
 
 - [.NET Core 2.2](core/dotnet2.2/QUICKSTART.md)
-- [.NET Core 3.0](core/dotnet3.0/QUICKSTART.md)
+- [.NET Core 3.1](core/dotnet3.1/QUICKSTART.md)
 
 # License
 
diff --git a/core/dotnet3.0/CHANGELOG.md b/core/dotnet3.1/CHANGELOG.md
similarity index 96%
rename from core/dotnet3.0/CHANGELOG.md
rename to core/dotnet3.1/CHANGELOG.md
index c09bde8..f4e3fa8 100644
--- a/core/dotnet3.0/CHANGELOG.md
+++ b/core/dotnet3.1/CHANGELOG.md
@@ -17,7 +17,7 @@
 #
 -->
 
-# .NET Core 3.0 OpenWhisk Runtime Container
+# .NET Core 3.1 OpenWhisk Runtime Container
 
 
 ## Release TBD
diff --git a/core/dotnet3.0/Dockerfile b/core/dotnet3.1/Dockerfile
similarity index 89%
rename from core/dotnet3.0/Dockerfile
rename to core/dotnet3.1/Dockerfile
index 9e9576f..f69c6d2 100644
--- a/core/dotnet3.0/Dockerfile
+++ b/core/dotnet3.1/Dockerfile
@@ -15,7 +15,7 @@
 # limitations under the License.
 #
 
-FROM mcr.microsoft.com/dotnet/core/sdk:3.0-alpine AS build
+FROM mcr.microsoft.com/dotnet/core/sdk:3.1-alpine AS build
 
 WORKDIR /app
 COPY proxy/Apache.OpenWhisk.Runtime.Common/*.csproj ./Apache.OpenWhisk.Runtime.Common/
@@ -26,9 +26,9 @@ RUN dotnet restore
 COPY proxy/Apache.OpenWhisk.Runtime.Common/. ./Apache.OpenWhisk.Runtime.Common/
 COPY proxy/Apache.OpenWhisk.Runtime.Dotnet.Minimal/. ./Apache.OpenWhisk.Runtime.Dotnet.Minimal/
 WORKDIR /app/Apache.OpenWhisk.Runtime.Dotnet.Minimal
-RUN dotnet publish -c Release -r alpine.3.9-x64 -o out
+RUN dotnet publish -c Release -r linux-musl-x64 -o out
 
-FROM mcr.microsoft.com/dotnet/core/runtime:3.0-alpine AS runtime
+FROM mcr.microsoft.com/dotnet/core/runtime:3.1-alpine AS runtime
 WORKDIR /app
 COPY --from=build /app/Apache.OpenWhisk.Runtime.Dotnet.Minimal/out ./
 ENV ASPNETCORE_URLS http://+:8080
diff --git a/core/dotnet3.0/QUICKSTART.md b/core/dotnet3.1/QUICKSTART.md
similarity index 91%
rename from core/dotnet3.0/QUICKSTART.md
rename to core/dotnet3.1/QUICKSTART.md
index c8e720f..1f4e63a 100644
--- a/core/dotnet3.0/QUICKSTART.md
+++ b/core/dotnet3.1/QUICKSTART.md
@@ -17,7 +17,7 @@
 #
 -->
 
-# Quick .NET Core 3.0 Action
+# Quick .NET Core 3.1 Action
 
 A .NET Core action is a .NET Core class library with a method called `Main` that has the exact signature as follows:
 
@@ -87,7 +87,7 @@ The value for `main` needs to be in the following format:
 To use on a deployment of OpenWhisk that contains the runtime as a kind:
 
 ```bash
-wsk action update helloDotNet helloDotNet.zip --main Apache.OpenWhisk.Example.Dotnet::Apache.OpenWhisk.Example.Dotnet.Hello::Main --kind dotnet:3.0
+wsk action update helloDotNet helloDotNet.zip --main Apache.OpenWhisk.Example.Dotnet::Apache.OpenWhisk.Example.Dotnet.Hello::Main --kind dotnet:3.1
 ```
 
 ## Invoke the .NET Core Action
@@ -107,19 +107,19 @@ wsk action invoke --result helloDotNet --param name World
 ## Local Development
 
 ```bash
-./gradlew core:dotnet3.0:distDocker
+./gradlew core:dotnet3.1:distDocker
 ```
 
-This will produce the image `whisk/action-dotnet-v3.0`
+This will produce the image `whisk/action-dotnet-v3.1`
 
 Build and Push image
 
 ```bash
 docker login
-./gradlew core:action-dotnet-v3.0:distDocker -PdockerImagePrefix=$prefix-user -PdockerRegistry=docker.io
+./gradlew core:action-dotnet-v3.1:distDocker -PdockerImagePrefix=$prefix-user -PdockerRegistry=docker.io
 ```
 
-Deploy OpenWhisk using ansible environment that contains the kind `dotnet:3.0`
+Deploy OpenWhisk using ansible environment that contains the kind `dotnet:3.1`
 Assuming you have OpenWhisk already deploy localy and `OPENWHISK_HOME` pointing to root directory of OpenWhisk core repository.
 
 Set `ROOTDIR` to the root directory of this repository.
@@ -162,7 +162,7 @@ Using gradle to run all tests
 Using gradle to run some tests
 
 ```bash
-./gradlew :tests:test --tests DotNet3_0ActionContainerTests
+./gradlew :tests:test --tests DotNet3_1ActionContainerTests
 ```
 
 Using IntelliJ:
@@ -175,14 +175,14 @@ Using IntelliJ:
 To use as docker action push to your own dockerhub account
 
 ```bash
-docker tag whisk/action-dotnet-v3.0 $user_prefix/action-dotnet-v3.0
-docker push $user_prefix/action-dotnet-v3.0
+docker tag whisk/action-dotnet-v3.1 $user_prefix/action-dotnet-v3.1
+docker push $user_prefix/action-dotnet-v3.1
 ```
 
 Then create the action using your the image from dockerhub
 
 ```bash
-wsk action update helloDotNet helloDotNet.zip --main Apache.OpenWhisk.Example.Dotnet::Apache.OpenWhisk.Example.Dotnet.Hello::Main --docker $user_prefix/action-dotnet-v3.0
+wsk action update helloDotNet helloDotNet.zip --main Apache.OpenWhisk.Example.Dotnet::Apache.OpenWhisk.Example.Dotnet.Hello::Main --docker $user_prefix/action-dotnet-v3.1
 ```
 
 The `$user_prefix` is usually your dockerhub user id.
diff --git a/core/dotnet3.0/build.gradle b/core/dotnet3.1/build.gradle
similarity index 95%
rename from core/dotnet3.0/build.gradle
rename to core/dotnet3.1/build.gradle
index 3d62aac..48d3de4 100644
--- a/core/dotnet3.0/build.gradle
+++ b/core/dotnet3.1/build.gradle
@@ -15,6 +15,6 @@
  * limitations under the License.
  */
 
-ext.dockerImageName = 'action-dotnet-v3.0'
+ext.dockerImageName = 'action-dotnet-v3.1'
 
 apply from: '../../gradle/docker.gradle'
diff --git a/core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Common/Apache.OpenWhisk.Runtime.Common.csproj b/core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Common/Apache.OpenWhisk.Runtime.Common.csproj
similarity index 95%
rename from core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Common/Apache.OpenWhisk.Runtime.Common.csproj
rename to core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Common/Apache.OpenWhisk.Runtime.Common.csproj
index db2338b..7d482f9 100644
--- a/core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Common/Apache.OpenWhisk.Runtime.Common.csproj
+++ b/core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Common/Apache.OpenWhisk.Runtime.Common.csproj
@@ -17,7 +17,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
     <PropertyGroup>
-        <TargetFramework>netcoreapp3.0</TargetFramework>
+        <TargetFramework>netcoreapp3.1</TargetFramework>
     </PropertyGroup>
 
     <ItemGroup>
diff --git a/core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Common/HttpResponseExtension.cs b/core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Common/HttpResponseExtension.cs
similarity index 100%
rename from core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Common/HttpResponseExtension.cs
rename to core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Common/HttpResponseExtension.cs
diff --git a/core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Common/Init.cs b/core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Common/Init.cs
similarity index 100%
rename from core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Common/Init.cs
rename to core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Common/Init.cs
diff --git a/core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Common/Run.cs b/core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Common/Run.cs
similarity index 100%
rename from core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Common/Run.cs
rename to core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Common/Run.cs
diff --git a/core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Common/Startup.cs b/core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Common/Startup.cs
similarity index 100%
rename from core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Common/Startup.cs
rename to core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Common/Startup.cs
diff --git a/core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Dotnet.Minimal/Apache.OpenWhisk.Runtime.Dotnet.Minimal.csproj b/core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Dotnet.Minimal/Apache.OpenWhisk.Runtime.Dotnet.Minimal.csproj
similarity index 94%
rename from core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Dotnet.Minimal/Apache.OpenWhisk.Runtime.Dotnet.Minimal.csproj
rename to core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Dotnet.Minimal/Apache.OpenWhisk.Runtime.Dotnet.Minimal.csproj
index 452115d..ce6efa6 100644
--- a/core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Dotnet.Minimal/Apache.OpenWhisk.Runtime.Dotnet.Minimal.csproj
+++ b/core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Dotnet.Minimal/Apache.OpenWhisk.Runtime.Dotnet.Minimal.csproj
@@ -18,7 +18,7 @@
 
     <PropertyGroup>
         <OutputType>Exe</OutputType>
-        <TargetFramework>netcoreapp3.0</TargetFramework>
+        <TargetFramework>netcoreapp3.1</TargetFramework>
     </PropertyGroup>
 
     <ItemGroup>
diff --git a/core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Dotnet.Minimal/Program.cs b/core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Dotnet.Minimal/Program.cs
similarity index 100%
rename from core/dotnet3.0/proxy/Apache.OpenWhisk.Runtime.Dotnet.Minimal/Program.cs
rename to core/dotnet3.1/proxy/Apache.OpenWhisk.Runtime.Dotnet.Minimal/Program.cs
diff --git a/core/dotnet3.0/proxy/build.gradle b/core/dotnet3.1/proxy/build.gradle
similarity index 100%
rename from core/dotnet3.0/proxy/build.gradle
rename to core/dotnet3.1/proxy/build.gradle
diff --git a/core/dotnet3.0/proxy/gradle/wrapper/gradle-wrapper.jar b/core/dotnet3.1/proxy/gradle/wrapper/gradle-wrapper.jar
similarity index 100%
rename from core/dotnet3.0/proxy/gradle/wrapper/gradle-wrapper.jar
rename to core/dotnet3.1/proxy/gradle/wrapper/gradle-wrapper.jar
diff --git a/core/dotnet3.0/proxy/gradle/wrapper/gradle-wrapper.properties b/core/dotnet3.1/proxy/gradle/wrapper/gradle-wrapper.properties
similarity index 100%
rename from core/dotnet3.0/proxy/gradle/wrapper/gradle-wrapper.properties
rename to core/dotnet3.1/proxy/gradle/wrapper/gradle-wrapper.properties
diff --git a/core/dotnet3.0/proxy/gradlew b/core/dotnet3.1/proxy/gradlew
similarity index 100%
rename from core/dotnet3.0/proxy/gradlew
rename to core/dotnet3.1/proxy/gradlew
diff --git a/core/dotnet3.0/proxy/gradlew.bat b/core/dotnet3.1/proxy/gradlew.bat
similarity index 100%
rename from core/dotnet3.0/proxy/gradlew.bat
rename to core/dotnet3.1/proxy/gradlew.bat
diff --git a/core/dotnet3.0/proxy/openwhisk-runtime-dotnet.sln b/core/dotnet3.1/proxy/openwhisk-runtime-dotnet.sln
similarity index 100%
rename from core/dotnet3.0/proxy/openwhisk-runtime-dotnet.sln
rename to core/dotnet3.1/proxy/openwhisk-runtime-dotnet.sln
diff --git a/settings.gradle b/settings.gradle
index d787614..f09a673 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -17,13 +17,13 @@
 
 include ':tests'
 include ':tests:dotnet2.2'
-include ':tests:dotnet3.0'
+include ':tests:dotnet3.1'
 
 include ':core:dotnet2.2'
 include ':core:dotnet2.2:proxy'
 
-include ':core:dotnet3.0'
-include ':core:dotnet3.0:proxy'
+include ':core:dotnet3.1'
+include ':core:dotnet3.1:proxy'
 
 rootProject.name = 'runtime-dotnet'
 
diff --git a/tests/build.gradle b/tests/build.gradle
index 2cfb28f..568d62d 100644
--- a/tests/build.gradle
+++ b/tests/build.gradle
@@ -44,5 +44,5 @@ tasks.withType(ScalaCompile) {
 
 compileTestScala {
     dependsOn ':tests:dotnet2.2:prepare'
-    dependsOn ':tests:dotnet3.0:prepare'
+    dependsOn ':tests:dotnet3.1:prepare'
 }
diff --git a/tests/dotnet3.0/Apache.OpenWhisk.Tests.Dotnet/Apache.OpenWhisk.Tests.Dotnet.csproj b/tests/dotnet3.1/Apache.OpenWhisk.Tests.Dotnet/Apache.OpenWhisk.Tests.Dotnet.csproj
similarity index 100%
rename from tests/dotnet3.0/Apache.OpenWhisk.Tests.Dotnet/Apache.OpenWhisk.Tests.Dotnet.csproj
rename to tests/dotnet3.1/Apache.OpenWhisk.Tests.Dotnet/Apache.OpenWhisk.Tests.Dotnet.csproj
diff --git a/tests/dotnet3.0/build.gradle b/tests/dotnet3.1/build.gradle
similarity index 97%
rename from tests/dotnet3.0/build.gradle
rename to tests/dotnet3.1/build.gradle
index 8c2e65e..c23a22c 100644
--- a/tests/dotnet3.0/build.gradle
+++ b/tests/dotnet3.1/build.gradle
@@ -41,7 +41,7 @@ task prepare_zip(type: Zip, dependsOn: prepare_distro) {
   from file('build/dist/out')
   include '*'
   include '**/**'
-  archiveName 'dotnettests3.0.zip'
+  archiveName 'dotnettests3.1.zip'
   destinationDir(file('../src/test/resources'))
 }
 
diff --git a/tests/dotnet3.0/openwhisk-tests-dotnet.sln b/tests/dotnet3.1/openwhisk-tests-dotnet.sln
similarity index 100%
rename from tests/dotnet3.0/openwhisk-tests-dotnet.sln
rename to tests/dotnet3.1/openwhisk-tests-dotnet.sln
diff --git a/tests/src/test/scala/actionContainers/DotNet3_0ActionContainerTests.scala b/tests/src/test/scala/actionContainers/DotNet3_1ActionContainerTests.scala
similarity index 97%
copy from tests/src/test/scala/actionContainers/DotNet3_0ActionContainerTests.scala
copy to tests/src/test/scala/actionContainers/DotNet3_1ActionContainerTests.scala
index d05860c..a0c1acb 100644
--- a/tests/src/test/scala/actionContainers/DotNet3_0ActionContainerTests.scala
+++ b/tests/src/test/scala/actionContainers/DotNet3_1ActionContainerTests.scala
@@ -25,12 +25,12 @@ import actionContainers.ActionContainer.withContainer
 import java.nio.file.Paths
 
 @RunWith(classOf[JUnitRunner])
-class DotNet3_0ActionContainerTests extends BasicActionRunnerTests with WskActorSystem {
-  val functionb64 = ResourceHelpers.readAsBase64(Paths.get(getClass.getResource("/dotnettests3.0.zip").getPath))
+class DotNet3_1ActionContainerTests extends BasicActionRunnerTests with WskActorSystem {
+  val functionb64 = ResourceHelpers.readAsBase64(Paths.get(getClass.getResource("/dotnettests3.1.zip").getPath))
 
   // Helpers specific to java actions
   override def withActionContainer(env: Map[String, String] = Map.empty)(
-    code: ActionContainer => Unit): (String, String) = withContainer("action-dotnet-v3.0", env)(code)
+    code: ActionContainer => Unit): (String, String) = withContainer("action-dotnet-v3.1", env)(code)
 
   behavior of "dotnet action"
 
@@ -112,7 +112,7 @@ class DotNet3_0ActionContainerTests extends BasicActionRunnerTests with WskActor
       runRes shouldBe defined
 
       runRes should {
-        be(Some(JsObject("error" -> JsString(".NETCoreApp,Version=v3.0"))))
+        be(Some(JsObject("error" -> JsString(".NETCoreApp,Version=v3.1"))))
       }
     }
 
diff --git a/tests/src/test/scala/actionContainers/DotNet3_0ActionContainerTests.scala b/tests/src/test/scala/actionContainers/DotNet3_1ActionContainerTests_2_2.scala
similarity index 97%
rename from tests/src/test/scala/actionContainers/DotNet3_0ActionContainerTests.scala
rename to tests/src/test/scala/actionContainers/DotNet3_1ActionContainerTests_2_2.scala
index d05860c..69e7c57 100644
--- a/tests/src/test/scala/actionContainers/DotNet3_0ActionContainerTests.scala
+++ b/tests/src/test/scala/actionContainers/DotNet3_1ActionContainerTests_2_2.scala
@@ -25,12 +25,12 @@ import actionContainers.ActionContainer.withContainer
 import java.nio.file.Paths
 
 @RunWith(classOf[JUnitRunner])
-class DotNet3_0ActionContainerTests extends BasicActionRunnerTests with WskActorSystem {
-  val functionb64 = ResourceHelpers.readAsBase64(Paths.get(getClass.getResource("/dotnettests3.0.zip").getPath))
+class DotNet3_1ActionContainerTests_2_2 extends BasicActionRunnerTests with WskActorSystem {
+  val functionb64 = ResourceHelpers.readAsBase64(Paths.get(getClass.getResource("/dotnettests2.2.zip").getPath))
 
   // Helpers specific to java actions
   override def withActionContainer(env: Map[String, String] = Map.empty)(
-    code: ActionContainer => Unit): (String, String) = withContainer("action-dotnet-v3.0", env)(code)
+    code: ActionContainer => Unit): (String, String) = withContainer("action-dotnet-v3.1", env)(code)
 
   behavior of "dotnet action"
 
@@ -112,7 +112,7 @@ class DotNet3_0ActionContainerTests extends BasicActionRunnerTests with WskActor
       runRes shouldBe defined
 
       runRes should {
-        be(Some(JsObject("error" -> JsString(".NETCoreApp,Version=v3.0"))))
+        be(Some(JsObject("error" -> JsString(".NETCoreApp,Version=v3.1"))))
       }
     }
 
diff --git a/tools/travis/build.sh b/tools/travis/build.sh
index 98027fb..9695072 100755
--- a/tools/travis/build.sh
+++ b/tools/travis/build.sh
@@ -31,7 +31,7 @@ export OPENWHISK_HOME=$WHISKDIR
 cd $UTILDIR
 scancode/scanCode.py --config scancode/ASF-Release.cfg $ROOTDIR
 
-# Upgrade dpkg avoid problems installing dotnet 3.0
+# Upgrade dpkg avoid problems installing dotnet 3.1
 # https://github.com/travis-ci/travis-ci/issues/9361#issuecomment-408431262
 sudo apt-get install -y --force-yes -q -qq dpkg
 # Install dotnet
@@ -39,7 +39,7 @@ wget -q https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-pr
 sudo dpkg -i packages-microsoft-prod.deb
 sudo apt-get install -y apt-transport-https
 sudo apt-get -y update -qq
-sudo apt-get install -y dotnet-sdk-3.0
+sudo apt-get install -y dotnet-sdk-3.1
 
 # Build OpenWhisk deps before we run tests
 cd $WHISKDIR