Provisioning Azure Infra
Create Service principle for aks cluster
az ad sp create-for-rbac --role="Contributor" --scopes="/subscriptions/<subscription_id>" --name sunbird_installation_version
Create Maxmind DB Licence key
Open https://www.maxmind.com/en/accounts/current/license-key
Click on
If you don’t have an account, Signup for one on https://www.maxmind.com/en/geolite2/signup?lang=en
Create an ssh public key
ssh-keygen -C installation_test_key -b 4096 -f /tmp/deployer_key vim /tmp/deployer_key.pub
Login to http://portal.azure.com → select Cloud shell
git clone https://github.com/project-sunbird/sunbird-devops -b releaese-<version> cd sunbird-devops/deploy vim azure-provision.yaml # Update the mandatory variables. ansible-playbook azure-provision.yaml
Go to the created vnet → Click on connected devices to get all ips
Update the IP address for the modules
sed -i 's/10.1.4.4/10.0.1.6/g' ./{Core,KnowledgePlatform,DataPipeline}/{common.yml,hosts} # DP sed -i 's/10.1.4.5/10.0.1.8/g' ./{Core,KnowledgePlatform,DataPipeline}/{common.yml,hosts} # DB sed -i 's/10.1.4.6/10.0.1.5/g' ./{Core,KnowledgePlatform,DataPipeline}/{common.yml,hosts} # KP sed -i 's/10.1.4.7/10.0.1.7/g' ./{Core,KnowledgePlatform,DataPipeline}/{common.yml,hosts} # YARN sed -i 's/10.1.4.8/10.0.1.9/g' ./{Core,KnowledgePlatform,DataPipeline}/{common.yml,hosts} # OTHERS
Update the Variable files (common.yaml, secrets.yaml) in Core,KnowledgePlatform,DataPipeline
Note: Blob, Docker registry secrets will be printed on the console of theazure-provision
ansible task, which ran aboveSetup Jenkins as per the doc http://docs.sunbird.org/3.9.0/developer-docs/server-installation/jenkins-setup/
In the Build and deploy step(http://docs.sunbird.org/3.9.0/developer-docs/server-installation/build-and-deploy/ ), skip all the prerequisites and proceed to Code Builds Section. Maxmind DBS will be present in
Blob storage -> artifacts -> geoip2_db.{zip, tar.gz} you can give the url of artifact in Jenkins build, if promted
To get all the branches to build, run the https://10.20.0.14/jenkins/job/Release/job/OtherReleaseJobs/job/GetBranches/
Replay the job and change therelease-x.x.x
and run the job.
It will generate a branches.txt file, which will contain all branch info.