From d37fba137ebe486b193417686720d07085c7175d Mon Sep 17 00:00:00 2001 From: OfficeCom Codex Date: Sat, 25 Jul 2026 10:20:55 +0200 Subject: [PATCH] Run Gitea release pipeline from tag environment --- .gitea/workflows/client-build.yml | 26 +++++++++++++++++++------- src/OCSentinelCli/OCSentinelCli.csproj | 2 +- 2 files changed, 20 insertions(+), 8 deletions(-) diff --git a/.gitea/workflows/client-build.yml b/.gitea/workflows/client-build.yml index e4a6064..dfd2ae1 100644 --- a/.gitea/workflows/client-build.yml +++ b/.gitea/workflows/client-build.yml @@ -33,7 +33,6 @@ jobs: build-client-windows: needs: validate-client - if: startsWith(github.ref, 'refs/tags/v') || (github.event_name == 'workflow_dispatch' && inputs.build_windows == 'true') # .NET can publish a self-contained Windows x64 client from Linux. # This keeps releases independent of a Windows Gitea runner. runs-on: ubuntu-22.04 @@ -52,10 +51,14 @@ jobs: ./build/build-client-package.ps1 - name: Build release manifest for tags - if: startsWith(github.ref, 'refs/tags/v') shell: pwsh run: | - $tag = "${{ github.ref_name }}" + $ref = if ($env:GITHUB_REF) { $env:GITHUB_REF } else { $env:GITEA_REF } + if ($ref -notlike "refs/tags/v*") { + Write-Host "Not a version tag; skipping release manifest." + exit 0 + } + $tag = Split-Path -Leaf $ref $artifactUrl = "https://gitea.officecom.cloud/officecom/oc-sentinel/releases/download/$tag/OCSentinelClient-win-x64.zip" ./build/build-release-manifest.ps1 -ArtifactUrl $artifactUrl @@ -70,13 +73,22 @@ jobs: if-no-files-found: warn - name: Publish Gitea release assets - if: startsWith(github.ref, 'refs/tags/v') shell: pwsh run: | + $ref = if ($env:GITHUB_REF) { $env:GITHUB_REF } else { $env:GITEA_REF } + if ($ref -notlike "refs/tags/v*") { + Write-Host "Not a version tag; skipping Gitea release publication." + exit 0 + } + $headers = @{ Authorization = "token $env:GITEA_TOKEN" } - $repository = $env:GITEA_REPOSITORY - $baseUrl = "$env:GITEA_SERVER_URL/api/v1/repos/$repository" - $tag = "${{ github.ref_name }}" + $repository = if ($env:GITEA_REPOSITORY) { $env:GITEA_REPOSITORY } else { $env:GITHUB_REPOSITORY } + $serverUrl = if ($env:GITEA_SERVER_URL) { $env:GITEA_SERVER_URL } else { $env:GITHUB_SERVER_URL } + if ([string]::IsNullOrWhiteSpace($env:GITEA_TOKEN) -or [string]::IsNullOrWhiteSpace($repository) -or [string]::IsNullOrWhiteSpace($serverUrl)) { + throw "Gitea release environment is incomplete. Expected GITEA_TOKEN, repository, and server URL." + } + $baseUrl = "$serverUrl/api/v1/repos/$repository" + $tag = Split-Path -Leaf $ref $releaseBody = @{ tag_name = $tag target_commitish = "${{ github.sha }}" diff --git a/src/OCSentinelCli/OCSentinelCli.csproj b/src/OCSentinelCli/OCSentinelCli.csproj index 0e23d35..204c074 100644 --- a/src/OCSentinelCli/OCSentinelCli.csproj +++ b/src/OCSentinelCli/OCSentinelCli.csproj @@ -9,7 +9,7 @@ OCSentinelCli OfficeCom Sentinel OfficeCom - 1.2.6 + 1.2.7 1.2.3.0 1.2.3.0 1.2.3