Uploaded by hongbo106

Continuous Integration

advertisement
Define the CI process
• Continuous build triggered for a PR merge
• Continuous rolling pipeline triggered by a new build
• Continuous deployment to PPE triggered by a green rolling
• Deployment auto rollback based on health signals
• Dashboards showing the CI pipeline status
Build process
• Reduce build time
• Reduce unit test time
• Enable continuous integration in the build pipeline
Rolling improvement
• Use build artifacts instead of builds in Cloud Vault
• Reduce rolling run time
Deploy to PPE
• Any rolling green build will be pushed to PPE
• Critical to have service heath monitoring mechanism in place to
prevent bad builds deployed to PPE
• Add runners/alerts support in PPE
• Treat PPE incidents the same as other environments (except no night
call to service team)
• Support fast rollback
Service health monitoring
• Ev2 based on ICM/Azure Monitor/REST:
https://ev2docs.azure.net/features/safety/healthcheck/geneva/intro.html
• Service Fabric service health model: Service can report health on
replica through API:
https://docs.microsoft.com/en-us/azure/service-fabric/service-fabricdiagnostics-how-to-report-and-check-service-health
Controlled deployment order
• Services still have dependencies among each other which can cause
issues in PPE
• Need a mechanism to define preconditions to block certain service
deployments
Dashboards
• Builds
• Rolling test runs
• Deployments
• PPE build version vs. recent green builds
PPE Environment
• One environment to host Media Services + LVA?
Download