Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 21 additions & 3 deletions .devops/workflows/Test_Devops_Build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,7 @@ jobs:
targetPath: "$(Build.BinariesDirectory)/DecSm.Atom.Tool.Tests"


- job: PushToNuget
- job: PushToNugetDevops
dependsOn: [ TestProjects, PackProjects, PackTool, SetupBuildInfo ]
pool:
vmImage: ubuntu-latest
Expand Down Expand Up @@ -307,8 +307,26 @@ jobs:
artifact: DecSm.Atom.Tool-macos-latest
path: "$(Build.ArtifactStagingDirectory)/DecSm.Atom.Tool"

- script: dotnet run --project _atom/_atom.csproj PushToNuget --skip --headless
name: PushToNuget
- task: DownloadPipelineArtifact@2
displayName: DecSm.Atom.Tool
inputs:
artifact: DecSm.Atom.Tool-windows-latest
path: "$(Build.ArtifactStagingDirectory)/DecSm.Atom.Tool"

- task: DownloadPipelineArtifact@2
displayName: DecSm.Atom.Tool
inputs:
artifact: DecSm.Atom.Tool-ubuntu-latest
path: "$(Build.ArtifactStagingDirectory)/DecSm.Atom.Tool"

- task: DownloadPipelineArtifact@2
displayName: DecSm.Atom.Tool
inputs:
artifact: DecSm.Atom.Tool-macos-latest
path: "$(Build.ArtifactStagingDirectory)/DecSm.Atom.Tool"

- script: dotnet run --project _atom/_atom.csproj PushToNugetDevops --skip --headless
name: PushToNugetDevops
env:
build-id: $(build-id)
azure-vault-app-secret: $(AZURE_VAULT_APP_SECRET)
Expand Down
36 changes: 36 additions & 0 deletions .github/workflows/Dependabot - Auto Approve.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: Dependabot - Auto Approve

permissions: { }
on:
workflow_dispatch:
pull_request:
branches:
- 'main'

jobs:

ApproveDependabotPr:
runs-on: ubuntu-latest
if: github.actor == 'dependabot[bot]'
permissions:
id-token: write
pull-requests: write
steps:

- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-dotnet@v4
with:
dotnet-version: '10.0.x'

- name: ApproveDependabotPr
id: ApproveDependabotPr
run: dotnet run --project _atom/_atom.csproj ApproveDependabotPr --skip --headless
env:
azure-vault-app-secret: ${{ secrets.AZURE_VAULT_APP_SECRET }}
azure-vault-address: ${{ vars.AZURE_VAULT_ADDRESS }}
azure-vault-tenant-id: ${{ vars.AZURE_VAULT_TENANT_ID }}
azure-vault-app-id: ${{ vars.AZURE_VAULT_APP_ID }}
github-token: ${{ secrets.GITHUB_TOKEN }}
3 changes: 2 additions & 1 deletion DecSm.Atom.Module.AzureKeyVault/AzureKeySecretsProvider.cs
Original file line number Diff line number Diff line change
Expand Up @@ -191,7 +191,8 @@ private TokenCredential GetCredential(IAzureKeyVault definition)
{
string portString => int.TryParse(portString, out var parsedPort)
? parsedPort
: throw new InvalidOperationException($"Invalid port value for AzureVaultAuthPort: '{portString}'. Please provide a valid integer."),
: throw new InvalidOperationException(
$"Invalid port value for AzureVaultAuthPort: '{portString}'. Please provide a valid integer."),
int portInt => portInt,
_ => 0,
};
Expand Down
1 change: 0 additions & 1 deletion DecSm.Atom.Module.AzureStorage/IAzureArtifactStorage.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
/// enabling the build to both upload and download artifacts from Azure Blob Storage.
/// </remarks>
[ConfigureHostBuilder]

public partial interface IAzureArtifactStorage : IStoreArtifact, IRetrieveArtifact
{
/// <summary>
Expand Down
1 change: 0 additions & 1 deletion DecSm.Atom.Module.AzureStorage/_usings.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
global using Azure.Storage.Blobs;
global using Azure.Storage.Blobs.Models;
global using DecSm.Atom.Artifacts;
global using DecSm.Atom.Build.Definition;
global using DecSm.Atom.BuildInfo;
global using DecSm.Atom.Hosting;
global using DecSm.Atom.Params;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ public partial class DuplicateDependencyBuild : MinimalBuildDefinition, IDevopsW
];
}


[ConfigureHostBuilder]
public partial interface IDuplicateDependencyTarget : IStoreArtifact, IRetrieveArtifact
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,6 @@ ILogger<GitVersionBuildVersionProvider> logger
/// <exception cref="InvalidOperationException">
/// Thrown if the version information cannot be determined from GitVersion's output.
/// </exception>
[field: AllowNull]
[field: MaybeNull]
public SemVer Version
{
get
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ public partial class DuplicateDependencyBuild : MinimalBuildDefinition, IGithubW
];
}


