Skip to content

Commit ce034af

Browse files
committed
#91 fix for StorageOptions.CreateContainerIfNotExists
1 parent 2e0d123 commit ce034af

File tree

8 files changed

+40
-30
lines changed

8 files changed

+40
-30
lines changed

Directory.Build.props

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717
<RepositoryUrl>https://github.com/managedcode/Storage</RepositoryUrl>
1818
<PackageProjectUrl>https://github.com/managedcode/Storage</PackageProjectUrl>
1919
<Product>Managed Code - Storage</Product>
20-
<Version>2.1.15-alpha</Version>
21-
<PackageVersion>2.1.15-alpha</PackageVersion>
20+
<Version>2.1.16</Version>
21+
<PackageVersion>2.1.16</PackageVersion>
2222

2323
</PropertyGroup>
2424
<PropertyGroup Condition="'$(GITHUB_ACTIONS)' == 'true'">

ManagedCode.Storage.Aws/AWSStorage.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,11 @@ protected override async Task<Result> CreateContainerInternalAsync(CancellationT
9999
{
100100
try
101101
{
102-
await StorageClient.EnsureBucketExistsAsync(StorageOptions.Bucket);
102+
if (StorageOptions.CreateContainerIfNotExists)
103+
{
104+
await StorageClient.EnsureBucketExistsAsync(StorageOptions.Bucket);
105+
}
106+
103107
return Result.Succeed();
104108
}
105109
catch (Exception ex)

ManagedCode.Storage.Aws/ManagedCode.Storage.Aws.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323

2424
<ItemGroup>
2525
<PackageReference Include="ManagedCode.Communication" Version="2.0.26" />
26-
<PackageReference Include="AWSSDK.S3" Version="3.7.205.14" />
26+
<PackageReference Include="AWSSDK.S3" Version="3.7.308.7" />
2727
<PackageReference Include="Humanizer.Core" Version="2.14.1" />
2828
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="7.0.1" />
2929
<PackageReference Include="System.Linq.Async" Version="6.0.1" />

ManagedCode.Storage.Azure.DataLake/ManagedCode.Storage.Azure.DataLake.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@
2222
</ItemGroup>
2323

2424
<ItemGroup>
25-
<PackageReference Include="Azure.Storage.Files.DataLake" Version="12.16.0" />
25+
<PackageReference Include="Azure.Storage.Files.DataLake" Version="12.18.0" />
2626
<PackageReference Include="ManagedCode.Communication" Version="2.0.26" />
27-
<PackageReference Include="Azure.Storage.Blobs" Version="12.18.0" />
27+
<PackageReference Include="Azure.Storage.Blobs" Version="12.20.0" />
2828
<PackageReference Include="Humanizer.Core" Version="2.14.1" />
2929
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="7.0.1" />
3030
<PackageReference Include="System.Linq.Async" Version="6.0.1" />

ManagedCode.Storage.Azure/AzureStorage.cs

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -138,16 +138,18 @@ protected override async Task<Result> CreateContainerInternalAsync(CancellationT
138138
{
139139
try
140140
{
141-
_ = await StorageClient.CreateIfNotExistsAsync(PublicAccessType.BlobContainer,
142-
cancellationToken: cancellationToken);
143-
var policy = await StorageClient.GetAccessPolicyAsync(cancellationToken: cancellationToken);
144-
if (policy.Value.BlobPublicAccess != StorageOptions.PublicAccessType)
141+
if (StorageOptions.CreateContainerIfNotExists)
145142
{
146-
await StorageClient.SetAccessPolicyAsync(StorageOptions.PublicAccessType,
147-
cancellationToken: cancellationToken);
143+
_ = await StorageClient.CreateIfNotExistsAsync(cancellationToken: cancellationToken);
144+
var policy = await StorageClient.GetAccessPolicyAsync(cancellationToken: cancellationToken);
145+
if (policy.Value.BlobPublicAccess != StorageOptions.PublicAccessType)
146+
{
147+
await StorageClient.SetAccessPolicyAsync(StorageOptions.PublicAccessType,
148+
cancellationToken: cancellationToken);
149+
}
148150
}
149-
150-
IsContainerCreated = true;
151+
152+
IsContainerCreated = await StorageClient.ExistsAsync(cancellationToken);;
151153

152154
return Result.Succeed();
153155
}

ManagedCode.Storage.Azure/ManagedCode.Storage.Azure.csproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,10 @@
2222
</ItemGroup>
2323

2424
<ItemGroup>
25-
<PackageReference Include="Azure.Identity" Version="1.10.3" />
26-
<PackageReference Include="Azure.Storage.Files.DataLake" Version="12.16.0" />
25+
<PackageReference Include="Azure.Identity" Version="1.11.3" />
26+
<PackageReference Include="Azure.Storage.Files.DataLake" Version="12.18.0" />
2727
<PackageReference Include="ManagedCode.Communication" Version="2.0.26" />
28-
<PackageReference Include="Azure.Storage.Blobs" Version="12.18.0" />
28+
<PackageReference Include="Azure.Storage.Blobs" Version="12.20.0" />
2929
<PackageReference Include="Humanizer.Core" Version="2.14.1" />
3030
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="7.0.1" />
3131
<PackageReference Include="System.Linq.Async" Version="6.0.1" />

ManagedCode.Storage.Google/GCPStorage.cs

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -85,17 +85,21 @@ protected override async Task<Result> CreateContainerInternalAsync(CancellationT
8585
return Result.Succeed();
8686
}
8787

88-
if (StorageOptions.OriginalOptions != null)
88+
if (StorageOptions.CreateContainerIfNotExists)
8989
{
90-
await StorageClient.CreateBucketAsync(StorageOptions.BucketOptions.ProjectId, StorageOptions.BucketOptions.Bucket,
91-
StorageOptions.OriginalOptions,
92-
cancellationToken);
93-
}
94-
else
95-
{
96-
await StorageClient.CreateBucketAsync(StorageOptions.BucketOptions.ProjectId, StorageOptions.BucketOptions.Bucket,
97-
cancellationToken: cancellationToken);
90+
if (StorageOptions.OriginalOptions != null)
91+
{
92+
await StorageClient.CreateBucketAsync(StorageOptions.BucketOptions.ProjectId, StorageOptions.BucketOptions.Bucket,
93+
StorageOptions.OriginalOptions,
94+
cancellationToken);
95+
}
96+
else
97+
{
98+
await StorageClient.CreateBucketAsync(StorageOptions.BucketOptions.ProjectId, StorageOptions.BucketOptions.Bucket,
99+
cancellationToken: cancellationToken);
100+
}
98101
}
102+
99103

100104
return Result.Succeed();
101105
}

ManagedCode.Storage.Google/ManagedCode.Storage.Google.csproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,10 @@
2222
</ItemGroup>
2323

2424
<ItemGroup>
25-
<PackageReference Include="Google.Api.Gax" Version="4.4.0" />
26-
<PackageReference Include="Google.Api.Gax.Rest" Version="4.4.0" />
27-
<PackageReference Include="Google.Apis.Storage.v1" Version="1.62.1.3206" />
28-
<PackageReference Include="Google.Cloud.Storage.V1" Version="4.6.0" />
25+
<PackageReference Include="Google.Api.Gax" Version="4.8.0" />
26+
<PackageReference Include="Google.Api.Gax.Rest" Version="4.8.0" />
27+
<PackageReference Include="Google.Apis.Storage.v1" Version="1.68.0.3431" />
28+
<PackageReference Include="Google.Cloud.Storage.V1" Version="4.10.0" />
2929
<PackageReference Include="ManagedCode.Communication" Version="2.0.26" />
3030
<PackageReference Include="Humanizer.Core" Version="2.14.1" />
3131
<PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="7.0.1" />

0 commit comments

Comments
 (0)