Integrating ETL with Bold BI (or) Bold Reports in Azure App Service.
In this article, we will outline the steps necessary to integrate ETL with Bold BI (or) Bold Reports after deploying it in an Azure app service environment.
ETL virtual path mapping
-
Navigating to Path Mapping: After successfully deploying Bold BI (or) Bold Reports in the Azure app service environment, navigate to the Web app and select Settings --> Configuration --> Path Mapping.
-
Click on the New virtual application or directory plus option to add the ETL services virtual path.
-
Update the Virtual and Physical path value: Update the value for “Virtual path” as /etlservice and the value for “Physical Path” as site\wwwroot\etl\etlservice. Uncheck the “Directory” checkbox and click OK to add the ETL’s virtual path.
Python and pip Dependencies
-
Adding Python extension: After the ETL’s Path Mapping is done, navigate to the Web app and search for Extension section and search for the “Python 3.11.1” extension. Add this extension to your app service.
-
Configure Environment Path: To add Python 3.11.1 to the environment path in Azure App Service, use the
applicationHost.xdt
file and place the downloaded file inside the site folder of your App Service and restart it the Web app. This file allows you to configure the necessary settings for your application. -
Access Advanced Tools: On the App service page, search for “Advanced Tools” and click on the “Go” button.
-
Open Debug Console: In the Advanced Tools interface, go to the Debug console and select “PowerShell”.
-
Navigate to Python Directory: Run the following command in PowerShell to navigate to the Python directory:
cd "C:\home\python3111x64"
-
Check Python and pip Versions: To verify the installed versions of Python and pip, run the following commands one by one:
C:\home\python3111x64\python.exe --version
C:\home\python3111x64\python.exe -m pip --version
-
Install pip Dependencies: To install the necessary pip dependencies, execute the following commands one by one in PowerShell:
C:\home\python3111x64\python.exe -m pip install --upgrade pip
C:\home\python3111x64\python.exe -m pip install duckdb===1.1.2 dlt===0.5.4 pymysql pyodbc pg8000 poetry pandas===2.2.2 "dlt[parquet]" "dlt[filesystem]"
-
Configuring the virtual environment for python: To set up the virtual environment for python in Azure app service, Use the
venv
folder. Download the zip file, unzip it and place the unzipped folder inside the C:\home\python3111x64\Lib folder of your App Service. This folder allows you to configure the necessary settings for creating the virtual environment in python. -
Configure the python path in appsettings: Specify the python path in
C:\home\site\wwwroot\etl\etlservice\appsettings.json
like mentioned below and restart the machine."PythonPath": "C:\\home\\python3111x64" or "PythonPath": "C:/home/python3111x64"
Note: Need to update the python path in the appsettings.json file whenever the build is upgraded.