Deploy a pre-packaged Solution¶
In this first part we will go through the steps to deploy a pre-packaged solution, using templated content and babylon.
Set up the babylon configuration¶
Before being able to deploy our solution we will need to configure babylon by defining a state.
The babylon state ensures that when you apply changes to your solution and workspace later, you continue working on the same elements without creating duplicates.
So for now we will work on the build-my-app-training-workspace
repository.
In that repository, you have a file named variables.yaml
that contains most of the elements you will update during the hands-on session.
You also have other files that we will come back to later.
Return to the variables.yaml
file where you need to make your first modifications by changing the values in the first two keys: state_id
and context_id
.
You can use any names you want for these values. Since the remote
value is set to False
, the data won't be synchronized remotely, keeping the state local.
Once you have chosen values for these two settings, you will be ready to run your first babylon command.
Checkpoint
You will need to get the babylon environment variables to be able to run any command.
Now that you have your environment variables you can run the following commands
export BABYLON_ORG_NAME=<Replace this>
export BABYLON_TOKEN=<Replace this>
export BABYLON_SERVICE=<Replace this>
babylon namespace use -s <state_id> -c <context_id> -p <platform_id>
You need to replace the values in the babylon command with the values from your variables.yaml
file and set the environment variables with the values you will be provided.
Once this command runs successfully without errors, your babylon configuration will be complete.
Customize the Solution and Workspace template¶
With babylon now configured, you can customize the solution template to create your own workspace and solution.
You will need to update the following values in variables.yaml
:
solution_key
: A unique key for your solutionsolution_name
: The name of your solutionsolution_description
: A description for your solutionworkspace_key
: A unique key for your workspace, it will be required for some resource creationworkspace_name
: The name of your workspaceworkspace_description
: A description of your workspacepowerbi_workspace_name
: A unique name for your powerbi workspace that will host your dashboardssecurity.accessControlList
: Add your mail addresses asAdmin
to ensure that you will have access to your solutionpowerbi_permissions
: Add your mail addresses asAdmin
to ensure that you will be able to upload and configure your power bi dashboardsadx_permissions
: You need to use thegen_adx_permissions.sh
script to obtain yourprincipal_id
, then add yourself as anAdmin
to execute queries on ADX.
Once all those changes are made you will be able to run your second babylon command
Checkpoint
Make sure you have your rights for Power BI ready with a Pro subscription and an Azure Entra identity so that you can get your principal_id
If all your permissions are ready you can run the following command
babylon apply project --solution
babylon apply project --workspace
And once those commands are finished you can go to the Build My App Web App and see your workspace ready for you.
This concludes the first section on deploying a pre-packaged solution. You can explore and experiment with it if you wish.
The next subject will be to go inside of the solution and start customizing it.