Add version endpoint

This commit is contained in:
2024-04-17 17:42:36 +02:00
parent 14757c3efe
commit d04d5a7ea2
2 changed files with 43 additions and 0 deletions

View File

@@ -12,6 +12,9 @@
<ItemGroup>
<PackageReference Include="Cronos" Version="0.8.4" />
<PackageReference Include="FastEndpoints" Version="5.24.0" />
<PackageReference Include="GitVersion.MsBuild" Version="5.12.0">
<PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="LazyCache.AspNetCore" Version="2.4.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="8.0.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="8.0.4">

View File

@@ -0,0 +1,40 @@

using System.Text;
namespace ConnectionsAPI.Features.Version.Get
{
public class GetVersionEndpoint : EndpointWithoutRequest<string>
{
private static readonly int START_YEAR = 2024;
public override void Configure()
{
Get("/version");
AllowAnonymous();
}
public override async Task HandleAsync(CancellationToken ct)
{
StringBuilder responseBuilder = new();
responseBuilder.Append("ConnectionsAPI ©");
if (DateTime.UtcNow.Year != START_YEAR)
{
responseBuilder.AppendFormat("{0} - {1}; ", START_YEAR, DateTime.UtcNow.Year);
}
else
{
responseBuilder.AppendFormat("{0}; ", DateTime.UtcNow.Year);
}
responseBuilder.Append("by Mate Farkas; ");
responseBuilder.AppendFormat("v{0}-{1}+{2};",
GitVersionInformation.MajorMinorPatch,
GitVersionInformation.ShortSha,
GitVersionInformation.EscapedBranchName);
await SendStringAsync(responseBuilder.ToString(), cancellation: ct);
}
}
}