Email the Author
You can use this page to email Moritz Lenz about Automating Software Deployment.
About the Book
This book has been superseded by Python Continuous Integration and Delivery.
This book teaches a technically inclined reader how to automate the deployment process of self-written software using Open Source tools. Thus it introduces you to Continuous Delivery, a practice under the DevOps umbrella. It enables faster feedback cycles, which is an important aspect of agile software development.
It makes some assumptions on the technologies used:
- Debian GNU/Linux or derived distributions, such as Ubuntu, as the operating system
- aptly for repository management
- Ansible for deployment and configuration management
- Go Continuous Delivery for orchestrating the process
It covers the following topics:
- Why automate the release process?
- Requirements for automated deployments
- Deployments enviroments (test, staging, production, ...) and their function
- Architecture of a deployment system
- Packaging the software
- Distributing the software
- Deploying the software
- Orchestrating the whole process with Go Continuous Delivery
- Version handling
- Unit Testing
- Smoke Testing and Rolling Deployments
- Security Considerations
- State Management and managing schema changes.
It shows a step by step process for creating a deployment system, and features two example applications deployed this way.
About the Author
Moritz Lenz is a software engineer and architect.
In the Perl community, he is well known for his contributions to the Perl 6 programming language, the Rakudo Perl 6 compiler, related test suite, infrastructure and tools.
At his employer, noris network AG, he introduced Continuous Delivery for many in-house developed applications, and now wants to share his experience with the wider world.