diff --git a/ln.build.server/ln.build.server.csproj b/ln.build.server/ln.build.server.csproj index 1ebf9f7..eb83084 100644 --- a/ln.build.server/ln.build.server.csproj +++ b/ln.build.server/ln.build.server.csproj @@ -6,7 +6,7 @@ - 0.4.3 + 0.4.3-ci Harald Wolff-Thobaben l--n.de A simple build server scheduling builds triggered via web-hooks diff --git a/ln.build/ln.build.csproj b/ln.build/ln.build.csproj index 1f95eb4..996738a 100644 --- a/ln.build/ln.build.csproj +++ b/ln.build/ln.build.csproj @@ -5,7 +5,7 @@ - 0.4.3 + 0.4.3-ci Harald Wolff-Thobaben l--n.de A simple build server scheduling builds triggered via web-hooks diff --git a/ln.build/pipeline/DeployCommand.cs b/ln.build/pipeline/DeployCommand.cs index 6e5e578..993cccd 100644 --- a/ln.build/pipeline/DeployCommand.cs +++ b/ln.build/pipeline/DeployCommand.cs @@ -19,7 +19,7 @@ namespace ln.build.pipeline if (stage.CommandEnvironment.CIJob.Repository is Repository repository) { SemVersion releaseVersion = (SemVersion)stage.CommandEnvironment.Get("RELEASE_VERSION"); - if (releaseVersion != null) + if (releaseVersion?.IsRelease ?? false) { Release release = repository.GetRelease(releaseVersion.ToString()); if (release != null) @@ -27,14 +27,14 @@ namespace ln.build.pipeline stage.CommandEnvironment.Logger.Log(LogLevel.WARNING, "source repository already has release {0}", releaseVersion); } else { - string releaseBody = ""; + string releaseBody = String.Format("automatic release by ln.build.server"); string release_ref = stage.CommandEnvironment.Get("REPO_REF"); if (release_ref == null) { stage.CommandEnvironment.Logger.Log(LogLevel.WARNING,"release: no source repository reference found. can't create release!"); } else { - release = repository.CreateRelease(releaseVersion, releaseBody, release_ref); + release = repository.CreateRelease(releaseVersion, String.Format("CI Release {0}", releaseVersion.ToString()), releaseBody, release_ref); foreach (string artefact in stage.CommandEnvironment.Get("RELEASE_ARTEFACTS","").Split(':')) { release.CreateOrReplaceAttachment(artefact,Path.GetFileName(artefact)); diff --git a/ln.build/repositories/Repository.cs b/ln.build/repositories/Repository.cs index 7903d4f..314d1d4 100644 --- a/ln.build/repositories/Repository.cs +++ b/ln.build/repositories/Repository.cs @@ -15,7 +15,7 @@ namespace ln.build.repositories public abstract Release GetRelease(string tagName); public abstract Release GetRelease(int id); - public abstract Release CreateRelease(SemVersion releaseVersion, string body, string target_reference); + public abstract Release CreateRelease(SemVersion releaseVersion, string name, string body, string target_reference); public abstract void CommitAndPush(string message, string[] addedPaths, string[] modifiedPaths, string[] removedPaths); diff --git a/ln.build/repositories/gitea/GiteaRepository.cs b/ln.build/repositories/gitea/GiteaRepository.cs index 67310f0..be2a6ff 100644 --- a/ln.build/repositories/gitea/GiteaRepository.cs +++ b/ln.build/repositories/gitea/GiteaRepository.cs @@ -103,9 +103,9 @@ namespace ln.build.repositories.gitea return null; } - public override Release CreateRelease(SemVersion releaseVersion, string body, string target_reference) + public override Release CreateRelease(SemVersion releaseVersion, string name, string body, string target_reference) { - GiteaRelease giteaRelease = new GiteaRelease(this){ TagName = releaseVersion.ToString(), Body = body, TargetCommit = target_reference }; + GiteaRelease giteaRelease = new GiteaRelease(this){ TagName = releaseVersion.ToString(), Name = name, Body = body, TargetCommit = target_reference }; if (HttpStatusCode.Created != Client.PostJson(giteaRelease.ToJson(), out JSONValue jsonRelease, "repos", Owner, Name, "releases")) throw new Exception(string.Format("release could not be created => {0}", giteaRelease.ToJson()));