Skip to content

Commit 7c623de

Browse files
Initial version of Serilog.Sinks.RichTextBox.Wpf
1 parent 6a4d042 commit 7c623de

File tree

68 files changed

+4730
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

68 files changed

+4730
-0
lines changed

.config/dotnet-tools.json

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
{
2+
"version": 1,
3+
"isRoot": true,
4+
"tools": {
5+
"cake.tool": {
6+
"version": "1.0.0",
7+
"commands": [
8+
"dotnet-cake"
9+
]
10+
},
11+
"minver-cli": {
12+
"version": "2.4.0",
13+
"commands": [
14+
"minver"
15+
]
16+
}
17+
}
18+
}

.github/FUNDING.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
github: augustoproiete

.github/workflows/dependabot-cake.yml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
on:
2+
schedule:
3+
# every Sunday at 6am
4+
- cron: '0 6 * * SUN'
5+
6+
workflow_dispatch:
7+
8+
jobs:
9+
dependabot-cake:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- name: check/update cake dependencies
13+
uses: augustoproiete-actions/nils-org--dependabot-cake-action@v1

Directory.Build.props

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<Project>
2+
3+
<PropertyGroup>
4+
<LangVersion>latest</LangVersion>
5+
</PropertyGroup>
6+
7+
<ItemGroup>
8+
<SourceRoot Include="$(MSBuildThisFileDirectory)/"/>
9+
</ItemGroup>
10+
11+
</Project>

asset/Serilog.snk

596 Bytes
Binary file not shown.

asset/serilog-sink-nuget.png

20.4 KB
Loading

build.cake

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
#addin "nuget:?package=Cake.MinVer&version=1.0.0"
2+
#addin "nuget:?package=Cake.Args&version=1.0.0"
3+
4+
var target = ArgumentOrDefault<string>("target") ?? "pack";
5+
var buildVersion = MinVer(s => s.WithTagPrefix("v").WithDefaultPreReleasePhase("preview"));
6+
7+
Task("clean")
8+
.Does(() =>
9+
{
10+
CleanDirectories("./artifacts/**");
11+
CleanDirectories("./src/**/bin");
12+
CleanDirectories("./src/**/obj");
13+
CleanDirectories("./test/**/bin");
14+
CleanDirectories("./test/**/obj");
15+
});
16+
17+
Task("restore")
18+
.IsDependentOn("clean")
19+
.Does(() =>
20+
{
21+
DotNetCoreRestore("./serilog-sinks-richtextbox.sln", new DotNetCoreRestoreSettings
22+
{
23+
LockedMode = true,
24+
});
25+
});
26+
27+
Task("build")
28+
.IsDependentOn("restore")
29+
.DoesForEach(new[] { "Debug", "Release" }, (configuration) =>
30+
{
31+
DotNetCoreBuild("./serilog-sinks-richtextbox.sln", new DotNetCoreBuildSettings
32+
{
33+
Configuration = configuration,
34+
NoRestore = true,
35+
NoIncremental = false,
36+
ArgumentCustomization = args =>
37+
args.AppendQuoted($"-p:Version={buildVersion.Version}")
38+
.AppendQuoted($"-p:AssemblyVersion={buildVersion.FileVersion}")
39+
.AppendQuoted($"-p:FileVersion={buildVersion.FileVersion}")
40+
.AppendQuoted($"-p:ContinuousIntegrationBuild=true")
41+
});
42+
});
43+
44+
Task("test")
45+
.IsDependentOn("build")
46+
.Does(() =>
47+
{
48+
var settings = new DotNetCoreTestSettings
49+
{
50+
Configuration = "Release",
51+
NoRestore = true,
52+
NoBuild = true,
53+
};
54+
55+
var projectFiles = GetFiles("./test/**/*.csproj");
56+
foreach (var file in projectFiles)
57+
{
58+
DotNetCoreTest(file.FullPath, settings);
59+
}
60+
});
61+
62+
Task("pack")
63+
.IsDependentOn("test")
64+
.Does(() =>
65+
{
66+
var releaseNotes = $"https://github.com/augustoproiete/serilog-sinks-richtextbox/releases/tag/v{buildVersion.Version}";
67+
68+
DotNetCorePack("./src/Serilog.Sinks.RichTextBox.Wpf/Serilog.Sinks.RichTextBox.Wpf.csproj", new DotNetCorePackSettings
69+
{
70+
Configuration = "Release",
71+
NoRestore = true,
72+
NoBuild = true,
73+
OutputDirectory = "./artifacts/nuget",
74+
ArgumentCustomization = args =>
75+
args.AppendQuoted($"-p:Version={buildVersion.Version}")
76+
.AppendQuoted($"-p:PackageReleaseNotes={releaseNotes}")
77+
});
78+
});
79+
80+
Task("push")
81+
.IsDependentOn("pack")
82+
.Does(context =>
83+
{
84+
var url = context.EnvironmentVariable("NUGET_URL");
85+
if (string.IsNullOrWhiteSpace(url))
86+
{
87+
context.Information("No NuGet URL specified. Skipping publishing of NuGet packages");
88+
return;
89+
}
90+
91+
var apiKey = context.EnvironmentVariable("NUGET_API_KEY");
92+
if (string.IsNullOrWhiteSpace(apiKey))
93+
{
94+
context.Information("No NuGet API key specified. Skipping publishing of NuGet packages");
95+
return;
96+
}
97+
98+
var nugetPushSettings = new DotNetCoreNuGetPushSettings
99+
{
100+
Source = url,
101+
ApiKey = apiKey,
102+
};
103+
104+
foreach (var nugetPackageFile in GetFiles("./artifacts/nuget/*.nupkg"))
105+
{
106+
DotNetCoreNuGetPush(nugetPackageFile.FullPath, nugetPushSettings);
107+
}
108+
});
109+
110+
RunTarget(target);

build.cmd

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
@echo on
2+
@cd %~dp0
3+
4+
set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
5+
set DOTNET_CLI_TELEMETRY_OPTOUT=1
6+
set DOTNET_NOLOGO=1
7+
8+
dotnet tool restore
9+
@if %ERRORLEVEL% neq 0 goto :eof
10+
11+
dotnet cake %*

build.ps1

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
$ErrorActionPreference = 'Stop'
2+
3+
Set-Location -LiteralPath $PSScriptRoot
4+
5+
$env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE = '1'
6+
$env:DOTNET_CLI_TELEMETRY_OPTOUT = '1'
7+
$env:DOTNET_NOLOGO = '1'
8+
9+
dotnet tool restore
10+
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
11+
12+
dotnet cake @args
13+
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }

build.sh

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
#!/usr/bin/env bash
2+
set -euox pipefail
3+
4+
cd "$(dirname "${BASH_SOURCE[0]}")"
5+
6+
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
7+
export DOTNET_CLI_TELEMETRY_OPTOUT=1
8+
export DOTNET_NOLOGO=1
9+
10+
dotnet tool restore
11+
12+
dotnet cake "$@"

0 commit comments

Comments
 (0)