Skip to content
This repository was archived by the owner on Dec 20, 2023. It is now read-only.

Commit 58f969f

Browse files
committed
initial idea
0 parents  commit 58f969f

26 files changed

+1067
-0
lines changed

.config/dotnet-tools.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"version": 1,
3+
"isRoot": true,
4+
"tools": {
5+
"cake.tool": {
6+
"version": "0.38.5",
7+
"commands": [
8+
"dotnet-cake"
9+
]
10+
}
11+
}
12+
}

.editorconfig

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
root = true
2+
3+
[*]
4+
charset = utf-8
5+
indent_size = 4
6+
indent_style = space
7+
insert_final_newline = true
8+
trim_trailing_whitespace = true
9+
10+
[.cs]
11+
12+
13+
# This may not be needed, but kept for compatibility with VS
14+
[*.{sln,csproj}]
15+
end_of_line = crlf
16+
17+
# Markdown files allows the use of trailing spaces to denote
18+
# a line break
19+
[*.md]
20+
trim_trailing_whitespace = false
21+
22+
# Batch and powershell files requires crlf to be
23+
# used as the line ending.
24+
# Powershell also requires UTF-8 with BOM encoding
25+
# to function if utf8 characters is used (maibe batch files as well)
26+
[*.{bat,ps1}]
27+
charset = utf-8-bom
28+
end_of_line = crlf
29+
30+
# Shell scripts requires the use of lf line endings
31+
# to be able to run.
32+
[*.sh]
33+
end_of_line = lf
34+
35+
# The visual studio code file
36+
# requires the use of crlf line endings
37+
[tasks.json]
38+
end_of_line = crlf

.gitattributes

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
###############################################################################
2+
# Set default behavior to automatically normalize line endings.
3+
###############################################################################
4+
* text=auto
5+
6+
*.cs text diff=csharp
7+
8+
*.ps1 text eol=crlf
9+
*.bat text eol=crlf
10+
*.sln text eol=crlf
11+
*.csproj text eol=crlf
12+
tasks.json text eol=crlf
13+
14+
*.sh text eol=lf
15+
16+
*.md text whitespace=-trailing-space
17+
18+
# Exclude files from exporting
19+
20+
.gitattributes export-ignore
21+
.gitignore export-ignore

.github/renovate.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
3+
"extends": [ "github>nils-a/renovate-config" ],
4+
"packageRules": [
5+
{
6+
"matchPackageNames": ["cake.tool", "Spectre.Console", "SimpleInjector"],
7+
"enabled": false
8+
}
9+
]
10+
}