[ConfigureHostBuilder]
public partial interface IDuplicateDependencyTarget : IStoreArtifact, IRetrieveArtifact
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
namespace DecSm.Atom.Module.GithubWorkflows.Tests.Workflows;

[BuildDefinition]
public partial class SnapshotImageBuild : MinimalBuildDefinition, IGithubWorkflows, ICheckoutOptionTarget
public partial class SnapshotImageBuild : MinimalBuildDefinition, IGithubWorkflows, ISnapshotImageTarget
{
public override IReadOnlyList<WorkflowDefinition> Workflows =>
[
Expand All @@ -10,7 +10,7 @@ public partial class SnapshotImageBuild : MinimalBuildDefinition, IGithubWorkflo
Triggers = [ManualTrigger.Empty],
Targets =
[
WorkflowTargets.CheckoutOptionTarget.WithOptions(
WorkflowTargets.SnapshotImageTarget.WithOptions(
GithubSnapshotImageOption.Create(new("snapshot-image-test", "1.*.*"))),
],
WorkflowTypes = [new GithubWorkflowType()],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ on:

jobs:

CheckoutOptionTarget:
SnapshotImageTarget:
runs-on: ubuntu-latest
snapshot:
image-name: snapshot-image-test
Expand All @@ -17,6 +17,6 @@ jobs:
with:
fetch-depth: 0

- name: CheckoutOptionTarget
id: CheckoutOptionTarget
run: dotnet run --project AtomTest/AtomTest.csproj CheckoutOptionTarget --skip --headless
- name: SnapshotImageTarget
id: SnapshotImageTarget
run: dotnet run --project AtomTest/AtomTest.csproj SnapshotImageTarget --skip --headless
Original file line number Diff line number Diff line change
Expand Up @@ -502,7 +502,9 @@ private void WriteStep(WorkflowModel workflow, WorkflowStepModel step, WorkflowJ
?.InformationalVersion ??
"",
out var semVer))
toolVersion = semVer;
toolVersion =
SemVer.Parse(
$"{semVer.Prefix}{(semVer.IsPreRelease ? $"-{semVer.PreRelease}" : string.Empty)}");
else
throw new InvalidOperationException(
"Failed to parse DecSm.Atom.Host assembly version as SemVer for syncing atom tool version");
Expand All @@ -518,12 +520,9 @@ private void WriteStep(WorkflowModel workflow, WorkflowStepModel step, WorkflowJ
using (WriteSection("run: |"))
{
foreach (var feedToAdd in feedsToAdd)
if (syncAtomToolVersionToLibraryVersion)
WriteLine(
$"dotnet tool exec decsm.atom.tool@{toolVersion} -y -- nuget-add --name \"{feedToAdd.FeedName}\" --url \"{feedToAdd.FeedUrl}\"");
else
WriteLine(
$"dotnet tool exec decsm.atom.tool -y -- nuget-add --name \"{feedToAdd.FeedName}\" --url \"{feedToAdd.FeedUrl}\"");
WriteLine(syncAtomToolVersionToLibraryVersion
? $"dotnet tool exec decsm.atom.tool@{toolVersion} -y -- nuget-add --name \"{feedToAdd.FeedName}\" --url \"{feedToAdd.FeedUrl}\""
: $"dotnet tool exec decsm.atom.tool -y -- nuget-add --name \"{feedToAdd.FeedName}\" --url \"{feedToAdd.FeedUrl}\"");
}

WriteLine("shell: bash");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ public sealed record GithubTokenPermissionsOption : IWorkflowOption
.Select(x => (x.Item1, x.Item2!))
.ToList();

private string? GetTokenPermissionString(GithubTokenPermission? permission) =>
private static string? GetTokenPermissionString(GithubTokenPermission? permission) =>
permission switch
{
GithubTokenPermission.None => "none",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ namespace DecSm.Atom.Module.GithubWorkflows.Generation.Options;
[PublicAPI]
public interface IGithubCustomStepOption : IWorkflowOption
{
bool IWorkflowOption.AllowMultiple => true;

GithubCustomStepOrder Order { get; }

int Priority { get; }

bool IWorkflowOption.AllowMultiple => true;

void WriteStep(GithubStepWriter writer);
}
3 changes: 0 additions & 3 deletions DecSm.Atom.SourceGenerators/Symbols.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,6 @@ public static class Symbols
{
public const string BuildDefinitionAttribute = "DecSm.Atom.Build.Definition.BuildDefinitionAttribute";

public const string GeneratedBuildDefinitionAttribute =
"DecSm.Atom.Build.Definition.GeneratedBuildDefinitionAttribute";

public const string GenerateEntryPointAttribute = "DecSm.Atom.Hosting.GenerateEntryPointAttribute";

public const string GenerateInterfaceMembersAttribute =
Expand Down
Loading
Loading