The prerequisites depend to an extent on whether you will be deploying this sample on Linux or on Windows. Follow the guidance in the appropriate section below for your environment.
Regardless of whether you are using Linux or Windows, before beginning to deploy this sample, make sure you have **Owner** role assigned on the subscription that you want to use for the deployment. This role is required to grant IAM roles to managed identities in bicep templates.
The deployment script uses tools listed below. Before running the script, make sure you have them installed. You can use the links provided to install the suggested tools.
The easiest way to run the commands needed to set up the required infrastructure on Windows is to use Cloud Shell, because it includes all necessary components, such as git, az cli, and jq. To open a Cloud Shell terminal, do the following:
- **environmentCode** is a string you provide that is used as a prefix for Azure resource groups and resource names. It must consist of only alphanumeric characters (no special characters) and must be between 3 and 8 characters in length.
- **location** is a valid Azure region.
For example, you may use a command such as the following:
1. Find the batch account named as `batchact<10-character-random-string>` under the resource group `<environment-code>-orc-rg`.
2. In the batch account, switch to the **Pools** blade. Look for a pool whose name begins with the environment code you had used. Make sure the resizing of the pool is completed without any errors. Resizing may take a few minutes. Pools that are resizing are indicated by `0 -> 1` numbers under dedicated nodes column. Pools that have completed resizing should show the number of dedicated nodes.
Errors encountered while resizing the pools are indicated by red exclamation icon next to the pool. Most common issues causing failure are related to the VM Quota limitations. If you run into this issue, try increasing the quota. You may need to contact Azure support to increase the quota.
When you are finished with this sample deployment, you can use a cleanup script to clean up the resource groups and remove the resources provisioned using your chosen **environmentCode**.
As mentioned above, the environmentCode is used as prefix to generate resource group and resource names, so the cleanup script deletes the resource groups whose names begin with that prefix.
If you do not want to delete a specific resource group and the resources contained with in it, use the NO_DELETE_*_RESOURCE_GROUP environment variable, by setting it to **true** as shown: