Skip to content

Commit

Permalink
first commit
Browse files Browse the repository at this point in the history
  • Loading branch information
pwelter34 committed Nov 13, 2023
1 parent bd7d502 commit 8dcb9be
Show file tree
Hide file tree
Showing 52 changed files with 2,533 additions and 0 deletions.
52 changes: 52 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# EditorConfig: https://EditorConfig.org

root = true

# All Files
[*]
charset = utf-8
indent_style = space
indent_size = 4
insert_final_newline = true
trim_trailing_whitespace = true

# XML Configuration Files
[*.{xml,config,props,targets,nuspec,resx,ruleset,vsixmanifest,vsct,refactorlog,runsettings}]
indent_size = 2

# JSON Files
[*.{json,json5,webmanifest}]
indent_size = 2

# Project Files
[*.{csproj,sqlproj}]
indent_size = 2

# YAML Files
[*.{yml,yaml}]
indent_size = 2

# Markdown Files
[*.md]
trim_trailing_whitespace = false

# Web Files
[*.{htm,html,js,jsm,ts,tsx,css,sass,scss,less,pcss,svg,vue}]
indent_size = 2

# Batch Files
[*.{cmd,bat}]
end_of_line = crlf

# Bash Files
[*.sh]
end_of_line = lf

[*.{cs,vb}]
dotnet_sort_system_directives_first = true
dotnet_separate_import_directive_groups = true
dotnet_style_namespace_match_folder = true

[*.cs]
csharp_using_directive_placement = outside_namespace
csharp_style_namespace_declarations = file_scoped:warning
63 changes: 63 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
###############################################################################
# Set default behavior to automatically normalize line endings.
###############################################################################
* text=auto

###############################################################################
# Set default behavior for command prompt diff.
#
# This is need for earlier builds of msysgit that does not have it on by
# default for csharp files.
# Note: This is only used by command line
###############################################################################
#*.cs diff=csharp

###############################################################################
# Set the merge driver for project and solution files
#
# Merging from the command prompt will add diff markers to the files if there
# are conflicts (Merging from VS is not affected by the settings below, in VS
# the diff markers are never inserted). Diff markers may cause the following
# file extensions to fail to load in VS. An alternative would be to treat
# these files as binary and thus will always conflict and require user
# intervention with every merge. To do so, just uncomment the entries below
###############################################################################
#*.sln merge=binary
#*.csproj merge=binary
#*.vbproj merge=binary
#*.vcxproj merge=binary
#*.vcproj merge=binary
#*.dbproj merge=binary
#*.fsproj merge=binary
#*.lsproj merge=binary
#*.wixproj merge=binary
#*.modelproj merge=binary
#*.sqlproj merge=binary
#*.wwaproj merge=binary

###############################################################################
# behavior for image files
#
# image files are treated as binary by default.
###############################################################################
#*.jpg binary
#*.png binary
#*.gif binary

###############################################################################
# diff behavior for common document formats
#
# Convert binary document formats to text before diffing them. This feature
# is only available from the command line. Turn it on by uncommenting the
# entries below.
###############################################################################
#*.doc diff=astextplain
#*.DOC diff=astextplain
#*.docx diff=astextplain
#*.DOCX diff=astextplain
#*.dot diff=astextplain
#*.DOT diff=astextplain
#*.pdf diff=astextplain
#*.PDF diff=astextplain
#*.rtf diff=astextplain
#*.RTF diff=astextplain
15 changes: 15 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: daily
time: "01:00"
open-pull-requests-limit: 10

- package-ecosystem: nuget
directory: "/"
schedule:
interval: daily
time: "11:00"
open-pull-requests-limit: 10
98 changes: 98 additions & 0 deletions .github/workflows/dotnet.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
name: Build Project

env:
DOTNET_NOLOGO: true
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true
DOTNET_ENVIRONMENT: github
ASPNETCORE_ENVIRONMENT: github
BUILD_PATH: "${{github.workspace}}/artifacts"
COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}

on:
push:
branches:
- main
- develop
tags:
- "v*"
pull_request:
branches:
- main
- develop

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Install .NET Core
uses: actions/setup-dotnet@v3
with:
dotnet-version: |
6.0.x
7.0.x
- name: Restore Dependencies
run: dotnet restore

- name: Build Solution
run: dotnet build --no-restore --configuration Release

- name: Run Test
run: dotnet test --no-build --configuration Release --collect:"XPlat Code Coverage" --settings coverlet.runsettings

- name: Report Coverage
if: success()
uses: coverallsapp/github-action@v2
with:
file: "${{github.workspace}}/test/*/TestResults/*/coverage.info"
format: lcov

- name: Create Packages
if: success() && github.event_name != 'pull_request'
run: dotnet pack --configuration Release --include-symbols --include-source --no-build --output "${{env.BUILD_PATH}}"

- name: Upload Packages
if: success() && github.event_name != 'pull_request'
uses: actions/upload-artifact@v3
with:
name: packages
path: "${{env.BUILD_PATH}}"

deploy:
runs-on: ubuntu-latest
needs: build
if: success() && github.event_name != 'pull_request' && (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/v'))

steps:
- name: Download Artifact
uses: actions/download-artifact@v3
with:
name: packages

- name: Publish Packages GitHub
run: |
for package in $(find -name "*.nupkg"); do
echo "${0##*/}": Pushing $package...
dotnet nuget push $package --source https://nuget.pkg.github.com/loresoft/index.json --api-key ${{ secrets.GITHUB_TOKEN }} --skip-duplicate
done
- name: Publish Packages feedz
run: |
for package in $(find -name "*.nupkg"); do
echo "${0##*/}": Pushing $package...
dotnet nuget push $package --source https://f.feedz.io/loresoft/open/nuget/index.json --api-key ${{ secrets.FEEDDZ_KEY }} --skip-duplicate
done
- name: Publish Packages Nuget
if: startsWith(github.ref, 'refs/tags/v')
run: |
for package in $(find -name "*.nupkg"); do
echo "${0##*/}": Pushing $package...
dotnet nuget push $package --source https://api.nuget.org/v3/index.json --api-key ${{ secrets.NUGET_KEY }} --skip-duplicate
done
85 changes: 85 additions & 0 deletions Backgrounder.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.0.31903.59
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Backgrounder", "src\Backgrounder\Backgrounder.csproj", "{17E1EDE7-E502-4D90-9740-4063F3F002B7}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{7913FEDB-7E41-46B5-A789-259146EA8BA1}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Backgrounder.Sample", "samples\Backgrounder.Sample\Backgrounder.Sample.csproj", "{0179E66C-863C-48D0-B145-517FB47F35A2}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Backgrounder.Azure.ServiceBus", "src\Backgrounder.Azure.ServiceBus\Backgrounder.Azure.ServiceBus.csproj", "{091EE48B-7B76-4B62-8007-F8FC9CE71187}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{F089EA71-2A5E-4F5F-B843-67E2FF9DBB00}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Backgrounder.Tests", "test\Backgrounder.Tests\Backgrounder.Tests.csproj", "{5824A417-59B2-4F40-8A4D-2AE64F28B338}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Backgrounder.Azure.ServiceBus.Tests", "test\Backgrounder.Azure.ServiceBus.Tests\Backgrounder.Azure.ServiceBus.Tests.csproj", "{0B1ED390-B2CB-4863-B956-2391B01197CA}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Backgrounder.Generators", "src\Backgrounder.Generators\Backgrounder.Generators.csproj", "{24D6B692-C579-47B1-A041-1DD440B82764}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Build", "Build", "{1AA0FC81-4621-47EC-9D4F-B64662B68CC8}"
ProjectSection(SolutionItems) = preProject
src\Directory.Build.props = src\Directory.Build.props
.github\workflows\dotnet.yml = .github\workflows\dotnet.yml
README.md = README.md
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Backgrounder.Generators.Tests", "test\Backgrounder.Generators.Tests\Backgrounder.Generators.Tests.csproj", "{5688BE7D-01D0-4DAE-96B3-CD2D68739B83}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Backgrounder.Sample.Library", "samples\Backgrounder.Sample.Library\Backgrounder.Sample.Library.csproj", "{098517FD-EFBF-4B60-976B-DF26D5BA4493}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{17E1EDE7-E502-4D90-9740-4063F3F002B7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{17E1EDE7-E502-4D90-9740-4063F3F002B7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{17E1EDE7-E502-4D90-9740-4063F3F002B7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{17E1EDE7-E502-4D90-9740-4063F3F002B7}.Release|Any CPU.Build.0 = Release|Any CPU
{0179E66C-863C-48D0-B145-517FB47F35A2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0179E66C-863C-48D0-B145-517FB47F35A2}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0179E66C-863C-48D0-B145-517FB47F35A2}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0179E66C-863C-48D0-B145-517FB47F35A2}.Release|Any CPU.Build.0 = Release|Any CPU
{091EE48B-7B76-4B62-8007-F8FC9CE71187}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{091EE48B-7B76-4B62-8007-F8FC9CE71187}.Debug|Any CPU.Build.0 = Debug|Any CPU
{091EE48B-7B76-4B62-8007-F8FC9CE71187}.Release|Any CPU.ActiveCfg = Release|Any CPU
{091EE48B-7B76-4B62-8007-F8FC9CE71187}.Release|Any CPU.Build.0 = Release|Any CPU
{5824A417-59B2-4F40-8A4D-2AE64F28B338}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5824A417-59B2-4F40-8A4D-2AE64F28B338}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5824A417-59B2-4F40-8A4D-2AE64F28B338}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5824A417-59B2-4F40-8A4D-2AE64F28B338}.Release|Any CPU.Build.0 = Release|Any CPU
{0B1ED390-B2CB-4863-B956-2391B01197CA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0B1ED390-B2CB-4863-B956-2391B01197CA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0B1ED390-B2CB-4863-B956-2391B01197CA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0B1ED390-B2CB-4863-B956-2391B01197CA}.Release|Any CPU.Build.0 = Release|Any CPU
{24D6B692-C579-47B1-A041-1DD440B82764}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{24D6B692-C579-47B1-A041-1DD440B82764}.Debug|Any CPU.Build.0 = Debug|Any CPU
{24D6B692-C579-47B1-A041-1DD440B82764}.Release|Any CPU.ActiveCfg = Release|Any CPU
{24D6B692-C579-47B1-A041-1DD440B82764}.Release|Any CPU.Build.0 = Release|Any CPU
{5688BE7D-01D0-4DAE-96B3-CD2D68739B83}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5688BE7D-01D0-4DAE-96B3-CD2D68739B83}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5688BE7D-01D0-4DAE-96B3-CD2D68739B83}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5688BE7D-01D0-4DAE-96B3-CD2D68739B83}.Release|Any CPU.Build.0 = Release|Any CPU
{098517FD-EFBF-4B60-976B-DF26D5BA4493}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{098517FD-EFBF-4B60-976B-DF26D5BA4493}.Debug|Any CPU.Build.0 = Debug|Any CPU
{098517FD-EFBF-4B60-976B-DF26D5BA4493}.Release|Any CPU.ActiveCfg = Release|Any CPU
{098517FD-EFBF-4B60-976B-DF26D5BA4493}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{0179E66C-863C-48D0-B145-517FB47F35A2} = {7913FEDB-7E41-46B5-A789-259146EA8BA1}
{5824A417-59B2-4F40-8A4D-2AE64F28B338} = {F089EA71-2A5E-4F5F-B843-67E2FF9DBB00}
{0B1ED390-B2CB-4863-B956-2391B01197CA} = {F089EA71-2A5E-4F5F-B843-67E2FF9DBB00}
{5688BE7D-01D0-4DAE-96B3-CD2D68739B83} = {F089EA71-2A5E-4F5F-B843-67E2FF9DBB00}
{098517FD-EFBF-4B60-976B-DF26D5BA4493} = {7913FEDB-7E41-46B5-A789-259146EA8BA1}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {9DF2C62A-4B5E-44B4-A7EC-5D6C935CF1CA}
EndGlobalSection
EndGlobal
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
# Backgrounder

Simple background jobs via message broker and source generation
14 changes: 14 additions & 0 deletions coverlet.runsettings
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8" ?>
<RunSettings>
<DataCollectionRunSettings>
<DataCollectors>
<DataCollector friendlyName="XPlat code coverage">
<Configuration>
<Format>lcov</Format>
<ExcludeByAttribute>Obsolete,GeneratedCodeAttribute,CompilerGeneratedAttribute,TestSDKAutoGeneratedCode</ExcludeByAttribute>
<SkipAutoProps>true</SkipAutoProps>
</Configuration>
</DataCollector>
</DataCollectors>
</DataCollectionRunSettings>
</RunSettings>
Binary file added logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<LangVersion>latest</LangVersion>
<EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\src\Backgrounder.Azure.ServiceBus\Backgrounder.Azure.ServiceBus.csproj" />
<ProjectReference Include="..\..\src\Backgrounder.Generators\Backgrounder.Generators.csproj">
<OutputItemType>Analyzer</OutputItemType>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>

</Project>
8 changes: 8 additions & 0 deletions samples/Backgrounder.Sample.Library/IsExternalInit.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#if NETSTANDARD2_0
using System.ComponentModel;

namespace System.Runtime.CompilerServices;

[EditorBrowsable(EditorBrowsableState.Never)]
sealed class IsExternalInit { }
#endif
Loading

0 comments on commit 8dcb9be

Please sign in to comment.