Skip to content

Commit 8036025

Browse files
authored
Migrate to Nuke build (#31)
1 parent 2495b27 commit 8036025

23 files changed

+784
-143
lines changed

.gitignore

+241-18
Large diffs are not rendered by default.

.idea/.idea.Todoist.Net/.idea/.gitignore

+13
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/.idea.Todoist.Net/.idea/.name

+1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/.idea.Todoist.Net/.idea/GitLink.xml

+6
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/.idea.Todoist.Net/.idea/encodings.xml

+4
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/.idea.Todoist.Net/.idea/indexLayout.xml

+8
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/.idea.Todoist.Net/.idea/vcs.xml

+6
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.nuke/build.schema.json

+122
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
{
2+
"$schema": "http://json-schema.org/draft-04/schema#",
3+
"$ref": "#/definitions/build",
4+
"title": "Build Schema",
5+
"definitions": {
6+
"build": {
7+
"type": "object",
8+
"properties": {
9+
"Configuration": {
10+
"type": "string",
11+
"description": "Configuration to build - Default is 'Debug' (local) or 'Release' (server)",
12+
"enum": [
13+
"Debug",
14+
"Release"
15+
]
16+
},
17+
"Continue": {
18+
"type": "boolean",
19+
"description": "Indicates to continue a previously failed build attempt"
20+
},
21+
"Help": {
22+
"type": "boolean",
23+
"description": "Shows the help text for this build assembly"
24+
},
25+
"Host": {
26+
"type": "string",
27+
"description": "Host for execution. Default is 'automatic'",
28+
"enum": [
29+
"AppVeyor",
30+
"AzurePipelines",
31+
"Bamboo",
32+
"Bitbucket",
33+
"Bitrise",
34+
"GitHubActions",
35+
"GitLab",
36+
"Jenkins",
37+
"Rider",
38+
"SpaceAutomation",
39+
"TeamCity",
40+
"Terminal",
41+
"TravisCI",
42+
"VisualStudio",
43+
"VSCode"
44+
]
45+
},
46+
"NoLogo": {
47+
"type": "boolean",
48+
"description": "Disables displaying the NUKE logo"
49+
},
50+
"Partition": {
51+
"type": "string",
52+
"description": "Partition to use on CI"
53+
},
54+
"Plan": {
55+
"type": "boolean",
56+
"description": "Shows the execution plan (HTML)"
57+
},
58+
"Profile": {
59+
"type": "array",
60+
"description": "Defines the profiles to load",
61+
"items": {
62+
"type": "string"
63+
}
64+
},
65+
"Root": {
66+
"type": "string",
67+
"description": "Root directory during build execution"
68+
},
69+
"Skip": {
70+
"type": "array",
71+
"description": "List of targets to be skipped. Empty list skips all dependencies",
72+
"items": {
73+
"type": "string",
74+
"enum": [
75+
"Compile",
76+
"NugetPack",
77+
"Sonar",
78+
"SonarBegin",
79+
"Test",
80+
"UnitTest",
81+
"UpdateBuildVersion"
82+
]
83+
}
84+
},
85+
"Solution": {
86+
"type": "string",
87+
"description": "Path to a solution file that is automatically loaded"
88+
},
89+
"sonar:apikey": {
90+
"type": "string",
91+
"description": "SonarQube API key"
92+
},
93+
"Target": {
94+
"type": "array",
95+
"description": "List of targets to be invoked. Default is '{default_target}'",
96+
"items": {
97+
"type": "string",
98+
"enum": [
99+
"Compile",
100+
"NugetPack",
101+
"Sonar",
102+
"SonarBegin",
103+
"Test",
104+
"UnitTest",
105+
"UpdateBuildVersion"
106+
]
107+
}
108+
},
109+
"Verbosity": {
110+
"type": "string",
111+
"description": "Logging verbosity during build execution. Default is 'Normal'",
112+
"enum": [
113+
"Minimal",
114+
"Normal",
115+
"Quiet",
116+
"Verbose"
117+
]
118+
}
119+
}
120+
}
121+
}
122+
}

.nuke/parameters.json

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"$schema": "./build.schema.json",
3+
"Solution": "Todoist.Net.sln"
4+
}

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Todoist.Net
22
[![Build status](https://ci.appveyor.com/api/projects/status/r5ylbxtpjya9ayk2?svg=true)](https://ci.appveyor.com/project/olsh/todoist-net)
3-
[![Quality Gate](https://sonarcloud.io/api/project_badges/measure?project=todoist-net&metric=alert_status)](https://sonarcloud.io/dashboard?id=todoist-net)
3+
[![Quality Gate](https://sonarcloud.io/api/project_badges/measure?project=olsh_todoist-net&metric=alert_status)](https://sonarcloud.io/dashboard?id=olsh_todoist-net)
44
[![NuGet](https://img.shields.io/nuget/v/Todoist.Net.svg)](https://www.nuget.org/packages/Todoist.Net/)
55

66
A [Todoist Sync API](https://developer.todoist.com/sync/v9/) client for .NET.

Todoist.Net.sln

+5-1
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,24 @@ EndProject
88
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{28A18847-32D8-4A08-A1BF-BC51E3FBAB96}"
99
ProjectSection(SolutionItems) = preProject
1010
appveyor.yml = appveyor.yml
11-
build.cake = build.cake
1211
README.md = README.md
12+
.gitignore = .gitignore
1313
EndProjectSection
1414
EndProject
1515
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Todoist.Net", "src\Todoist.Net\Todoist.Net.csproj", "{0D84413B-43C0-4F0E-92A6-669F2E9EA5CB}"
1616
EndProject
1717
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Todoist.Net.Tests", "src\Todoist.Net.Tests\Todoist.Net.Tests.csproj", "{6F7D284C-2790-41E6-BAB5-DB0524F630D7}"
1818
EndProject
19+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "_build", "build\_build.csproj", "{51A0DD62-8257-48DA-BE1C-5E1F3DE9A5F2}"
20+
EndProject
1921
Global
2022
GlobalSection(SolutionConfigurationPlatforms) = preSolution
2123
Debug|Any CPU = Debug|Any CPU
2224
Release|Any CPU = Release|Any CPU
2325
EndGlobalSection
2426
GlobalSection(ProjectConfigurationPlatforms) = postSolution
27+
{51A0DD62-8257-48DA-BE1C-5E1F3DE9A5F2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
28+
{51A0DD62-8257-48DA-BE1C-5E1F3DE9A5F2}.Release|Any CPU.ActiveCfg = Release|Any CPU
2529
{0D84413B-43C0-4F0E-92A6-669F2E9EA5CB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
2630
{0D84413B-43C0-4F0E-92A6-669F2E9EA5CB}.Debug|Any CPU.Build.0 = Debug|Any CPU
2731
{0D84413B-43C0-4F0E-92A6-669F2E9EA5CB}.Release|Any CPU.ActiveCfg = Release|Any CPU

appveyor.yml

+12-4
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,21 @@
1-
version: 1.0.{build}
21
image: Visual Studio 2022
2+
3+
skip_branch_with_pr: true
4+
skip_tags: true
5+
36
install:
4-
- dotnet tool install -g Cake.Tool --version 2.2.0
57
- SET JAVA_HOME=C:\Program Files\Java\jdk17
68
- SET PATH=%JAVA_HOME%\bin;%PATH%
9+
710
build_script:
8-
- cmd: dotnet cake --Target=CI
11+
- cmd: >-
12+
build.cmd update-build-version sonar unit-test nuget-pack --configuration Release
13+
914
test: off
15+
1016
cache:
1117
- '%USERPROFILE%\.sonar\cache'
1218
- '%USERPROFILE%\.nuget\packages -> **\*.csproj'
13-
- 'tools -> build.cake'
19+
20+
artifacts:
21+
- path: 'artifacts\*.nupkg'

build.cake

-119
This file was deleted.

build.cmd

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
:; set -eo pipefail
2+
:; SCRIPT_DIR=$(cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd)
3+
:; ${SCRIPT_DIR}/build.sh "$@"
4+
:; exit $?
5+
6+
@ECHO OFF
7+
powershell -ExecutionPolicy ByPass -NoProfile -File "%~dp0build.ps1" %*

0 commit comments

Comments
 (0)