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 will ensure that when we apply changes to our solution and workspace later we keep working on the same elements and do not duplicate everything.
So for now we will work on the build-my-app-training-workspace
repository.
In that repository you have a file named variables.yaml
it contains most of the element you will update during the hands on session.
You also have other files that we will come back to later.
Back to the variables.yaml
file where you will need to apply your first modifications and change the values in the first two keys state_id
and context_id
You can put any other name that you want on those, because the value in remote
is set to False
we won't be sending the data to be synchronized so the state will be local.
Once you have chosen values for those two you will be close to run your first babylon command.
Chekpoint
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 will need to replace the values in the babylon command with the values that are set in your variables.yaml
and the environment variable by those you will be given
And once that command runs without error your configuration for babylon will be done.
Customize the Solution and Workspace template¶
With babylon configured we can now customize the template of the solution to get our 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 decription 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 will need to make use of thegen_adx_permissions.sh
script to get yourprincipal_id
and then add yourself asAdmin
so that you can 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 now conclude our first subject of deploying a pre-package solution, you can play around with it if you want.
The next subject will be to go inside of the solution and start customizing it.