You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by bl...@apache.org on 2020/06/24 06:31:46 UTC

[pulsar-dotpulsar] branch master updated: Enable CI (#42)

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

blankensteiner pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar-dotpulsar.git


The following commit(s) were added to refs/heads/master by this push:
     new 96f387b  Enable CI (#42)
96f387b is described below

commit 96f387be6250f8f6b138ce4f53a29d0c19eb8b7b
Author: Aaron Robert <Ro...@outlook.com>
AuthorDate: Wed Jun 24 14:31:37 2020 +0800

    Enable CI (#42)
    
    * Add ci-unit.yaml to enable ci
    
    * Update dotnet-version to 3.1.x
    
    * Support dotnet SxS
    actions/setup-dotnet#25
---
 .github/workflows/ci-unit.yaml | 79 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 79 insertions(+)

diff --git a/.github/workflows/ci-unit.yaml b/.github/workflows/ci-unit.yaml
new file mode 100644
index 0000000..e241abb
--- /dev/null
+++ b/.github/workflows/ci-unit.yaml
@@ -0,0 +1,79 @@
+#
+# 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.
+#
+
+name: CI - Unit
+on:
+  pull_request:
+    branches:
+      - master
+
+jobs:
+
+  unit-tests:
+    name:
+    runs-on: ubuntu-latest
+    timeout-minutes: 120
+
+    steps:
+      - name: checkout
+        uses: actions/checkout@v2
+        with:
+          fetch-depth: 0
+          ref: ${{ github.event.pull_request.head.sha }}
+
+      - name: set up dotnet 3
+        uses: actions/setup-dotnet@v1
+        with:
+          dotnet-version: '3.1.x'
+
+      - name: set up dotnet 2
+        uses: actions/setup-dotnet@v1
+        with:
+          dotnet-version: '2.2.x'
+
+      - name: setup dotnet SxS
+        shell: pwsh
+        run: |
+          $version = Split-Path (Split-Path $ENV:DOTNET_ROOT -Parent) -Leaf;
+          $root = Split-Path (Split-Path $ENV:DOTNET_ROOT -Parent) -Parent;
+          $directories = Get-ChildItem $root | Where-Object { $_.Name -ne $version };
+          foreach ($dir in $directories) {
+            $from = $dir.FullName;
+            $to = "$root/$version";
+            Write-Host Copying from $from to $to;
+            Copy-Item "$from\*" $to -Recurse -Force;
+          }
+
+      - name: run unit tests
+        run: dotnet test --logger "trx;verbosity=detailed"
+
+      - name: package artifacts
+        if: failure()
+        run: |
+          rm -rf artifacts
+          mkdir artifacts
+          find . -type d -name "TestResults" -exec cp --parents -R {} artifacts/ \;
+          zip -r artifacts.zip artifacts
+
+      - name: upload artifacts
+        uses: actions/upload-artifact@master
+        if: failure()
+        with:
+          name: artifacts
+          path: artifacts.zip