Skip to content

Latest commit

 

History

History
69 lines (51 loc) · 3.14 KB

README.md

File metadata and controls

69 lines (51 loc) · 3.14 KB

Blobify

Blobify is a .NET Global tool that archives (moves) files from a local folder to Azure Blob Storage container.

Obtain

dotnet tool install -g Blobify

Usage

blobify archive <inputpath> <azureStorageAccount> <azureStorageAccountContainer> [OPTIONS]

Example

blobify archive inputpath storageaccountname storagecontainer

Arguments

<inputpath>                       Input path
<azureStorageAccount>             Azure Storage Account Name
<azureStorageAccountContainer>    Azure Storage Account Container Name

Options

-h, --help               Prints help information
    --azure-tenant-id    Azure Tentant ID to sign into
    --file-pattern       Local file pattern to match

Authentication

By default it'll try authenticate using the DefaultAzureCredential which tries to authorize in the following order based on your environment.

  1. EnvironmentCredential
  2. WorkloadIdentityCredential
  3. ManagedIdentityCredential
  4. SharedTokenCacheCredential
  5. VisualStudioCredential
  6. VisualStudioCodeCredential
  7. AzureCliCredential
  8. AzurePowerShellCredential
  9. AzureDeveloperCliCredential
  10. InteractiveBrowserCredential

Using EnvironmentCredential

  1. Set the environment variable AZURE_TENANT_ID to the tenant ID (found in the App Registration overview for your app).
  2. Set the environment variable AZURE_CLIENT_ID to the client ID (found in the App Registration overview for your app).
  3. Set the environment variable AZURE_CLIENT_SECRET to the secret noted earlier.
  4. Set the environment variable AZURE_AUTHORITY_HOST to https://login.microsoftonline.com/.

Tool flow

flowchart TD
    ls[List files in source path]
    exists[Verifies if blob file already exists]
    upload[Upload file]
    verify[Verifies MD5 hash]
    delete[Delete file]
    skip[Skip file]
    ls --> exists
    exists --Found--> verify
    exists --Not Found--> upload
    upload --> verify
    verify --Matches--> delete
    verify --Not Matches--> skip
Loading