Skip to content

Commit 7e515fd

Browse files
authored
+semver:minor + Wrapper classes for interacting with the aws CLI (#348)
* ReleaseNotes.md * Expose Aws * Format file * aws classes * Tidy usings * RunOnLinuxOnly * Fix missing references * Formatting Markdown * Update Amazon.cs * Ignore NuGet and pack * RunOnLinuxOnly --------- Co-authored-by: Tom Longhurst <thomhurst@users.noreply.github.com>
1 parent 2e1223f commit 7e515fd

File tree

15,298 files changed

+383947
-2
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

15,298 files changed

+383947
-2
lines changed
Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,16 @@
1+
using ModularPipelines.AmazonWebServices.Services;
2+
13
namespace ModularPipelines.AmazonWebServices;
24

35
internal class Amazon : IAmazon
46
{
5-
public Amazon(IAmazonProvisioner provisioner)
7+
public Amazon(IAmazonProvisioner provisioner, Aws awsCli)
68
{
79
Provisioner = provisioner;
10+
AwsCli = awsCli;
811
}
912

1013
public IAmazonProvisioner Provisioner { get; }
11-
}
14+
15+
public Aws AwsCli { get; }
16+
}

src/ModularPipelines.AmazonWebServices/Extensions/AmazonExtensions.cs

Lines changed: 428 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
using System.Diagnostics.CodeAnalysis;
2+
using ModularPipelines.Attributes;
3+
4+
namespace ModularPipelines.AmazonWebServices.Options;
5+
6+
[ExcludeFromCodeCoverage]
7+
[CommandPrecedingArguments("accessanalyzer", "apply-archive-rule")]
8+
public record AwsAccessanalyzerApplyArchiveRuleOptions(
9+
[property: CommandSwitch("--analyzer-arn")] string AnalyzerArn,
10+
[property: CommandSwitch("--rule-name")] string RuleName
11+
) : AwsOptions
12+
{
13+
[CommandSwitch("--client-token")]
14+
public string? ClientToken { get; set; }
15+
16+
[CommandSwitch("--generate-cli-skeleton")]
17+
public string? GenerateCliSkeleton { get; set; }
18+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
using System.Diagnostics.CodeAnalysis;
2+
using ModularPipelines.Attributes;
3+
4+
namespace ModularPipelines.AmazonWebServices.Options;
5+
6+
[ExcludeFromCodeCoverage]
7+
[CommandPrecedingArguments("accessanalyzer", "cancel-policy-generation")]
8+
public record AwsAccessanalyzerCancelPolicyGenerationOptions(
9+
[property: CommandSwitch("--job-id")] string JobId
10+
) : AwsOptions
11+
{
12+
[CommandSwitch("--generate-cli-skeleton")]
13+
public string? GenerateCliSkeleton { get; set; }
14+
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
using System.Diagnostics.CodeAnalysis;
2+
using ModularPipelines.Attributes;
3+
4+
namespace ModularPipelines.AmazonWebServices.Options;
5+
6+
[ExcludeFromCodeCoverage]
7+
[CommandPrecedingArguments("accessanalyzer", "check-access-not-granted")]
8+
public record AwsAccessanalyzerCheckAccessNotGrantedOptions(
9+
[property: CommandSwitch("--policy-document")] string PolicyDocument,
10+
[property: CommandSwitch("--access")] string[] Access,
11+
[property: CommandSwitch("--policy-type")] string PolicyType
12+
) : AwsOptions
13+
{
14+
[CommandSwitch("--generate-cli-skeleton")]
15+
public string? GenerateCliSkeleton { get; set; }
16+
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
using System.Diagnostics.CodeAnalysis;
2+
using ModularPipelines.Attributes;
3+
4+
namespace ModularPipelines.AmazonWebServices.Options;
5+
6+
[ExcludeFromCodeCoverage]
7+
[CommandPrecedingArguments("accessanalyzer", "check-no-new-access")]
8+
public record AwsAccessanalyzerCheckNoNewAccessOptions(
9+
[property: CommandSwitch("--new-policy-document")] string NewPolicyDocument,
10+
[property: CommandSwitch("--existing-policy-document")] string ExistingPolicyDocument,
11+
[property: CommandSwitch("--policy-type")] string PolicyType
12+
) : AwsOptions
13+
{
14+
[CommandSwitch("--generate-cli-skeleton")]
15+
public string? GenerateCliSkeleton { get; set; }
16+
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
using System.Diagnostics.CodeAnalysis;
2+
using ModularPipelines.Attributes;
3+
using ModularPipelines.Models;
4+
5+
namespace ModularPipelines.AmazonWebServices.Options;
6+
7+
[ExcludeFromCodeCoverage]
8+
[CommandPrecedingArguments("accessanalyzer", "create-access-preview")]
9+
public record AwsAccessanalyzerCreateAccessPreviewOptions(
10+
[property: CommandSwitch("--analyzer-arn")] string AnalyzerArn,
11+
[property: CommandSwitch("--configurations")] IEnumerable<KeyValue> Configurations
12+
) : AwsOptions
13+
{
14+
[CommandSwitch("--client-token")]
15+
public string? ClientToken { get; set; }
16+
17+
[CommandSwitch("--generate-cli-skeleton")]
18+
public string? GenerateCliSkeleton { get; set; }
19+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
using System.Diagnostics.CodeAnalysis;
2+
using ModularPipelines.Attributes;
3+
using ModularPipelines.Models;
4+
5+
namespace ModularPipelines.AmazonWebServices.Options;
6+
7+
[ExcludeFromCodeCoverage]
8+
[CommandPrecedingArguments("accessanalyzer", "create-analyzer")]
9+
public record AwsAccessanalyzerCreateAnalyzerOptions(
10+
[property: CommandSwitch("--analyzer-name")] string AnalyzerName,
11+
[property: CommandSwitch("--type")] string Type
12+
) : AwsOptions
13+
{
14+
[CommandSwitch("--archive-rules")]
15+
public string[]? ArchiveRules { get; set; }
16+
17+
[CommandSwitch("--tags")]
18+
public IEnumerable<KeyValue>? Tags { get; set; }
19+
20+
[CommandSwitch("--client-token")]
21+
public string? ClientToken { get; set; }
22+
23+
[CommandSwitch("--configuration")]
24+
public string? Configuration { get; set; }
25+
26+
[CommandSwitch("--generate-cli-skeleton")]
27+
public string? GenerateCliSkeleton { get; set; }
28+
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
using System.Diagnostics.CodeAnalysis;
2+
using ModularPipelines.Attributes;
3+
using ModularPipelines.Models;
4+
5+
namespace ModularPipelines.AmazonWebServices.Options;
6+
7+
[ExcludeFromCodeCoverage]
8+
[CommandPrecedingArguments("accessanalyzer", "create-archive-rule")]
9+
public record AwsAccessanalyzerCreateArchiveRuleOptions(
10+
[property: CommandSwitch("--analyzer-name")] string AnalyzerName,
11+
[property: CommandSwitch("--rule-name")] string RuleName,
12+
[property: CommandSwitch("--filter")] IEnumerable<KeyValue> Filter
13+
) : AwsOptions
14+
{
15+
[CommandSwitch("--client-token")]
16+
public string? ClientToken { get; set; }
17+
18+
[CommandSwitch("--generate-cli-skeleton")]
19+
public string? GenerateCliSkeleton { get; set; }
20+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
using System.Diagnostics.CodeAnalysis;
2+
using ModularPipelines.Attributes;
3+
4+
namespace ModularPipelines.AmazonWebServices.Options;
5+
6+
[ExcludeFromCodeCoverage]
7+
[CommandPrecedingArguments("accessanalyzer", "delete-analyzer")]
8+
public record AwsAccessanalyzerDeleteAnalyzerOptions(
9+
[property: CommandSwitch("--analyzer-name")] string AnalyzerName
10+
) : AwsOptions
11+
{
12+
[CommandSwitch("--client-token")]
13+
public string? ClientToken { get; set; }
14+
15+
[CommandSwitch("--generate-cli-skeleton")]
16+
public string? GenerateCliSkeleton { get; set; }
17+
}

0 commit comments

Comments
 (0)