From 84c68bf73c3cef15c13f21c37fe6a2c86eb4c4ff Mon Sep 17 00:00:00 2001 From: Daniel Dias Rodrigues Date: Wed, 29 May 2024 18:37:09 -0300 Subject: [PATCH] fix: Fixes publish on Linux with non-bash terminals (#1802) --- .github/workflows/build-test.yml | 2 +- publish.cmd | 47 ++------------------------------ publish.sh | 45 +++++++++++++++++++++++++++++- 3 files changed, 48 insertions(+), 46 deletions(-) diff --git a/.github/workflows/build-test.yml b/.github/workflows/build-test.yml index 95addc2fb..01170fedc 100644 --- a/.github/workflows/build-test.yml +++ b/.github/workflows/build-test.yml @@ -94,6 +94,6 @@ jobs: with: dotnet-version: 8.0.x - name: Build - run: ./publish.sh Release + run: ./publish.cmd Release - name: Test run: dotnet test --no-restore diff --git a/publish.cmd b/publish.cmd index d45eb17ed..dc13d26c2 100755 --- a/publish.cmd +++ b/publish.cmd @@ -3,53 +3,12 @@ GOTO :CMDSCRIPT ::SHELLSCRIPT -config=$1 -os=$2 -arch=${3:-$(uname -m)} - -if [[ -n $os ]]; then - os="-r $os" -elif [[ $(uname) = "Darwin" ]]; then - os="-r osx" -else - os="-r linux" -fi - -if [[ $config ]]; then - config="$(tr '[:lower:]' '[:upper:]' <<< ${1:0:1})${1:1}" - config="-c $config" -else - config="-c Release" -fi - -if [[ $arch == *'aarch'* || $arch == *'arm'* ]]; then - arch="arm64" -else - arch="x64" -fi - -if [[ $os == *'centos'* || $os == *'rhel'* ]]; then - export DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1 -fi - -echo dotnet tool restore -dotnet tool restore - -echo dotnet clean --verbosity quiet -dotnet clean --verbosity quiet -echo dotnet restore --force-evaluate --source https://api.nuget.org/v3/index.json -dotnet restore --force-evaluate --source https://api.nuget.org/v3/index.json - -echo dotnet publish ${config} ${os}-${arch} --no-restore --self-contained=false -o Distribution/Assemblies Projects/UOContent/UOContent.csproj -dotnet publish ${config} ${os}-${arch} --no-restore --self-contained=false -o Distribution/Assemblies Projects/UOContent/UOContent.csproj - -echo Generating serialization migration schema... -dotnet tool run ModernUOSchemaGenerator -- ModernUO.sln - +path=$(dirname "$0") +cd $path +./publish.sh exit $? :CMDSCRIPT - IF "%~1" == "" ( SET config=-c Release ) ELSE ( diff --git a/publish.sh b/publish.sh index 12e7ddb28..eabf6e09f 100755 --- a/publish.sh +++ b/publish.sh @@ -1,2 +1,45 @@ #!/bin/bash -./publish.cmd "$@" +config=$1 +os=$2 +arch=${3:-$(uname -m)} + +if [[ -n $os ]]; then + os="-r $os" +elif [[ $(uname) = "Darwin" ]]; then + os="-r osx" +else + os="-r linux" +fi + +if [[ $config ]]; then + config="$(tr '[:lower:]' '[:upper:]' <<< ${1:0:1})${1:1}" + config="-c $config" +else + config="-c Release" +fi + +if [[ $arch == *'aarch'* || $arch == *'arm'* ]]; then + arch="arm64" +else + arch="x64" +fi + +if [[ $os == *'centos'* || $os == *'rhel'* ]]; then + export DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1 +fi + +echo dotnet tool restore +dotnet tool restore + +echo dotnet clean --verbosity quiet +dotnet clean --verbosity quiet +echo dotnet restore --force-evaluate --source https://api.nuget.org/v3/index.json +dotnet restore --force-evaluate --source https://api.nuget.org/v3/index.json + +echo dotnet publish ${config} ${os}-${arch} --no-restore --self-contained=false -o Distribution/Assemblies Projects/UOContent/UOContent.csproj +dotnet publish ${config} ${os}-${arch} --no-restore --self-contained=false -o Distribution/Assemblies Projects/UOContent/UOContent.csproj + +echo Generating serialization migration schema... +dotnet tool run ModernUOSchemaGenerator -- ModernUO.sln + +exit $?