The following instructions contain the required steps to install the necessary utilities and setup your development environment in order to run the sample application which is detailed in the parent [README](../README.md) file.
1. Install **[python](https://www.python.org/downloads/windows/)** (preferably 3.6). In the python setup wizard, check `pip` during the `Optional Features` step.
1. Install **Azure CLI** by running below command:
```shell
pip install azure-cli
```
**NOTES**:
* We run Azure resource provisioning script in Git Bash. To smoothly run Azure CLI commands in Git Bash, Azure CLI has to be installed via pip.
* The Azure CLI installed via MSI insatller doesn't work well in Git Bash.
*`MYSQL_PASSWORD` will be used to create a MySQL database in Azure, which must meet password complexity requirements; for example, you should use a mixture of uppercase letters, lowercase letters, numbers, and punctuation.
* The default MySQL admin username is `AzureUser`; you can change it in `~/deployment/config.json`.
*`JENKINS_PASSWORD` will be used to deploy a Jenkins cluster in ACS; the Jenkins admin username is `jenkins`.
**NOTE**: Follow the steps in the root-level README.md file instead of using the following steps.
1. Run the following command:
```bash
source provision.sh
```
1. Wait for about 16 minutes till all resources are created.
The IP of Jenkins server will be displayed at the end of the output.
During the installation, there might be prompt for your credential for elevated permission to install `kubectl`.
1. Go to the Jenkins server and login with username `jenkins` and password set in step 13.
1. Because our Repo is private right now, you will have to setup credentials to allow Jenkins enlist your repo. Click the pipeline job and configure it.
1. At the pipeline tab, add a new credential with your GitHub account and your personal access token.
Refer to [GitHub document](https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line/) for creating your personal access token.
1. After configuration is saved, click "build now" to trigger the first deployment of web-app and data-app.
1. When deployment is done, go to Azure Portal to find the URL of web-app traffic manager.
Open the URL in browser, then you will see the home page of the web-app.
For more information about using GitHub with Jenkins, see [How to Start Working with the GitHub Plugin for Jenkins](https://www.blazemeter.com/blog/how-start-working-github-plugin-jenkins) for details on how to enable Jenkins triggers every time changes are pushed to GitHub.