appservice-deployer

Azure App Service file deployer


License
MIT
Install
pip install appservice-deployer==0.0.4

Documentation

Azure App service deployer

Simple azure app service file provisioner


GitHub tag (latest by date) PyPI pdm-managed GitHub issues GitHub license

This is a simple app to do provisioning of statics files on multiple app services.

Installation

appsevdeployer don't required dependencies it use built-in function at moment.

INSTALL BY PIP

pip install appservice-deployer

Usage

The basic utility for this program at now is to provision static file on app service, it's automatically retrive information on FTPS connection USER and PASSWORD of one or more app services.

It's recommended to make dry run before run provisioning to see every changes that the run will be affect and what app are involved.

Dry run

python3 -m appsrvdeployer -n <APP_SERVER_NAME> -g <RESOURCE_GROUP> -s <SUBSCRIPTION> -z <ZIP_FILE> --path <ROOT_PATH> -C

-C option or --dry-run will make a dry run

Real run

python3 -m appsrvdeployer -n <APP_SERVER_NAME> -g <RESOURCE_GROUP> -s <SUBSCRIPTION> -z <ZIP_FILE> --path <ROOT_PATH>

FAQ

1. How should my zip file be built?

At moment the zip file must be built starting not from the source data but from an initial directory, the software will unpack and load everything starting from that directory onwards.

Ex.

init
β”œβ”€β”€ dir1
β”‚   β”œβ”€β”€ subdir1
β”‚   β”‚   └── subdir1.1
β”‚   β”‚       β”œβ”€β”€ file1
β”‚   β”‚       └── file2
β”‚   β”œβ”€β”€ subdir2
β”‚   β”‚   └── file
β”‚   β”œβ”€β”€ file1
β”‚   β”œβ”€β”€ file2
β”‚   β”œβ”€β”€ file3
β”‚   β”œβ”€β”€ file4
β”‚   β”œβ”€β”€ file5
β”‚   └── subdir2
β”‚       β”œβ”€β”€ file1
β”‚       └── file2
└── dir2
    └── subdir1
        β”œβ”€β”€ file1
        β”œβ”€β”€ file2
        β”œβ”€β”€ file3
        β”œβ”€β”€ file4
        β”œβ”€β”€ file5
        β”œβ”€β”€ file6
        └── file7

it will unzip dir like this.

$ tree <ROOT_PATH>
.
β”œβ”€β”€ dir1
β”‚   β”œβ”€β”€ subdir1
β”‚   β”‚   └── subdir1.1
β”‚   β”‚       β”œβ”€β”€ file1
β”‚   β”‚       └── file2
β”‚   β”œβ”€β”€ subdir2
β”‚   β”‚   └── file
β”‚   β”œβ”€β”€ file1
β”‚   β”œβ”€β”€ file2
β”‚   β”œβ”€β”€ file3
β”‚   β”œβ”€β”€ file4
β”‚   β”œβ”€β”€ file5
β”‚   └── subdir2
β”‚       β”œβ”€β”€ file1
β”‚       └── file2
└── dir2
    └── subdir1
        β”œβ”€β”€ file1
        β”œβ”€β”€ file2
        β”œβ”€β”€ file3
        β”œβ”€β”€ file4
        β”œβ”€β”€ file5
        β”œβ”€β”€ file6
        └── file7

2. How i can deploy on my slot?

You can deploy on specific app service slot with --slot <SLOT_NAME>

Like this

python3 -m appsrvdeployer -n <APP_SERVER_NAME> -g <RESOURCE_GROUP> -s <SUBSCRIPTION> -z <ZIP_FILE> --path <ROOT_PATH> --slot <SLOT_NAME>

It will deploy only on your app service slot

License

This project is open sourced under MIT license, see the LICENSE file for more details.