Plinth.Storage.Azure
1.7.0
Prefix Reserved
dotnet add package Plinth.Storage.Azure --version 1.7.0
NuGet\Install-Package Plinth.Storage.Azure -Version 1.7.0
<PackageReference Include="Plinth.Storage.Azure" Version="1.7.0" />
paket add Plinth.Storage.Azure --version 1.7.0
#r "nuget: Plinth.Storage.Azure, 1.7.0"
// Install Plinth.Storage.Azure as a Cake Addin #addin nuget:?package=Plinth.Storage.Azure&version=1.7.0 // Install Plinth.Storage.Azure as a Cake Tool #tool nuget:?package=Plinth.Storage.Azure&version=1.7.0
README
Plinth.Storage.Azure
Storage Provider for Plinth.Storage to write blob data to Azure Blob Storage
Enables storing the blob data used by Plinth.Storage in Azure Blob Storage
This package adds these extension methods to Plinth.Storage.StorageFactory
to utilize Azure Blob Storage
storageFactory.AddAzureBlobProvider(new AzureBlobSettings()
{
ConnectionString = "{from-azure-portal}",
ContainerName = "MyBlobs"
});
storageFactory.SetDefaultWriteProviderAsAzureBlob();
Index Strategies
By default, this will write blobs to the root of the container. There are 2 other built in options for futher segmenting the blobs. To use these, set DefaultIndexStrategy
in AzureBlobSettings
DefaultIndexStrategy.ByDate
This will place the blobs in a sub folder with the current date as /YY/MM/DD/{blobId}
DefaultIndexStrategy.ByDateTime
This will place the blobs in a sub folder with the current date and current hour as /YY/MM/DD/HH/{blobId}
Alternatively, a custom indexing strategy can be provided. For example, the below will place the blobs under a folder named the first character of the blob's guid.
new AzureBlobSettings()
{
...
CustomIndexStrategy = blob => $"{blob.Guid!.ToString()![0]}"
}
Backup Container
By default, blobs will be written to the bucket specified. This library supports writing a backup to other containers.
To enable, use storageFactory.AddBackupAzureBlobProvider(settings)
with a complete AzureBlobSettings
object. Blobs will be written to the container specified (using the primary index).
File Extensions
By default, the blobs will a file extension in blob storage which come from the blob name field. This allows for browsers to more easily download those files directly.
To disable this, set DisableBlobExtensions
to true
in AzureBlobSettings
and the blobs will not have a file extension.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. |
-
net6.0
- Azure.Storage.Blobs (>= 12.23.0)
- Microsoft.SourceLink.Bitbucket.Git (>= 1.1.1)
- Plinth.Storage (>= 1.7.0)
- System.Text.Json (>= 9.0.0)
-
net8.0
- Azure.Storage.Blobs (>= 12.23.0)
- Microsoft.SourceLink.Bitbucket.Git (>= 1.1.1)
- Plinth.Storage (>= 1.7.0)
- System.Text.Json (>= 9.0.0)
-
net9.0
- Azure.Storage.Blobs (>= 12.23.0)
- Microsoft.SourceLink.Bitbucket.Git (>= 1.1.1)
- Plinth.Storage (>= 1.7.0)
- System.Text.Json (>= 9.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.7.0 | 72 | 11/12/2024 |
1.6.6 | 77 | 11/8/2024 |
1.6.5 | 110 | 8/31/2024 |
1.6.4 | 43 | 8/2/2024 |
1.6.3 | 111 | 5/15/2024 |
1.6.2 | 123 | 2/16/2024 |
1.6.1 | 1,506 | 1/5/2024 |
1.6.0 | 167 | 11/30/2023 |
1.5.10-b186.aca976b4 | 68 | 11/30/2023 |
1.5.9 | 136 | 11/29/2023 |
1.5.9-b174.64153841 | 81 | 11/23/2023 |
1.5.9-b172.dfc6e7bd | 66 | 11/17/2023 |
1.5.9-b171.4e2b92e2 | 77 | 11/4/2023 |
1.5.8 | 173 | 10/23/2023 |
1.5.7 | 464 | 7/31/2023 |
1.5.6 | 1,325 | 7/13/2023 |
1.5.5 | 194 | 6/29/2023 |
1.5.4 | 758 | 3/7/2023 |
1.5.3 | 248 | 3/3/2023 |
1.5.2 | 327 | 1/11/2023 |
1.5.2-b92.7c961f5f | 121 | 1/11/2023 |
1.5.0 | 352 | 11/9/2022 |
1.5.0-b88.7a7c20cd | 107 | 11/9/2022 |
1.4.7 | 572 | 10/20/2022 |
1.4.6 | 572 | 10/17/2022 |
1.4.5 | 424 | 10/1/2022 |
1.4.4 | 424 | 8/16/2022 |
1.4.3 | 426 | 8/2/2022 |
1.4.2 | 458 | 7/19/2022 |
1.4.2-b80.7fdbfd04 | 131 | 7/19/2022 |
1.4.2-b74.acaf86f5 | 116 | 6/15/2022 |
1.4.1 | 448 | 6/13/2022 |
1.4.0 | 439 | 6/6/2022 |
1.3.8 | 831 | 4/12/2022 |
1.3.7 | 454 | 3/21/2022 |
1.3.6 | 456 | 3/17/2022 |
1.3.6-b67.ca5053f3 | 131 | 3/16/2022 |
1.3.6-b66.4a9683e6 | 128 | 3/16/2022 |
1.3.5 | 472 | 2/23/2022 |
1.3.4 | 471 | 1/20/2022 |
1.3.3 | 326 | 12/29/2021 |
1.3.2 | 483 | 12/11/2021 |
1.3.1 | 351 | 11/12/2021 |
1.3.0 | 350 | 11/8/2021 |
1.2.3 | 1,521 | 9/22/2021 |
1.2.2 | 365 | 8/20/2021 |
1.2.1 | 368 | 8/5/2021 |
1.2.0 | 422 | 8/1/2021 |
1.2.0-b37.a54030b9 | 162 | 6/24/2021 |
1.1.6 | 460 | 3/22/2021 |
1.1.5 | 387 | 3/9/2021 |
1.1.4 | 382 | 2/27/2021 |
1.1.3 | 392 | 2/17/2021 |
1.1.2 | 379 | 2/12/2021 |
1.1.1 | 729 | 2/1/2021 |
1.1.0 | 463 | 12/16/2020 |
1.1.0-b27.b66c309b | 287 | 11/15/2020 |
1.0.12 | 910 | 10/18/2020 |
1.0.11 | 483 | 10/6/2020 |
1.0.10 | 467 | 9/30/2020 |
1.0.9 | 436 | 9/29/2020 |
1.0.8 | 636 | 9/26/2020 |
1.0.7 | 583 | 9/19/2020 |
1.0.6 | 482 | 9/3/2020 |
1.0.5 | 677 | 9/2/2020 |
1.0.4 | 483 | 9/1/2020 |
1.0.3 | 520 | 9/1/2020 |
1.0.2 | 533 | 8/29/2020 |
1.0.1 | 511 | 8/29/2020 |
1.0.0 | 514 | 8/29/2020 |
1.0.0-b1.c22f563d | 243 | 8/28/2020 |
net9.0 support