.github/workflows/build.yml

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
name: Build
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
- develop
8+
- "feature/**"
9+
- "release/**"
10+
- "hotfix/**"
11+
tags:
12+
- "*"
13+
paths-ignore:
14+
- "README.md"
15+
pull_request:
16+
17+
jobs:
18+
build:
19+
runs-on: ${{ matrix.os }}
20+
strategy:
21+
matrix:
22+
os: [ windows-2019, ubuntu-18.04, macos-10.15 ]
23+
env:
24+
COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
25+
GITHUB_PAT: ${{ secrets.GH_TOKEN }}
26+
AZURE_USER: ${{ secrets.AZURE_USER }}
27+
AZURE_PASSWORD: ${{ secrets.AZURE_PASSWORD }}
28+
AZURE_SOURCE: ${{ secrets.AZURE_SOURCE }}
29+
GPR_USER: ${{ secrets.GPR_USER }}
30+
GPR_PASSWORD: ${{ secrets.GPR_PASSWORD }}
31+
GPR_SOURCE: ${{ secrets.GPR_SOURCE }}
32+
NUGET_API_KEY: ${{ secrets.NUGET_API_KEY }}
33+
NUGET_SOURCE: "https://api.nuget.org/v3/index.json"
34+
TWITTER_ACCESS_TOKEN: ${{ secrets.TWITTER_ACCESS_TOKEN }}
35+
TWITTER_ACCESS_TOKEN_SECRET: ${{ secrets.TWITTER_ACCESS_TOKEN_SECRET }}
36+
TWITTER_CONSUMER_KEY: ${{ secrets.TWITTER_CONSUMER_KEY }}
37+
TWITTER_CONSUMER_SECRET: ${{ secrets.TWITTER_CONSUMER_SECRET }}
38+
#WYAM_ACCESS_TOKEN: ${{ secrets.WYAM_ACCESS_TOKEN }}
39+
#WYAM_DEPLOY_BRANCH: "gh-pages"
40+
#WYAM_DEPLOY_REMOTE: ${{ github.event.repository.html_url }}
41+
42+
steps:
43+
- name: Checkout the repository
44+
uses: actions/checkout@v2
45+
- name: Fetch all tags and branches
46+
run: git fetch --prune --unshallow
47+
- name: Cache Tools
48+
uses: actions/cache@v2
49+
with:
50+
path: tools
51+
key: ${{ runner.os }}-tools-${{ hashFiles('recipe.cake') }}
52+
- name: Build project
53+
uses: cake-build/cake-action@v1
54+
with:
55+
script-path: recipe.cake
56+
target: CI
57+
verbosity: Diagnostic
58+
cake-version: 0.38.5
59+
cake-bootstrap: true
60+
- name: Upload Issues
61+
uses: actions/upload-artifact@v2
62+
with:
63+
if-no-files-found: warn
64+
name: ${{ matrix.os }} Issues
65+
path: |
66+
BuildArtifacts/report.html
67+
BuildArtifacts/**/coverlet/*.xml
68+
- name: Upload Packages
69+
uses: actions/upload-artifact@v2
70+
if: runner.os == 'Windows'
71+
with:
72+
if-no-files-found: warn
73+
name: package
74+
path: BuildArtifacts/Packages/**/*
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# For most projects, this workflow file will not need changing; you simply need
2+
# to commit it to your repository.
3+
#
4+
# You may wish to alter this file to override the set of languages analyzed,
5+
# or to provide custom queries or build logic.
6+
name: "CodeQL"
7+
8+
on:
9+
push:
10+
branches: [develop]
11+
pull_request:
12+
# The branches below must be a subset of the branches above
13+
branches: [develop]
14+
schedule:
15+
- cron: '0 15 * * 6'
16+
17+
jobs:
18+
analyze:
19+
name: Analyze
20+
runs-on: ubuntu-18.04
21+
22+
strategy:
23+
fail-fast: false
24+
matrix:
25+
# Override automatic language detection by changing the below list
26+
# Supported options are ['csharp', 'cpp', 'go', 'java', 'javascript', 'python']
27+
language: ['csharp']
28+
# Learn more...
29+
# https://docs.github.com/en/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#overriding-automatic-language-detection
30+
31+
steps:
32+
- name: Checkout repository
33+
uses: actions/checkout@v2
34+
with:
35+
fetch-depth: 0
36+
37+
- name: Cache Tools
38+
uses: actions/cache@v2
39+
with:
40+
path: tools
41+
key: ${{ runner.os }}-tools-${{ hashFiles('recipe.cake') }}
42+
43+
# Initializes the CodeQL tools for scanning.
44+
- name: Initialize CodeQL
45+
uses: github/codeql-action/init@v1
46+
with:
47+
languages: ${{ matrix.language }}
48+
# If you wish to specify custom queries, you can do so here or in a config file.
49+
# By default, queries listed here will override any specified in a config file.
50+
# Prefix the list here with "+" to use these queries and those in the config file.
51+
# queries: ./path/to/local/query, your-org/your-repo/queries@main
52+
53+
- name: Build project
54+
uses: cake-build/cake-action@v1
55+
with:
56+
script-path: recipe.cake
57+
target: DotNetCore-Build
58+
cake-version: 0.38.5
59+
cake-bootstrap: true
60+
61+
- name: Perform CodeQL Analysis
62+
uses: github/codeql-action/analyze@v1

.gitignore

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# Ignore everything in vscode folder
2+
# except what we want users to
3+
# contribute if there is any
4+
# improvement
5+
.vscode/*
6+
!.vscode/extensions.json
7+
!.vscode/settings.json
8+
!.vscode/tasks.json
9+
10+
# User-specific files in Visual Studio
11+
*.suo
12+
*.user
13+
*.userosscache
14+
*.sln.docstates
15+
.vs/
16+
17+
# GhostDoc plugin settings file
18+
*.GhostDoc.xml
19+
20+
# Ignore cake tools directory
21+
tools/*
22+
23+
# Ignore build artifacts
24+
BuildArtifacts/
25+
[Oo]bj/
26+
[Bb]in/
27+
[Tt]estresults/
28+
29+
# OS Specific files
30+
*~
31+
.DS_Store
32+
.AppleDouble
33+
.LSOverride
34+
35+
# .nfs files are created when an open file is removed but is still being accessed
36+
.nfs*
37+
38+
# Windows thumbnail cache files
39+
Thumbs.db
40+
ehthumbs.db
41+
ehthumbs_vista.db
42+
43+
# Windows shortcuts
44+
*.lnk
45+
46+
# Thumbnails
47+
._*
48+
49+
# Cake.Graph related
50+
docs/input/tasks/*
51+
52+
# Wyam related
53+
config.wyam.*
54+
/src/packages/

0 commit comments

Comments
 (0)