diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index dd92225..911bb27 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -25,27 +25,18 @@ build: publish_nuget: stage: publish image: mcr.microsoft.com/dotnet/sdk:10.0 + dependencies: + - build variables: NUGET_SOURCE: "$CI_API_V4_URL/projects/$CI_PROJECT_ID/packages/nuget/index.json" script: | - dotnet restore + dotnet restore src/AIFotoONLUS.Core/AIFotoONLUS.Core.csproj git fetch --prune --unshallow || true git fetch origin +refs/heads/*:refs/remotes/origin/* || true git branch --show-current || true dotnet tool install --global GitVersion.Tool --version 6.5.1 || true export PATH="$PATH:$HOME/.dotnet/tools" - # Debug: show installed dotnet tools and which gitversion is available - dotnet tool list --global || true - echo "which dotnet-gitversion: $(which dotnet-gitversion || true)" - echo "which gitversion: $(which gitversion || true)" - # Debug: print GitVersion variables to aid diagnosis - dotnet-gitversion /showvariable FullSemVer 2>/dev/null || gitversion /showvariable FullSemVer 2>/dev/null || true - dotnet-gitversion /showvariable SemVer 2>/dev/null || gitversion /showvariable SemVer 2>/dev/null || true - dotnet-gitversion /showvariable EscapedBranchName 2>/dev/null || gitversion /showvariable EscapedBranchName 2>/dev/null || true - dotnet-gitversion /showvariable PreReleaseNumber 2>/dev/null || gitversion /showvariable PreReleaseNumber 2>/dev/null || true - dotnet-gitversion /output json > gitversion.json 2>/dev/null || gitversion /output json > gitversion.json 2>/dev/null || true - echo "--- gitversion.json ---" - cat gitversion.json || true + # Build a NuGet-safe version: MajorMinorPatch-EscapedBranchName.PreReleaseNumber MM=$(dotnet-gitversion /showvariable MajorMinorPatch 2>/dev/null || gitversion /showvariable MajorMinorPatch 2>/dev/null || echo "0.1.0") BR=$(dotnet-gitversion /showvariable EscapedBranchName 2>/dev/null || gitversion /showvariable EscapedBranchName 2>/dev/null || echo "master") @@ -53,7 +44,7 @@ publish_nuget: PACKAGE_VERSION="${MM}-${BR}.${PR}" PACKAGE_VERSION=$(echo "$PACKAGE_VERSION" | sed 's/[^0-9A-Za-z.-]//g') echo "Package version: $PACKAGE_VERSION" - dotnet pack src/AIFotoONLUS.Core/AIFotoONLUS.Core.csproj -c Release -o nuget /p:PackageVersion="$PACKAGE_VERSION" /p:Version="$PACKAGE_VERSION" + dotnet pack src/AIFotoONLUS.Core/AIFotoONLUS.Core.csproj -c Release -o nuget --no-build /p:PackageVersion="$PACKAGE_VERSION" /p:Version="$PACKAGE_VERSION" /p:EnableWindowsTargeting=true dotnet nuget push "nuget/*.nupkg" --source "$NUGET_SOURCE" --api-key "$CI_JOB_TOKEN" --skip-duplicate only: - main