diff --git a/.github/workflows/create-release.yml b/.github/workflows/create-release.yml
index 29f211c..f3c9fa8 100644
--- a/.github/workflows/create-release.yml
+++ b/.github/workflows/create-release.yml
@@ -47,7 +47,7 @@ jobs:
uses: actions/upload-artifact@v4
with:
name: build-artifacts
- path: ./.artifacts/**/*.nupkg
+ path: ./.artifacts/src/**/*.nupkg
deploy:
name: "Deploy NuGets"
diff --git a/AsepriteDotNet.sln b/AsepriteDotNet.sln
index d0f0a9c..8b2e50d 100644
--- a/AsepriteDotNet.sln
+++ b/AsepriteDotNet.sln
@@ -33,13 +33,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "benchmarks", "benchmarks",
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ColorProcessingBenchmark", "benchmarks\ColorProcessingBenchmark\ColorProcessingBenchmark.csproj", "{201F4F7E-C68D-400C-AB87-9A77578DDBEB}"
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{1515BA5C-6095-4F5F-94E6-7D54D09321DE}"
- ProjectSection(SolutionItems) = preProject
- build\Directory.Build.props = build\Directory.Build.props
- EndProjectSection
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "AsepriteDotNet.Build", "build\AsepriteDotNet.Build.csproj", "{27B2E61B-9CA4-44D2-834F-772B7D233D9F}"
-EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "workflows", "workflows", "{BC452291-6909-42FE-9343-7FD2F4F4F0E5}"
ProjectSection(SolutionItems) = preProject
.github\workflows\main.yml = .github\workflows\main.yml
@@ -78,10 +71,6 @@ Global
{201F4F7E-C68D-400C-AB87-9A77578DDBEB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{201F4F7E-C68D-400C-AB87-9A77578DDBEB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{201F4F7E-C68D-400C-AB87-9A77578DDBEB}.Release|Any CPU.Build.0 = Release|Any CPU
- {27B2E61B-9CA4-44D2-834F-772B7D233D9F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {27B2E61B-9CA4-44D2-834F-772B7D233D9F}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {27B2E61B-9CA4-44D2-834F-772B7D233D9F}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {27B2E61B-9CA4-44D2-834F-772B7D233D9F}.Release|Any CPU.Build.0 = Release|Any CPU
{A6243E15-9D53-4FAB-A2B5-F216614AF832}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A6243E15-9D53-4FAB-A2B5-F216614AF832}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A6243E15-9D53-4FAB-A2B5-F216614AF832}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -110,7 +99,6 @@ Global
{18E8668C-4BF2-4F9B-8016-E1F22BD53BCA} = {B63FA11D-4B29-45F2-AAD9-BF489AEE7BAA}
{A289C75E-0BCF-421F-AAE0-050F45AC4F4E} = {5F219449-CE10-4DD9-BBE5-251720F3B5E3}
{201F4F7E-C68D-400C-AB87-9A77578DDBEB} = {C4B76AC7-83D0-4F29-BAB9-3C0EAFB31C0D}
- {27B2E61B-9CA4-44D2-834F-772B7D233D9F} = {1515BA5C-6095-4F5F-94E6-7D54D09321DE}
{BC452291-6909-42FE-9343-7FD2F4F4F0E5} = {2B0F6763-3C96-4753-8E12-6A2975369212}
{A6243E15-9D53-4FAB-A2B5-F216614AF832} = {E55B2B0D-9615-434F-942A-6C496A02E617}
{E43B057B-37B4-4C77-AC25-376380318AEF} = {E55B2B0D-9615-434F-942A-6C496A02E617}
diff --git a/Directory.Build.props b/Directory.Build.props
index f5f25fd..63328c2 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -6,15 +6,6 @@
$(MSBuildThisFileDirectory)
-
-
- $(SolutionDirectory).artifacts/
- $(ProjectCategory)/$(MSBuildProjectName)
- $(BaseArtifactsPath)obj/$(BaseArtifactsPathSuffix)
- $(BaseArtifactsPath)bin/$(BaseArtifactsPathSuffix)
- $(BaseArtifactsPath)pkg/$(BaseArtifactsPathSuffix)/$(Configuration)/
-
-
en
diff --git a/build.ps1 b/build.ps1
deleted file mode 100644
index a707719..0000000
--- a/build.ps1
+++ /dev/null
@@ -1,2 +0,0 @@
-dotnet run --project build/Build.csproj -- $args
-exit $LASTEXITCODE;
\ No newline at end of file
diff --git a/build.sh b/build.sh
deleted file mode 100644
index dfd6b85..0000000
--- a/build.sh
+++ /dev/null
@@ -1 +0,0 @@
-dotnet run --project ./build/Build.csproj -- "$@"
diff --git a/build/AsepriteDotNet.Build.csproj b/build/AsepriteDotNet.Build.csproj
deleted file mode 100644
index 4861f2f..0000000
--- a/build/AsepriteDotNet.Build.csproj
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
- Exe
- net8.0
- $(MSBuildProjectDirectory)
-
-
-
-
-
\ No newline at end of file
diff --git a/build/BuildContext.cs b/build/BuildContext.cs
deleted file mode 100644
index ba9a60d..0000000
--- a/build/BuildContext.cs
+++ /dev/null
@@ -1,108 +0,0 @@
-using System.Net.Mime;
-using Cake.Common;
-using Cake.Common.Build;
-using Cake.Common.Build.GitHubActions.Data;
-using Cake.Common.IO;
-using Cake.Common.Tools.DotNet;
-using Cake.Common.Tools.DotNet.Build;
-using Cake.Common.Tools.DotNet.MSBuild;
-using Cake.Common.Tools.DotNet.Pack;
-using Cake.Common.Tools.DotNet.Publish;
-using Cake.Common.Tools.MSBuild;
-using Cake.Common.Xml;
-using Cake.Core;
-using Cake.Core.Diagnostics;
-using Cake.Core.IO;
-using Cake.Frosting;
-
-namespace AsepriteDotNet.Build;
-
-public sealed class BuildContext : FrostingContext
-{
- private const string DefaultRepositoryUrl = "https://github.com/AristurtleDev/AsepriteDotNet";
- private const string DefaultBuildConfiguration = "Release";
-
-
- public string Version { get; }
- public string BuildOutput { get; }
- public string RepositoryUrl { get; }
- public string BuildConfiguration { get; }
- public bool IsPreRelease { get; }
-
- public DirectoryPath NuGetsDirectory { get; }
- public DotNetMSBuildSettings DotNetMSBuildSettings { get; }
- public DotNetPublishSettings DotNetPublishSettings { get; }
- public MSBuildSettings MSBuildSettings { get; }
- public MSBuildSettings MSPackSettings { get; }
-
- public BuildContext(ICakeContext context) : base(context)
- {
- RepositoryUrl = context.Argument(nameof(RepositoryUrl), DefaultRepositoryUrl);
- BuildConfiguration = context.Argument(nameof(BuildConfiguration), DefaultBuildConfiguration);
- BuildOutput = context.Argument(nameof(BuildOutput), ".artifacts");
- NuGetsDirectory = $"{BuildOutput}/NuGet/";
- IsPreRelease = context.Argument(nameof(IsPreRelease), false);
-
- Version = context.XmlPeek("Directory.Build.props", "/Project/PropertyGroup/Version");
- if (context.BuildSystem().IsRunningOnGitHubActions)
- {
- GitHubActionsWorkflowInfo workflow = context.BuildSystem().GitHubActions.Environment.Workflow;
- RepositoryUrl = $"https://github.com/{workflow.Repository}";
-
- if (!RepositoryUrl.Equals(DefaultRepositoryUrl, StringComparison.OrdinalIgnoreCase))
- {
- Version = $"{Version}-{workflow.RepositoryOwner}";
- }
- else if (workflow.RefType == GitHubActionsRefType.Branch && !workflow.RefName.Equals("refs/head/main", StringComparison.OrdinalIgnoreCase))
- {
- Version = $"{Version}-develop";
- }
- else if (IsPreRelease)
- {
- Version = $"{Version}-prerelease";
- }
- else
- {
- Version = $"{Version}";
- }
- }
-
- DotNetMSBuildSettings = new DotNetMSBuildSettings();
- DotNetMSBuildSettings.WithProperty(nameof(Version), Version);
- DotNetMSBuildSettings.WithProperty(nameof(RepositoryUrl), RepositoryUrl);
-
- MSBuildSettings = new MSBuildSettings
- {
- Verbosity = Verbosity.Minimal,
- Configuration = BuildConfiguration
- };
- MSBuildSettings.WithProperty(nameof(Version), Version);
- MSBuildSettings.WithProperty(nameof(RepositoryUrl), RepositoryUrl);
-
- MSPackSettings = new MSBuildSettings()
- {
- Verbosity = Verbosity.Minimal,
- Configuration = BuildConfiguration,
- Restore = true
- };
- MSPackSettings.WithProperty(nameof(Version), Version);
- MSPackSettings.WithProperty(nameof(RepositoryUrl), RepositoryUrl);
- MSPackSettings.WithProperty("OutputDirectory", NuGetsDirectory.FullPath);
- MSPackSettings.WithTarget("Pack");
-
- DotNetPublishSettings = new DotNetPublishSettings()
- {
- MSBuildSettings = DotNetMSBuildSettings,
- Verbosity = DotNetVerbosity.Minimal,
- Configuration = BuildConfiguration,
- SelfContained = false
- };
-
- Console.WriteLine($"{nameof(Version)}: {Version}");
- Console.WriteLine($"{nameof(RepositoryUrl)}: {RepositoryUrl}");
- Console.WriteLine($"{nameof(BuildConfiguration)}: {BuildConfiguration}");
-
- context.CreateDirectory(BuildOutput);
- }
-
-}
diff --git a/build/Directory.Build.props b/build/Directory.Build.props
deleted file mode 100644
index 2b254ab..0000000
--- a/build/Directory.Build.props
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
-
-
- build
-
-
-
-
-
diff --git a/build/Program.cs b/build/Program.cs
deleted file mode 100644
index 3f3271b..0000000
--- a/build/Program.cs
+++ /dev/null
@@ -1,7 +0,0 @@
-using AsepriteDotNet.Build;
-using Cake.Frosting;
-
-return new CakeHost()
- .UseWorkingDirectory("../")
- .UseContext()
- .Run(args);
diff --git a/build/Tasks/BuildTask.cs b/build/Tasks/BuildTask.cs
deleted file mode 100644
index 4de0829..0000000
--- a/build/Tasks/BuildTask.cs
+++ /dev/null
@@ -1,23 +0,0 @@
-using Cake.Common.Tools.DotNet;
-using Cake.Common.Tools.DotNet.Build;
-using Cake.Frosting;
-
-namespace AsepriteDotNet.Build;
-
-[TaskName("Build")]
-public sealed class BuildTask : FrostingTask
-{
- public override void Run(BuildContext context)
- {
- ArgumentNullException.ThrowIfNull(context);
-
- DotNetBuildSettings settings = new DotNetBuildSettings()
- {
- MSBuildSettings = context.DotNetMSBuildSettings,
- Verbosity = DotNetVerbosity.Minimal,
- Configuration = context.BuildConfiguration
- };
-
- context.DotNetBuild("./source/AsepriteDotNet/AsepriteDotNet.csproj", settings);
- }
-}
diff --git a/build/Tasks/GitHubTasks/DeployNugetsTask.cs b/build/Tasks/GitHubTasks/DeployNugetsTask.cs
deleted file mode 100644
index e3c9377..0000000
--- a/build/Tasks/GitHubTasks/DeployNugetsTask.cs
+++ /dev/null
@@ -1,29 +0,0 @@
-using Cake.Common;
-using Cake.Common.Build;
-using Cake.Common.IO;
-using Cake.Common.Tools.DotNet;
-using Cake.Common.Tools.DotNet.NuGet.Push;
-using Cake.Core.IO;
-using Cake.Frosting;
-
-namespace AsepriteDotNet.Build;
-
-[TaskName("DeployNuGets")]
-[IsDependentOn(typeof(DownloadArtifactsTask))]
-public sealed class DeployNugetsTask : FrostingTask
-{
- public override bool ShouldRun(BuildContext context) => context.BuildSystem().IsRunningOnGitHubActions;
-
- public override void Run(BuildContext context)
- {
- ArgumentNullException.ThrowIfNull(context);
-
- DotNetNuGetPushSettings settings = new DotNetNuGetPushSettings()
- {
- ApiKey = context.EnvironmentVariable("NUGET_API_KEY"),
- Source = "https://api.nuget.org/v3/index.json"
- };
-
- context.DotNetNuGetPush("nugets/*.nupkg", settings);
- }
-}
diff --git a/build/Tasks/GitHubTasks/DeployNugetsToGithubTask.cs b/build/Tasks/GitHubTasks/DeployNugetsToGithubTask.cs
deleted file mode 100644
index f86fb1b..0000000
--- a/build/Tasks/GitHubTasks/DeployNugetsToGithubTask.cs
+++ /dev/null
@@ -1,30 +0,0 @@
-using Cake.Common;
-using Cake.Common.Build;
-using Cake.Common.IO;
-using Cake.Common.Tools.DotNet;
-using Cake.Common.Tools.DotNet.NuGet.Push;
-using Cake.Core.IO;
-using Cake.Frosting;
-
-namespace AsepriteDotNet.Build;
-
-[TaskName("DeployNugetsToGithub")]
-[IsDependentOn(typeof(DownloadArtifactsTask))]
-public sealed class DeployNugetsToGitHubTask : FrostingTask
-{
- public override bool ShouldRun(BuildContext context) => context.BuildSystem().IsRunningOnGitHubActions;
-
- public override void Run(BuildContext context)
- {
- ArgumentNullException.ThrowIfNull(context);
-
- string repositoryOwner = context.GitHubActions().Environment.Workflow.RepositoryOwner;
- DotNetNuGetPushSettings settings = new DotNetNuGetPushSettings()
- {
- ApiKey = context.EnvironmentVariable("GITHUB_TOKEN"),
- Source = $"https://nuget.pkg.github.com/{repositoryOwner}/index.json"
- };
-
- context.DotNetNuGetPush("nugets/*.nupkg", settings);
- }
-}
diff --git a/build/Tasks/GitHubTasks/DownloadArtifactsTask.cs b/build/Tasks/GitHubTasks/DownloadArtifactsTask.cs
deleted file mode 100644
index 4fc6dc8..0000000
--- a/build/Tasks/GitHubTasks/DownloadArtifactsTask.cs
+++ /dev/null
@@ -1,23 +0,0 @@
-using Cake.Common.Build;
-using Cake.Common.IO;
-using Cake.Core.IO;
-using Cake.Frosting;
-
-namespace AsepriteDotNet.Build;
-
-[TaskName("DownloadArtifacts")]
-public sealed class DownloadArtifactsTask : AsyncFrostingTask
-{
- public override bool ShouldRun(BuildContext context) => context.BuildSystem().IsRunningOnGitHubActions;
-
- public override async Task RunAsync(BuildContext context)
- {
- ArgumentNullException.ThrowIfNull(context);
- string path = "nugets";
- context.CreateDirectory(path);
- await context.GitHubActions()
- .Commands
- .DownloadArtifact(path, path)
- .ConfigureAwait(true);
- }
-}
diff --git a/build/Tasks/GitHubTasks/UploadArtifactsTask.cs b/build/Tasks/GitHubTasks/UploadArtifactsTask.cs
deleted file mode 100644
index 55531dc..0000000
--- a/build/Tasks/GitHubTasks/UploadArtifactsTask.cs
+++ /dev/null
@@ -1,22 +0,0 @@
-using Cake.Common.Build;
-using Cake.Core.IO;
-using Cake.Frosting;
-
-namespace AsepriteDotNet.Build;
-
-[TaskName("UploadArtifacts")]
-public sealed class UploadArtifactsTask : AsyncFrostingTask
-{
- public override bool ShouldRun(BuildContext context) => context.BuildSystem().IsRunningOnGitHubActions;
-
- public override async Task RunAsync(BuildContext context)
- {
- ArgumentNullException.ThrowIfNull(context);
- DirectoryPath path = context.NuGetsDirectory.FullPath;
- string artifactName = "nugets";
- await context.GitHubActions()
- .Commands
- .UploadArtifact(path, artifactName)
- .ConfigureAwait(true);
- }
-}
diff --git a/build/Tasks/PackTask.cs b/build/Tasks/PackTask.cs
deleted file mode 100644
index 4dcb248..0000000
--- a/build/Tasks/PackTask.cs
+++ /dev/null
@@ -1,23 +0,0 @@
-using Cake.Common.Tools.DotNet;
-using Cake.Common.Tools.DotNet.Pack;
-using Cake.Frosting;
-
-namespace AsepriteDotNet.Build;
-
-[TaskName("Pack")]
-public sealed class PackTask : FrostingTask
-{
- public override void Run(BuildContext context)
- {
- ArgumentNullException.ThrowIfNull(context);
- DotNetPackSettings settings = new DotNetPackSettings()
- {
- MSBuildSettings = context.DotNetMSBuildSettings,
- Verbosity = DotNetVerbosity.Minimal,
- OutputDirectory = context.NuGetsDirectory,
- Configuration = context.BuildConfiguration
- };
-
- context.DotNetPack("./source/AsepriteDotNet/AsepriteDotNet.csproj", settings);
- }
-}
diff --git a/build/Tasks/Tasks.cs b/build/Tasks/Tasks.cs
deleted file mode 100644
index 04223ea..0000000
--- a/build/Tasks/Tasks.cs
+++ /dev/null
@@ -1,9 +0,0 @@
-using Cake.Frosting;
-
-namespace AsepriteDotNet.Build;
-
-[TaskName("Default")]
-[IsDependentOn(typeof(BuildTask))]
-[IsDependentOn(typeof(TestTask))]
-[IsDependentOn(typeof(PackTask))]
-public sealed class DefaultTask : FrostingTask { }
diff --git a/build/Tasks/TestTask.cs b/build/Tasks/TestTask.cs
deleted file mode 100644
index ab6e1ac..0000000
--- a/build/Tasks/TestTask.cs
+++ /dev/null
@@ -1,24 +0,0 @@
-using Cake.Common.Tools.DotNet;
-using Cake.Common.Tools.DotNet.Build;
-using Cake.Common.Tools.DotNet.Test;
-using Cake.Frosting;
-
-namespace AsepriteDotNet.Build;
-
-[TaskName("Test")]
-public sealed class TestTask : FrostingTask
-{
- public override void Run(BuildContext context)
- {
- ArgumentNullException.ThrowIfNull(context);
-
- DotNetTestSettings settings = new DotNetTestSettings()
- {
- MSBuildSettings = context.DotNetMSBuildSettings,
- Verbosity = DotNetVerbosity.Minimal,
- Configuration = context.BuildConfiguration
- };
-
- context.DotNetTest("./tests/AsepriteDotNet.Tests/AsepriteDotNet.Tests.csproj", settings);
- }
-}
diff --git a/source/Directory.Build.props b/source/Directory.Build.props
index ae71fe0..b82a5e8 100644
--- a/source/Directory.Build.props
+++ b/source/Directory.Build.props
@@ -1,19 +1,11 @@
-
-
- source
-
+
-
-
true
-
-
-
-
+ $(SolutionDirectory).artifacts/src
Copyright © 2024 Christopher Whitley
Christopher Whitley and contributors
Aristurtle
@@ -30,6 +22,4 @@
true
-
-
diff --git a/tests/Directory.Build.props b/tests/Directory.Build.props
index 352b31f..22f4451 100644
--- a/tests/Directory.Build.props
+++ b/tests/Directory.Build.props
@@ -1,19 +1,9 @@
-
-
- test
-
-
-
-
+ $(SolutionDirectory).artifacts/tests
false
-
-
-
-
true
false