Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/template #40

Open
wants to merge 41 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
2d01c2e
work in progress
Sep 22, 2022
2b2a39a
init commit for templates
Sep 23, 2022
0894f76
docker for template
Sep 23, 2022
54fa7da
settings and vs extensions
Sep 23, 2022
8d4557f
renaming database
Sep 23, 2022
aadaa48
renaming database
Sep 23, 2022
9f5e050
Fixes to DBName
Sep 23, 2022
3e59452
excluding conditions for now
Sep 23, 2022
c91d898
build for template
Sep 23, 2022
67a6955
rename database
Sep 26, 2022
774b2cf
dev container configured
Sep 26, 2022
5adf94f
adding features and function core tools
Sep 26, 2022
ad2e720
fixing connections tring in docker containers
Sep 27, 2022
5cc8b57
HTTP files
Sep 27, 2022
128301e
minor updates to infra stack
Sep 27, 2022
52e2e3f
Merge remote-tracking branch 'origin' into feature/template
Sep 27, 2022
42ea8a9
developer setup in Infra
Sep 28, 2022
0537c1d
remove infra from samples
Sep 28, 2022
a6f7632
fixing rename that happend by accident
Sep 28, 2022
813cfcd
fixing some comments
Sep 28, 2022
2819e08
fixign tests
Sep 28, 2022
eb6959d
fix my HR function test
Sep 28, 2022
ee65338
fix CI
Sep 28, 2022
5c1f2be
test fix
Sep 29, 2022
23d3715
moving to tools folder
Sep 29, 2022
71f4f47
update to CI
Sep 29, 2022
d53ab46
build template
Sep 29, 2022
aa81bbc
removing extra files
Sep 29, 2022
237cdd6
more generic names
Sep 29, 2022
08fbade
stack rename
Sep 29, 2022
a17e27d
infra deployments
Sep 30, 2022
9510833
replacing . with _ in deployment info
Oct 2, 2022
9d7af42
pipeline files
Oct 2, 2022
97120d8
templates
Oct 2, 2022
64bcf34
pipeline files
Oct 2, 2022
4946903
minor
Oct 2, 2022
942f83a
health check
Oct 2, 2022
510ec22
Template project file
Oct 3, 2022
8c7a7d3
preparing for template nuget
Oct 3, 2022
a51c384
merge with main
Oct 3, 2022
1b266d9
Update nuget publish powershell.
chullybun Oct 5, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,3 +65,9 @@ jobs:

- name: Test Docker Build
run: docker-compose -f docker-compose.myHr.yml -f docker-compose.myHr.override.yml build --build-arg LOCAL=true

- name: Build Template
run: dotnet build tools/CoreEx.Template/content

