continuos integration patterns
TRANSCRIPT
VIKAS GUPTA
Continuos Integration Patterns
Continuous Integration
Process of building software with every change committed to a project’s version control repository
Build Patterns
Common Build Patterns
Automated BuildBinary IntegrityDependency ManagementConsistent DirectoriesStaged Builds
Private Build
Perform a private build prior to committing changes the repository
Private Build
Perform a private build prior to committing changes the repository
Integration Build
Periodically run the integration build WOMM
Continuous Feedback
Send automatic feedback from CI server to development team
Prevent spam
Expeditious Fixes
Fix build errors as soon as they comeIf the build is failing, don’t update
Developer Documentation
Generate documentation from build
Build Configuration Patterns
Independent build
Separate build from IDEBuild should run from command line
Single Command
All build and deployment should be run from single command
Should not need multiple commands to deploy
Dedicated Machine
Separate Machine for buildsWOMM
Externalize Configuration
Use build-time properties
Database
Externalize Configuration
Script all database actionsLate and manual migration is painfulAdd database configuration scripts to SCM
tool
Database Sandbox
Create a lightweight version of your databaseUse lightweight database on developer
machinesDon’t use shared database for development
Database Upgrade
Use scripts to upgrade the database in each environment
Don’t manually apply changes in each target environment
Testing and Code Quality
Database Upgrade
Automated TestsCategorize TestsContinuous InspectionBuild threshold
Deployment
Deployment Patterns
Scripted DeploymentHeadless ExecutionUnified DeploymentDisposable ContainerEnvironment rollback
Thanks