diff --git a/.github/workflows/backendtests.yml b/.github/workflows/backendtests.yml index ab4c9cfcd..6e7b2ed58 100644 --- a/.github/workflows/backendtests.yml +++ b/.github/workflows/backendtests.yml @@ -2,6 +2,8 @@ name: Backend Live Tests on: [pull_request, workflow_dispatch] permissions: contents: read + issues: none + pull-requests: none concurrency: group: duplicati-ci-livetests cancel-in-progress: false diff --git a/.github/workflows/build-packages.yml b/.github/workflows/build-packages.yml index 205bb3ab4..756c1b36c 100644 --- a/.github/workflows/build-packages.yml +++ b/.github/workflows/build-packages.yml @@ -1,4 +1,8 @@ name: Tests +permissions: + contents: read + issues: none + pull-requests: none on: [pull_request, workflow_dispatch] diff --git a/.github/workflows/freebsd.yml b/.github/workflows/freebsd.yml index 977a0a9ea..4adf353ad 100644 --- a/.github/workflows/freebsd.yml +++ b/.github/workflows/freebsd.yml @@ -1,4 +1,9 @@ name: Freebsd +permissions: + contents: read + issues: none + pull-requests: none + on: push: branches: "**freebsd**" @@ -9,135 +14,135 @@ jobs: zip: runs-on: macos-12 steps: - - uses: actions/checkout@v2 - - name: Download dotnet - # See also https://github.com/sec/dotnet-core-freebsd-source-build - # See also https://github.com/Thefrank/dotnet-freebsd-crossbuild - run: curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/v6.0.401-11/dotnet-sdk-6.0.401-freebsd-x64.tar.gz -o dn.tgz - - name: Build - id: test - uses: vmactions/freebsd-vm@v0 - with: - usesh: true - # sync: sshfs - prepare: pkg install -y curl libinotify libunwind git cmake ninja bash wget icu - run: | - #!/bin/bash - set -x - set -e - pwd - ls -lah - whoami - env - freebsd-version - df -h - dmesg | grep memory - swapinfo - dd if=/dev/zero of=/root/swap1 bs=1m count=20480 - chmod 0600 /root/swap1 - mdconfig -a -t vnode -f /root/swap1 -u 0 - swapon /dev/md0 - df -h - swapinfo - - export DOTNET_CLI_TELEMETRY_OPTOUT=1 - BUILD_DIR=`pwd` - cd /var/tmp - mkdir dn - cd dn - echo Unpacking .NET - tar -xzf ${BUILD_DIR}/dn.tgz - cd ${BUILD_DIR} - mkdir /var/tmp/nuget - export RVERSION=v6.0.401-11 - export VERSION=6.0.9 - curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.AspNetCore.App.Runtime.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.AspNetCore.App.Runtime.freebsd-x64.${VERSION}.nupkg - curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.NETCore.App.Host.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.NETCore.App.Host.freebsd-x64.${VERSION}.nupkg - curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.NETCore.App.Runtime.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.NETCore.App.Runtime.freebsd-x64.${VERSION}.nupkg - curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.NETCore.App.Crossgen2.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.NETCore.App.Crossgen2.freebsd-x64.${VERSION}.nupkg - /var/tmp/dn/dotnet nuget add source /var/tmp/nuget/ - - cp -R `pwd` /var/tmp/build - cd /var/tmp/build - - echo Restore - /var/tmp/dn/dotnet restore --runtime=freebsd-x64 Duplicati.sln - echo Build - /var/tmp/dn/dotnet build Duplicati.sln - echo Publish - /var/tmp/dn/dotnet publish -c Release --runtime=freebsd-x64 -o publish Duplicati.sln + - uses: actions/checkout@v2 + - name: Download dotnet + # See also https://github.com/sec/dotnet-core-freebsd-source-build + # See also https://github.com/Thefrank/dotnet-freebsd-crossbuild + run: curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/v6.0.401-11/dotnet-sdk-6.0.401-freebsd-x64.tar.gz -o dn.tgz + - name: Build + id: test + uses: vmactions/freebsd-vm@v0 + with: + usesh: true + # sync: sshfs + prepare: pkg install -y curl libinotify libunwind git cmake ninja bash wget icu + run: | + #!/bin/bash + set -x + set -e + pwd + ls -lah + whoami + env + freebsd-version + df -h + dmesg | grep memory + swapinfo + dd if=/dev/zero of=/root/swap1 bs=1m count=20480 + chmod 0600 /root/swap1 + mdconfig -a -t vnode -f /root/swap1 -u 0 + swapon /dev/md0 + df -h + swapinfo - cp -R ./publish ${BUILD_DIR}/publish - - name: Save Artifacts - uses: actions/upload-artifact@v2 - with: - name: duplicati-freebsd-x64 - path: publish + export DOTNET_CLI_TELEMETRY_OPTOUT=1 + BUILD_DIR=`pwd` + cd /var/tmp + mkdir dn + cd dn + echo Unpacking .NET + tar -xzf ${BUILD_DIR}/dn.tgz + cd ${BUILD_DIR} + mkdir /var/tmp/nuget + export RVERSION=v6.0.401-11 + export VERSION=6.0.9 + curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.AspNetCore.App.Runtime.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.AspNetCore.App.Runtime.freebsd-x64.${VERSION}.nupkg + curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.NETCore.App.Host.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.NETCore.App.Host.freebsd-x64.${VERSION}.nupkg + curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.NETCore.App.Runtime.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.NETCore.App.Runtime.freebsd-x64.${VERSION}.nupkg + curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.NETCore.App.Crossgen2.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.NETCore.App.Crossgen2.freebsd-x64.${VERSION}.nupkg + /var/tmp/dn/dotnet nuget add source /var/tmp/nuget/ + + cp -R `pwd` /var/tmp/build + cd /var/tmp/build + + echo Restore + /var/tmp/dn/dotnet restore --runtime=freebsd-x64 Duplicati.sln + echo Build + /var/tmp/dn/dotnet build Duplicati.sln + echo Publish + /var/tmp/dn/dotnet publish -c Release --runtime=freebsd-x64 -o publish Duplicati.sln + + cp -R ./publish ${BUILD_DIR}/publish + - name: Save Artifacts + uses: actions/upload-artifact@v2 + with: + name: duplicati-freebsd-x64 + path: publish tests: runs-on: macos-12 steps: - - uses: actions/checkout@v2 - - name: Download dotnet - # See also https://github.com/sec/dotnet-core-freebsd-source-build - # See also https://github.com/Thefrank/dotnet-freebsd-crossbuild - run: curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/v6.0.401-11/dotnet-sdk-6.0.401-freebsd-x64.tar.gz -o dn.tgz - - name: Run test - id: test - uses: vmactions/freebsd-vm@v0 - with: - usesh: true - # sync: sshfs - prepare: pkg install -y curl libinotify libunwind git cmake ninja bash wget icu - run: | - #!/bin/bash - set -x - set -e - pwd - ls -lah - whoami - env - freebsd-version - df -h - dmesg | grep memory - swapinfo - dd if=/dev/zero of=/root/swap1 bs=1m count=20480 - chmod 0600 /root/swap1 - mdconfig -a -t vnode -f /root/swap1 -u 0 - swapon /dev/md0 - df -h - swapinfo - - export DOTNET_CLI_TELEMETRY_OPTOUT=1 - BUILD_DIR=`pwd` - cd /var/tmp - mkdir dn - cd dn - echo Unpacking .NET - tar -xzf ${BUILD_DIR}/dn.tgz - cd ${BUILD_DIR} - mkdir /var/tmp/nuget - export RVERSION=v6.0.401-11 - export VERSION=6.0.9 - curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.AspNetCore.App.Runtime.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.AspNetCore.App.Runtime.freebsd-x64.${VERSION}.nupkg - curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.NETCore.App.Host.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.NETCore.App.Host.freebsd-x64.${VERSION}.nupkg - curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.NETCore.App.Runtime.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.NETCore.App.Runtime.freebsd-x64.${VERSION}.nupkg - curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.NETCore.App.Crossgen2.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.NETCore.App.Crossgen2.freebsd-x64.${VERSION}.nupkg - /var/tmp/dn/dotnet nuget add source /var/tmp/nuget/ - - cp -R `pwd` /var/tmp/build - cd /var/tmp/build + - uses: actions/checkout@v2 + - name: Download dotnet + # See also https://github.com/sec/dotnet-core-freebsd-source-build + # See also https://github.com/Thefrank/dotnet-freebsd-crossbuild + run: curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/v6.0.401-11/dotnet-sdk-6.0.401-freebsd-x64.tar.gz -o dn.tgz + - name: Run test + id: test + uses: vmactions/freebsd-vm@v0 + with: + usesh: true + # sync: sshfs + prepare: pkg install -y curl libinotify libunwind git cmake ninja bash wget icu + run: | + #!/bin/bash + set -x + set -e + pwd + ls -lah + whoami + env + freebsd-version + df -h + dmesg | grep memory + swapinfo + dd if=/dev/zero of=/root/swap1 bs=1m count=20480 + chmod 0600 /root/swap1 + mdconfig -a -t vnode -f /root/swap1 -u 0 + swapon /dev/md0 + df -h + swapinfo - echo Restore - /var/tmp/dn/dotnet restore --runtime=freebsd-x64 Duplicati.sln - echo Testing - mkdir -p ${BUILD_DIR}/duplicati_testdata/logs - mkdir -p /var/tmp/duplicati_testdata - ln -s ${BUILD_DIR}/duplicati_testdata/logs /var/tmp/duplicati_testdata/logs - export UNITTEST_BASEFOLDER=/var/tmp/duplicati_testdata - /var/tmp/dn/dotnet test --runtime=freebsd-x64 --verbosity minimal Duplicati.sln - - name: Archive Test Logs - if: always() - uses: actions/upload-artifact@v2 - with: - name: test-logs - path: duplicati_testdata/logs/* + export DOTNET_CLI_TELEMETRY_OPTOUT=1 + BUILD_DIR=`pwd` + cd /var/tmp + mkdir dn + cd dn + echo Unpacking .NET + tar -xzf ${BUILD_DIR}/dn.tgz + cd ${BUILD_DIR} + mkdir /var/tmp/nuget + export RVERSION=v6.0.401-11 + export VERSION=6.0.9 + curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.AspNetCore.App.Runtime.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.AspNetCore.App.Runtime.freebsd-x64.${VERSION}.nupkg + curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.NETCore.App.Host.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.NETCore.App.Host.freebsd-x64.${VERSION}.nupkg + curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.NETCore.App.Runtime.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.NETCore.App.Runtime.freebsd-x64.${VERSION}.nupkg + curl -L https://github.com/Thefrank/dotnet-freebsd-crossbuild/releases/download/${RVERSION}/Microsoft.NETCore.App.Crossgen2.freebsd-x64.${VERSION}.nupkg -o /var/tmp/nuget/Microsoft.NETCore.App.Crossgen2.freebsd-x64.${VERSION}.nupkg + /var/tmp/dn/dotnet nuget add source /var/tmp/nuget/ + + cp -R `pwd` /var/tmp/build + cd /var/tmp/build + + echo Restore + /var/tmp/dn/dotnet restore --runtime=freebsd-x64 Duplicati.sln + echo Testing + mkdir -p ${BUILD_DIR}/duplicati_testdata/logs + mkdir -p /var/tmp/duplicati_testdata + ln -s ${BUILD_DIR}/duplicati_testdata/logs /var/tmp/duplicati_testdata/logs + export UNITTEST_BASEFOLDER=/var/tmp/duplicati_testdata + /var/tmp/dn/dotnet test --runtime=freebsd-x64 --verbosity minimal Duplicati.sln + - name: Archive Test Logs + if: always() + uses: actions/upload-artifact@v2 + with: + name: test-logs + path: duplicati_testdata/logs/* diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 2ec105e2a..0ec48e7d0 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -1,4 +1,9 @@ name: Close inactive issues +permissions: + contents: read + issues: write + pull-requests: none + on: schedule: - cron: "30 1 * * *"