- name: Test generic Template
run: dotnet test tools/CoreEx.Template/content --filter Category!=WithCosmos --no-build --verbosity normal /p:CollectCoverage=true /p:Exclude="[CoreEx.TestFunction]*" /p:CoverletOutputFormat=lcov /p:CoverletOutput=./coverage/lcov3.info
22 changes: 7 additions & 15 deletions CoreEx.sln
Original file line number Diff line number Diff line change
Expand Up @@ -59,11 +59,9 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CoreEx.Cosmos", "src\CoreEx
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CoreEx.Cosmos.Test", "tests\CoreEx.Cosmos.Test\CoreEx.Cosmos.Test.csproj", "{C8021CF0-006F-427C-827F-B997F26E5FF6}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "My.Hr.Infra.Tests", "samples\My.Hr\My.Hr.Infra.Tests\My.Hr.Infra.Tests.csproj", "{7DA61666-8109-4B0C-8433-EDA87370DA28}"
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tools", "tools", "{AD4128C1-A096-451B-BD61-705EC774ADEC}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "My.Hr.Infra", "samples\My.Hr\My.Hr.Infra\My.Hr.Infra.csproj", "{3601F5D1-AFAC-417B-AC9F-1E4260148B22}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Infra", "Infra", "{601379B6-8FF6-4272-884C-473693BE0E90}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CoreEx.Template", "tools\CoreEx.Template\CoreEx.Template.csproj", "{16556C5C-E54F-48EA-A38F-CE612212EBCF}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Expand Down Expand Up @@ -143,14 +141,10 @@ Global
{C8021CF0-006F-427C-827F-B997F26E5FF6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C8021CF0-006F-427C-827F-B997F26E5FF6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C8021CF0-006F-427C-827F-B997F26E5FF6}.Release|Any CPU.Build.0 = Release|Any CPU
{7DA61666-8109-4B0C-8433-EDA87370DA28}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7DA61666-8109-4B0C-8433-EDA87370DA28}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7DA61666-8109-4B0C-8433-EDA87370DA28}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7DA61666-8109-4B0C-8433-EDA87370DA28}.Release|Any CPU.Build.0 = Release|Any CPU
{3601F5D1-AFAC-417B-AC9F-1E4260148B22}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3601F5D1-AFAC-417B-AC9F-1E4260148B22}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3601F5D1-AFAC-417B-AC9F-1E4260148B22}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3601F5D1-AFAC-417B-AC9F-1E4260148B22}.Release|Any CPU.Build.0 = Release|Any CPU
{16556C5C-E54F-48EA-A38F-CE612212EBCF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{16556C5C-E54F-48EA-A38F-CE612212EBCF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{16556C5C-E54F-48EA-A38F-CE612212EBCF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{16556C5C-E54F-48EA-A38F-CE612212EBCF}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand All @@ -175,9 +169,7 @@ Global
{F3384ADC-1DA8-4538-B991-DBD2BC591AF1} = {4B6BC31E-93B1-42B0-AE09-AD85AC4DB657}
{8D0CC3FD-65C2-4302-99F4-A90AC7680E1B} = {4B6BC31E-93B1-42B0-AE09-AD85AC4DB657}
{C8021CF0-006F-427C-827F-B997F26E5FF6} = {3145DCB9-98FB-4519-BCC0-75A22A252EDC}
{7DA61666-8109-4B0C-8433-EDA87370DA28} = {601379B6-8FF6-4272-884C-473693BE0E90}
{3601F5D1-AFAC-417B-AC9F-1E4260148B22} = {601379B6-8FF6-4272-884C-473693BE0E90}
{601379B6-8FF6-4272-884C-473693BE0E90} = {F53B0E83-87F8-4679-94B8-268FE6A9C0AD}
{16556C5C-E54F-48EA-A38F-CE612212EBCF} = {AD4128C1-A096-451B-BD61-705EC774ADEC}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {8B4566D2-9B22-4E27-9654-402BDBA6C744}
Expand Down
8 changes: 8 additions & 0 deletions Docker.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,14 @@ services:

Service Bus should have `pendingverifications` queue used by *My.Hr* sample.

## Running SQL database only

It's possible to run only DB container for local development with

```bash
docker-compose -f docker-compose.yml -f docker-compose.override.yml -f docker-compose.DB.only.yml up
```

## To build

```bash
Expand Down
6 changes: 0 additions & 6 deletions docker-compose.myHr.override.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,5 @@
version: '3.4'

# The default docker-compose.override file can use the "localhost" as the external name for testing web apps within the same dev machine.
# The ESHOP_EXTERNAL_DNS_NAME_OR_IP environment variable is taken, by default, from the ".env" file defined like:
# ESHOP_EXTERNAL_DNS_NAME_OR_IP=localhost
# but values present in the environment vars at runtime will always override those defined inside the .env file
# An external IP or DNS name has to be used (instead localhost and the 10.0.75.1 IP) when testing the Web apps and the Xamarin apps from remote machines/devices using the same WiFi, for instance.

services:

sqldata:
Expand Down
3 changes: 2 additions & 1 deletion nuget-publish.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,8 @@ param(
"src\CoreEx.Cosmos",
"src\CoreEx.FluentValidation",
"src\CoreEx.Newtonsoft",
"src\CoreEx.Validation")
"src\CoreEx.Validation",
"tools\CoreEx.Template")
)

$ShouldPublishRemote = (![string]::IsNullOrEmpty($apiKey) -and ![string]::IsNullOrEmpty($NugetServer))
Expand Down
2 changes: 0 additions & 2 deletions samples/My.Hr/My.Hr.Api/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,6 @@ COPY "samples/My.Hr/My.Hr.Business/My.Hr.Business.csproj" "samples/My.Hr/My.Hr.B
COPY "samples/My.Hr/My.Hr.Database/My.Hr.Database.csproj" "samples/My.Hr/My.Hr.Database/My.Hr.Database.csproj"
COPY "samples/My.Hr/My.Hr.Functions/My.Hr.Functions.csproj" "samples/My.Hr/My.Hr.Functions/My.Hr.Functions.csproj"
COPY "samples/My.Hr/My.Hr.UnitTest/My.Hr.UnitTest.csproj" "samples/My.Hr/My.Hr.UnitTest/My.Hr.UnitTest.csproj"
COPY "samples/My.Hr/My.Hr.Infra/My.Hr.Infra.csproj" "samples/My.Hr/My.Hr.Infra/My.Hr.Infra.csproj"
COPY "samples/My.Hr/My.Hr.Infra.Tests/My.Hr.Infra.Tests.csproj" "samples/My.Hr/My.Hr.Infra.Tests/My.Hr.Infra.Tests.csproj"

COPY "src/CoreEx/CoreEx.csproj" "src/CoreEx/CoreEx.csproj"
COPY "src/CoreEx.AutoMapper/CoreEx.AutoMapper.csproj" "src/CoreEx.AutoMapper/CoreEx.AutoMapper.csproj"
Expand Down
2 changes: 0 additions & 2 deletions samples/My.Hr/My.Hr.Database/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,6 @@ COPY "samples/My.Hr/My.Hr.Business/My.Hr.Business.csproj" "samples/My.Hr/My.Hr.B
COPY "samples/My.Hr/My.Hr.Database/My.Hr.Database.csproj" "samples/My.Hr/My.Hr.Database/My.Hr.Database.csproj"
COPY "samples/My.Hr/My.Hr.Functions/My.Hr.Functions.csproj" "samples/My.Hr/My.Hr.Functions/My.Hr.Functions.csproj"
COPY "samples/My.Hr/My.Hr.UnitTest/My.Hr.UnitTest.csproj" "samples/My.Hr/My.Hr.UnitTest/My.Hr.UnitTest.csproj"
COPY "samples/My.Hr/My.Hr.Infra/My.Hr.Infra.csproj" "samples/My.Hr/My.Hr.Infra/My.Hr.Infra.csproj"
COPY "samples/My.Hr/My.Hr.Infra.Tests/My.Hr.Infra.Tests.csproj" "samples/My.Hr/My.Hr.Infra.Tests/My.Hr.Infra.Tests.csproj"

COPY "src/CoreEx/CoreEx.csproj" "src/CoreEx/CoreEx.csproj"
COPY "src/CoreEx.AutoMapper/CoreEx.AutoMapper.csproj" "src/CoreEx.AutoMapper/CoreEx.AutoMapper.csproj"
Expand Down
1 change: 0 additions & 1 deletion samples/My.Hr/My.Hr.Database/My.Hr.Database.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@
<ItemGroup>
<PackageReference Include="DbEx" Version="1.0.15" />
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="6.0.1" />
<PackageReference Include="Microsoft.Tye.Extensions.Configuration" Version="0.10.0-alpha.21420.1" />
</ItemGroup>

<ItemGroup>
Expand Down
2 changes: 0 additions & 2 deletions samples/My.Hr/My.Hr.Functions/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,6 @@ COPY "samples/My.Hr/My.Hr.Business/My.Hr.Business.csproj" "samples/My.Hr/My.Hr.B
COPY "samples/My.Hr/My.Hr.Database/My.Hr.Database.csproj" "samples/My.Hr/My.Hr.Database/My.Hr.Database.csproj"
COPY "samples/My.Hr/My.Hr.Functions/My.Hr.Functions.csproj" "samples/My.Hr/My.Hr.Functions/My.Hr.Functions.csproj"
COPY "samples/My.Hr/My.Hr.UnitTest/My.Hr.UnitTest.csproj" "samples/My.Hr/My.Hr.UnitTest/My.Hr.UnitTest.csproj"
COPY "samples/My.Hr/My.Hr.Infra/My.Hr.Infra.csproj" "samples/My.Hr/My.Hr.Infra/My.Hr.Infra.csproj"
COPY "samples/My.Hr/My.Hr.Infra.Tests/My.Hr.Infra.Tests.csproj" "samples/My.Hr/My.Hr.Infra.Tests/My.Hr.Infra.Tests.csproj"

COPY "src/CoreEx/CoreEx.csproj" "src/CoreEx/CoreEx.csproj"
COPY "src/CoreEx.AutoMapper/CoreEx.AutoMapper.csproj" "src/CoreEx.AutoMapper/CoreEx.AutoMapper.csproj"
Expand Down
14 changes: 7 additions & 7 deletions samples/My.Hr/My.Hr.Functions/Functions/EmployeeFunction.cs
Original file line number Diff line number Diff line change
Expand Up @@ -36,38 +36,38 @@ public EmployeeFunction(WebApi webApi, EmployeeService service, IValidator<Emplo
[OpenApiSecurity("function_key", SecuritySchemeType.ApiKey, Name = "code", In = OpenApiSecurityLocationType.Query)]
[OpenApiResponseWithBody(statusCode: HttpStatusCode.OK, contentType: MediaTypeNames.Application.Json, bodyType: typeof(Employee), Description = "Employee record")]
[OpenApiResponseWithoutBody(statusCode: HttpStatusCode.NotFound, Description = "Not found")]
public Task<IActionResult> GetAsync([HttpTrigger(AuthorizationLevel.Function, "get", Route = "api/employees/{id}")] HttpRequest request, Guid id)
public Task<IActionResult> GetAsync([HttpTrigger(AuthorizationLevel.Function, "get", Route = "employees/{id}")] HttpRequest request, Guid id)
=> _webApi.GetAsync(request, _ => _service.GetEmployeeAsync(id));

[FunctionName("GetAll")]
[OpenApiOperation(operationId: "GetAll", tags: new[] { "employee" })]
[OpenApiSecurity("function_key", SecuritySchemeType.ApiKey, Name = "code", In = OpenApiSecurityLocationType.Query)]
[OpenApiResponseWithBody(statusCode: HttpStatusCode.OK, contentType: MediaTypeNames.Application.Json, bodyType: typeof(List<Employee>), Description = "Employee records")]
public Task<IActionResult> GetAllAsync([HttpTrigger(AuthorizationLevel.Function, "get", Route = "api/employees")] HttpRequest request)
public Task<IActionResult> GetAllAsync([HttpTrigger(AuthorizationLevel.Function, "get", Route = "employees")] HttpRequest request)
=> _webApi.GetAsync(request, p => _service.GetAllAsync(p.RequestOptions.Paging));

[FunctionName("Create")]
[OpenApiOperation(operationId: "Create", tags: new[] { "employee" })]
[OpenApiSecurity("function_key", SecuritySchemeType.ApiKey, Name = "code", In = OpenApiSecurityLocationType.Query)]
[OpenApiResponseWithoutBody(statusCode: HttpStatusCode.Created, Description = "Created employee record")]
public Task<IActionResult> CreateAsync([HttpTrigger(AuthorizationLevel.Function, "post", Route = "api/employees")] HttpRequest request)
public Task<IActionResult> CreateAsync([HttpTrigger(AuthorizationLevel.Function, "post", Route = "employees")] HttpRequest request)
=> _webApi.PostAsync(request, p => _service.AddEmployeeAsync(p.Value!),
statusCode: HttpStatusCode.Created, validator: _validator, locationUri: e => new Uri($"api/employees/{e.Id}", UriKind.RelativeOrAbsolute));
statusCode: HttpStatusCode.Created, validator: _validator, locationUri: e => new Uri($"employees/{e.Id}", UriKind.RelativeOrAbsolute));

[FunctionName("Update")]
[OpenApiOperation(operationId: "Update", tags: new[] { "employee" })]
[OpenApiParameter(name: "id", Description = "The employee id", Required = true, In = ParameterLocation.Path, Type = typeof(Guid))]
[OpenApiSecurity("function_key", SecuritySchemeType.ApiKey, Name = "code", In = OpenApiSecurityLocationType.Query)]
[OpenApiResponseWithBody(statusCode: HttpStatusCode.OK, contentType: MediaTypeNames.Application.Json, bodyType: typeof(Employee), Description = "Employee record")]
[OpenApiResponseWithoutBody(statusCode: HttpStatusCode.NotFound, Description = "Not found")]
public Task<IActionResult> UpdateAsync([HttpTrigger(AuthorizationLevel.Function, "put", Route = "api/employees/{id}")] HttpRequest request, Guid id)
public Task<IActionResult> UpdateAsync([HttpTrigger(AuthorizationLevel.Function, "put", Route = "employees/{id}")] HttpRequest request, Guid id)
=> _webApi.PutAsync(request, p => _service.UpdateEmployeeAsync(p.Value!, id), validator: _validator);

[FunctionName("Patch")]
public Task<IActionResult> PatchAsync([HttpTrigger(AuthorizationLevel.Function, "patch", Route = "api/employees/{id}")] HttpRequest request, Guid id)
public Task<IActionResult> PatchAsync([HttpTrigger(AuthorizationLevel.Function, "patch", Route = "employees/{id}")] HttpRequest request, Guid id)
=> _webApi.PatchAsync(request, get: _ => _service.GetEmployeeAsync(id), put: p => _service.UpdateEmployeeAsync(p.Value!, id), validator: _validator);

[FunctionName("Delete")]
public Task<IActionResult> DeleteAsync([HttpTrigger(AuthorizationLevel.Function, "delete", Route = "api/employees/{id}")] HttpRequest request, Guid id)
public Task<IActionResult> DeleteAsync([HttpTrigger(AuthorizationLevel.Function, "delete", Route = "employees/{id}")] HttpRequest request, Guid id)
=> _webApi.DeleteAsync(request, _ => _service.DeleteEmployeeAsync(id));
}
1 change: 1 addition & 0 deletions samples/My.Hr/My.Hr.Functions/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ Sample configuration for `local.settings.json`
"VerificationResultsQueueName": "verificationResults",

"ServiceBusConnection__fullyQualifiedNamespace": "coreex.servicebus.windows.net",
"AzureWebJobs.ServiceBusExecuteVerificationFunction.Disabled": true, // disable when service bus is not available

"HttpLogContent": "true",
"AzureFunctionsJobHost__logging__logLevel__CoreEx": "Debug",
Expand Down
57 changes: 0 additions & 57 deletions samples/My.Hr/My.Hr.Infra/Readme.md

This file was deleted.

2 changes: 1 addition & 1 deletion samples/My.Hr/My.Hr.UnitTest/EmployeeFunctionTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@ public void C110_Create_Success()
.Run(c => c.CreateAsync(test.CreateJsonHttpRequest(HttpMethod.Post, "api/employees", e)))
.AssertCreated()
.Assert(e, "Id", "ETag")
.AssertLocationHeader<Employee>(v => new Uri($"api/employees/{v!.Id}", UriKind.Relative))
.AssertLocationHeader<Employee>(v => new Uri($"employees/{v!.Id}", UriKind.Relative))
.GetValue<Employee>();

// Do a GET to make sure it is in the database and all fields equal.
Expand Down
12 changes: 0 additions & 12 deletions samples/My.Hr/My.Hr.sln
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "My.Hr.Business", "My.Hr.Bus
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "My.Hr.Functions", "My.Hr.Functions\My.Hr.Functions.csproj", "{A62BAA55-0737-4671-BF31-89D4BE7C4097}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "My.Hr.Infra", "My.Hr.Infra\My.Hr.Infra.csproj", "{E448EFD6-5CA6-4C71-B575-1149DD7181C6}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "My.Hr.Infra.Tests", "My.Hr.Infra.Tests\My.Hr.Infra.Tests.csproj", "{01B0FC8E-738D-47BB-AA57-F880532A501D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "My.Hr.UnitTest", "My.Hr.UnitTest\My.Hr.UnitTest.csproj", "{EE307518-D5FD-45B3-9A61-4451DFC44835}"
EndProject
Global
Expand Down Expand Up @@ -42,14 +38,6 @@ Global
{A62BAA55-0737-4671-BF31-89D4BE7C4097}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A62BAA55-0737-4671-BF31-89D4BE7C4097}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A62BAA55-0737-4671-BF31-89D4BE7C4097}.Release|Any CPU.Build.0 = Release|Any CPU
{E448EFD6-5CA6-4C71-B575-1149DD7181C6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E448EFD6-5CA6-4C71-B575-1149DD7181C6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E448EFD6-5CA6-4C71-B575-1149DD7181C6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E448EFD6-5CA6-4C71-B575-1149DD7181C6}.Release|Any CPU.Build.0 = Release|Any CPU
{01B0FC8E-738D-47BB-AA57-F880532A501D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{01B0FC8E-738D-47BB-AA57-F880532A501D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{01B0FC8E-738D-47BB-AA57-F880532A501D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{01B0FC8E-738D-47BB-AA57-F880532A501D}.Release|Any CPU.Build.0 = Release|Any CPU
{EE307518-D5FD-45B3-9A61-4451DFC44835}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EE307518-D5FD-45B3-9A61-4451DFC44835}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EE307518-D5FD-45B3-9A61-4451DFC44835}.Release|Any CPU.ActiveCfg = Release|Any CPU
Expand Down
10 changes: 5 additions & 5 deletions src/CoreEx/Configuration/DeploymentInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -22,26 +22,26 @@ public class DeploymentInfo
/// <summary>
/// Gets the username who performed the deployment.
/// </summary>
public virtual string By => _configuration?.GetValue<string>("Deployment.By") ?? Unspecified;
public virtual string By => _configuration?.GetValue<string>("Deployment_By") ?? Unspecified;

/// <summary>
/// Gets the deployment build number.
/// </summary>
public virtual string Build => _configuration?.GetValue<string>("Deployment.Build") ?? Unspecified;
public virtual string Build => _configuration?.GetValue<string>("Deployment_Build") ?? Unspecified;

/// <summary>
/// Gets the name of the deployment job that deployed the <see cref="Build"/>.
/// </summary>
public virtual string Name => _configuration?.GetValue<string>("Deployment.Name") ?? Unspecified;
public virtual string Name => _configuration?.GetValue<string>("Deployment_Name") ?? Unspecified;

/// <summary>
/// Gets the deployment build version, such as the Git information (branch and commit) of the deployed <see cref="Build"/>.
/// </summary>
public virtual string Version => _configuration?.GetValue<string>("Deployment.Version") ?? Unspecified;
public virtual string Version => _configuration?.GetValue<string>("Deployment_Version") ?? Unspecified;

/// <summary>
/// Gets the date and time (UTC) when deployment <see cref="Name"/> was performed.
/// </summary>
public virtual string DateUtc => _configuration?.GetValue<string>("Deployment.Date") ?? Unspecified;
public virtual string DateUtc => _configuration?.GetValue<string>("Deployment_Date") ?? Unspecified;
}
}
Loading