az-lazy
1.2.0
See the version list below for details.
dotnet tool install --global az-lazy --version 1.2.0
dotnet new tool-manifest # if you are setting up this repo dotnet tool install --local az-lazy --version 1.2.0
#tool dotnet:?package=az-lazy&version=1.2.0
nuke :add-package az-lazy --version 1.2.0
AzLazy CLI tool is designed for developers, it provides a command line interface to quickly manage and make changes to azure storage queues, blobs and tables.
Table of Contents
1. Installation <a name="installation"></a>
You can download the tool from the Nuget Gallery, run the following installation command,
dotnet tool install --global az-lazy
2. Getting started <a name="gettingstarted"></a>
Use the following command to add a new connection
azlazy addconnection --name "dinosaurStorage" --connectionString "<<azure access key>>"
Select the connection you want to use
azlazy connection --select "dinosaurStorage"
You can check which connection is selected the the list command, by default you will always have devStorage which allows you to connect to a local azure emulator
azlazy connection --list
Once a connection has been added you can begin using all the other commands, eg
azlazy queue --list
azlazy queue --watch "process-carnivores"
azlazy queue --peek "process-carnivores" --peekCount 3
azlazy addcontainer --name "dinosaurpictures" --publicAccess "Blob"
azlazy container --tree "dinofiles" --detailed
azlazy blob --container "dinofiles" --uploadDirectory "C:\Users\faese\Desktop\dinofiles"
3. Command List <a name="commandlist"></a>
To view a list of commands through the CLI you can use azlazy --help
, each command has an alias beginning with the first letter of the command, eg azlazy connection --list
can be aliased to azlazy connection -l
.
i. Connection commands <a name="connectioncommand"></a>
Command | Description |
---|---|
azlazy connection --help |
Display a list of commends you can use for connections |
azlazy addconnection --name "name of connection" --connectionstring "connection string" |
Adds a new connection to the connection list. You can also select the connection with --select true |
azlazy connection --list |
Show a list of connections available, the selected connection will highlighted with a [*] symbol |
azlazy connection --remove "name of connection" |
Removes a connection from the connections list |
azlazy connection --select "name of connection" |
Selects a connection from the connections list |
ii. Queue commands <a name="queuecommand"></a>
Command | Description |
---|---|
azlazy queue --help |
Display a list of commends you can use for queues |
azlazy addqueue --name "queue to add" |
Creates a new queue with the given name |
azlazy queue --list |
View a list of queues in the storage account along with the number of messages they are holding, poison queues are highlighted in red. You can also filter the list with --contains |
azlazy queue --remove "queue to remove" |
Removes the queue with the given name |
azlazy queue --cure "queue to move poison messages to" |
Moves poison queue messages back into the processing queue |
azlazy queue --clear "queue to clear" |
Removes all messages in the queue |
azlazy queue --addQueue "queue to add a new message" --addMessage '{ \"test\": true }' |
Adds a new message to the queue |
azlazy queue --watch "queue to watch" |
Watches a queue for new messages |
azlazy queue --peek "queue to peek messages" |
Views messages in the queue, note this function peeks messages so visibility is not changed for consuming applications. --peekCount 10 can also be used to specify how many messages you want to view. The Maximum peek count available is 32. |
azlazy queue --from "source queue name" --to "destination queue name" |
Moves queue messages from the source queue to a destination queue |
iii. Container commands <a name="containercommand"></a>
Command | Description |
---|---|
azlazy container --help |
Displays a list of commands you can use for containers |
azlazy container --list |
View a list of containers in the storage account, along with whether or not its public and when it was last modified. You can also filter the list with --contains |
azlazy addcontainer --name "container to add" --publicAccess "Blob" |
Creates a new container with the given name, the containers public access level can be set using --publicAccess . Possible options are None , Blob , BlobContainer . By default any container created will not be publicly accessible and so will be set to None |
azlazy container --remove "container to remove" |
Removes a container with the given game |
azlazy container --tree "container to view" |
Returns a tree view of the container --detailed command can also be used view file sizes and last modified dates. For large containers --depth 2 command can be used to limit how deep the folders are traversed |
iv. Blob commands <a name="blobcommand"></a>
Command | Description |
---|---|
azlazy blob --help |
Displays a list of commands you can use for blobs |
azlazy blob --container "container name" --remove "blob to remove" |
removes a blob from a given container, note the blob name needs to contain the full path |
azlazy blob --container "container name" --uploadFile "c:\dinofiles\safaripics\t-rex.png" --uploadPath "safaripics" |
Uploads a blob from a given path to the container, --uploadPath allows you to specify the location in blob storage. In the example given the file t-rex.png will be uploaded to safaripics\t-rex.png if no upload path is provided the file will be uploaded to the root of the container. |
azlazy blob --container "container name" --uploadDirectory "c:\dinofiles" --uploadPath "safaripics" |
Upload all the files in a given directory to a container. When uploading, the folder structure of of the directory is reflected into the container. --uploadPath can also be optionally specified to copy the files into a subdirectory. |
v. Table commands <a name="tablecommand">
Command | Description |
---|---|
azlazy table --help |
Displays a list of commands you can use for tables |
azlazy table --list |
View a list of tables in the storage account |
More coming soon !
4. Contributing <a name="contributing"></a>
I haven't written any contributing guidelines yet but you can reach me here on Faesel.com contact page. Development Notes are also available.
5. Change Log <a name="changelog"></a>
For older versions check the change log here, for newer versions check out the releases page.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. 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 was computed. 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. |
.NET Core | netcoreapp3.1 is compatible. |
This package has no dependencies.
Version | Downloads | Last updated |
---|---|---|
1.3.1 | 482 | 2/15/2021 |
1.3.0 | 429 | 12/18/2020 |
1.2.9 | 376 | 12/14/2020 |
1.2.8 | 420 | 12/11/2020 |
1.2.7 | 426 | 12/9/2020 |
1.2.6 | 384 | 12/7/2020 |
1.2.5 | 433 | 12/5/2020 |
1.2.4 | 417 | 12/4/2020 |
1.2.3 | 414 | 12/3/2020 |
1.2.2 | 452 | 11/28/2020 |
1.2.1 | 374 | 11/25/2020 |
1.2.0 | 423 | 11/23/2020 |
1.1.9 | 459 | 11/22/2020 |
1.1.8 | 432 | 11/15/2020 |
1.1.7 | 498 | 11/14/2020 |
1.1.6 | 365 | 11/13/2020 |
1.1.5 | 454 | 11/9/2020 |
1.1.4 | 493 | 11/8/2020 |
1.1.3 | 483 | 11/7/2020 |
1.1.2 | 416 | 11/6/2020 |
1.1.1 | 419 | 11/4/2020 |
1.1.0 | 521 | 11/1/2020 |
1.0.9 | 420 | 10/31/2020 |
1.0.8 | 428 | 10/30/2020 |
1.0.7 | 419 | 10/29/2020 |
1.0.6 | 371 | 10/29/2020 |
1.0.5 | 421 | 10/28/2020 |
1.0.4 | 384 | 10/27/2020 |
1.0.3 | 460 | 10/27/2020 |
1.0.2 | 544 | 10/25/2020 |
1.0.1 | 445 | 10/23/2020 |
1.0.0 | 457 | 10/21/2020 |