Skip to content

Commit

Permalink
Merge pull request #13 from ricaun-io/develop
Browse files Browse the repository at this point in the history
Version 1.4.2
  • Loading branch information
ricaun authored Jan 22, 2025
2 parents 0e26421 + b6ba7ae commit e6236eb
Show file tree
Hide file tree
Showing 7 changed files with 267 additions and 109 deletions.
321 changes: 218 additions & 103 deletions Build/.nuke/build.schema.json
Original file line number Diff line number Diff line change
@@ -1,52 +1,237 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"$ref": "#/definitions/build",
"title": "Build Schema",
"definitions": {
"build": {
"Host": {
"type": "string",
"enum": [
"AppVeyor",
"AzurePipelines",
"Bamboo",
"Bitbucket",
"Bitrise",
"GitHubActions",
"GitLab",
"Jenkins",
"Rider",
"SpaceAutomation",
"TeamCity",
"Terminal",
"TravisCI",
"VisualStudio",
"VSCode"
]
},
"IssConfiguration": {
"type": "object",
"description": "IssConfiguration",
"properties": {
"Title": {
"type": [
"null",
"string"
],
"description": "Title (default null)"
},
"Image": {
"type": [
"null",
"string"
],
"description": "Image (default IMAGE)"
},
"ImageSmall": {
"type": [
"null",
"string"
],
"description": "Small Image (default IMAGESMALL)"
},
"Icon": {
"type": [
"null",
"string"
],
"description": "Icon (default ICON)"
},
"Licence": {
"type": [
"null",
"string"
],
"description": "Licence (default LICENSE)"
},
"Language": {
"description": "Language (default IssLanguage)",
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/definitions/IssLanguage"
}
]
},
"IssLanguageLicences": {
"type": [
"array",
"null"
],
"description": "IssLanguages",
"items": {
"$ref": "#/definitions/IssLanguageLicence"
}
}
}
},
"IssLanguage": {
"type": "object",
"description": "IssLanguage",
"properties": {
"Name": {
"type": [
"null",
"string"
],
"description": "Name (default \"en\")"
},
"MessagesFile": {
"type": [
"null",
"string"
],
"description": "MessagesFile (default \"compiler:Default.isl\")"
}
}
},
"IssLanguageLicence": {
"type": "object",
"description": "IssLanguageLicence",
"properties": {
"Name": {
"type": [
"null",
"string"
],
"description": "Name (default \"en\")"
},
"MessagesFile": {
"type": [
"null",
"string"
],
"description": "MessagesFile (default \"compiler:Default.isl\")"
},
"Licence": {
"type": [
"null",
"string"
],
"description": "Licence (default LICENSE)"
}
}
},
"ExecutableTarget": {
"type": "string",
"enum": [
"Build",
"BuildConsole",
"Clean",
"Compile",
"GitPreRelease",
"GitRelease",
"Pack",
"PackageBuilder",
"PrePack",
"Release",
"Sign"
]
},
"Verbosity": {
"type": "string",
"description": "",
"enum": [
"Verbose",
"Normal",
"Minimal",
"Quiet"
]
},
"NukeBuild": {
"properties": {
"Continue": {
"type": "boolean",
"description": "Indicates to continue a previously failed build attempt"
},
"Folder": {
"type": "string"
},
"GitHubToken": {
"type": "string",
"default": "Secrets must be entered via 'nuke :secrets [profile]'"
},
"Help": {
"type": "boolean",
"description": "Shows the help text for this build assembly"
},
"Host": {
"type": "string",
"description": "Host for execution. Default is 'automatic'",
"enum": [
"AppVeyor",
"AzurePipelines",
"Bamboo",
"Bitbucket",
"Bitrise",
"GitHubActions",
"GitLab",
"Jenkins",
"Rider",
"SpaceAutomation",
"TeamCity",
"Terminal",
"TravisCI",
"VisualStudio",
"VSCode"
]
"$ref": "#/definitions/Host"
},
"NoLogo": {
"type": "boolean",
"description": "Disables displaying the NUKE logo"
},
"Partition": {
"type": "string",
"description": "Partition to use on CI"
},
"Plan": {
"type": "boolean",
"description": "Shows the execution plan (HTML)"
},
"Profile": {
"type": "array",
"description": "Defines the profiles to load",
"items": {
"type": "string"
}
},
"Root": {
"type": "string",
"description": "Root directory during build execution"
},
"Skip": {
"type": "array",
"description": "List of targets to be skipped. Empty list skips all dependencies",
"items": {
"$ref": "#/definitions/ExecutableTarget"
}
},
"Target": {
"type": "array",
"description": "List of targets to be invoked. Default is '{default_target}'",
"items": {
"$ref": "#/definitions/ExecutableTarget"
}
},
"Verbosity": {
"description": "Logging verbosity during build execution. Default is 'Normal'",
"$ref": "#/definitions/Verbosity"
}
}
}
},
"allOf": [
{
"properties": {
"EnableForkedRepository": {
"type": "boolean"
},
"Folder": {
"type": "string"
},
"GitHubToken": {
"type": "string",
"default": "Secrets must be entered via 'nuke :secrets [profile]'"
},
"InstallationFiles": {
"type": "string"
},
"IssConfiguration": {
"type": "string"
"$ref": "#/definitions/IssConfiguration"
},
"MainName": {
"type": "string"
Expand All @@ -60,10 +245,6 @@
"NewVersions": {
"type": "boolean"
},
"NoLogo": {
"type": "boolean",
"description": "Disables displaying the NUKE logo"
},
"NugetApiKey": {
"type": "string",
"default": "Secrets must be entered via 'nuke :secrets [profile]'"
Expand All @@ -72,27 +253,12 @@
"type": "string",
"default": "Secrets must be entered via 'nuke :secrets [profile]'"
},
"Partition": {
"type": "string",
"description": "Partition to use on CI"
},
"Plan": {
"type": "boolean",
"description": "Shows the execution plan (HTML)"
},
"PreReleaseFilter": {
"type": "array",
"items": {
"type": "string"
}
},
"Profile": {
"type": "array",
"description": "Defines the profiles to load",
"items": {
"type": "string"
}
},
"ProjectNameFolder": {
"type": "boolean"
},
Expand All @@ -117,10 +283,6 @@
"ReleasePackageBuilder": {
"type": "boolean"
},
"Root": {
"type": "string",
"description": "Root directory during build execution"
},
"SignFile": {
"type": "string",
"default": "Secrets must be entered via 'nuke :secrets [profile]'"
Expand All @@ -129,50 +291,10 @@
"type": "string",
"default": "Secrets must be entered via 'nuke :secrets [profile]'"
},
"Skip": {
"type": "array",
"description": "List of targets to be skipped. Empty list skips all dependencies",
"items": {
"type": "string",
"enum": [
"Build",
"BuildConsole",
"Clean",
"Compile",
"GitPreRelease",
"GitRelease",
"Pack",
"PackageBuilder",
"PrePack",
"Release",
"Sign"
]
}
},
"Solution": {
"type": "string",
"description": "Path to a solution file that is automatically loaded"
},
"Target": {
"type": "array",
"description": "List of targets to be invoked. Default is '{default_target}'",
"items": {
"type": "string",
"enum": [
"Build",
"BuildConsole",
"Clean",
"Compile",
"GitPreRelease",
"GitRelease",
"Pack",
"PackageBuilder",
"PrePack",
"Release",
"Sign"
]
}
},
"UnlistNuget": {
"type": "boolean"
},
Expand All @@ -181,18 +303,11 @@
},
"VendorId": {
"type": "string"
},
"Verbosity": {
"type": "string",
"description": "Logging verbosity during build execution. Default is 'Normal'",
"enum": [
"Minimal",
"Normal",
"Quiet",
"Verbose"
]
}
}
},
{
"$ref": "#/definitions/NukeBuild"
}
}
]
}
2 changes: 1 addition & 1 deletion Build/IBuildConsole.cs
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ public interface IBuildConsole : IHazExample, IRevitPackageBuilder
{
var resourcesDirectory = project.Directory / "Bundle";
Serilog.Log.Information($"Copy Bundle: {file} to {resourcesDirectory}");
FileSystemTasks.CopyFileToDirectory(file, resourcesDirectory, FileExistsPolicy.OverwriteIfNewer);
AbsolutePathExtensions.CopyToDirectory(file, resourcesDirectory, ExistsPolicy.FileOverwriteIfNewer);
});

Solution.BuildProject(project, (project) =>
Expand Down
Loading

0 comments on commit e6236eb

Please sign in to comment.