Python Continuous Integration and Delivery: A Concise Guide with Examples

  • 1h 59m
  • Moritz Lenz
  • Apress
  • 2019

Gain the techniques and tools that enable a smooth and efficient software development process in this quick and practical guide on Python continuous integration (CI) and continuous delivery (CD). Based on example applications, this book introduces various kinds of testing and shows you how to set up automated systems that run these tests, and install applications in different environments in controlled ways. Python Continuous Integration and Delivery tackles the technical problems related to software development that are typically glossed over in pure programming texts.

After reading this book, you’ll see that in today's fast-moving world, no software project can afford to go through development, then an integration phase of unpredictable length and complexity, and finally be shipped to the customer -- just to find out that the resulting application didn't quite fill their need. Instead, you’ll discover that practicing continuous integration and continuous delivery reduces the risks by keeping changes small and automating otherwise painful processes.

What You Will Learn

  • Carry out various kinds of testing, including unit testing and continuous integration testing, of your Python code using Jenkins
  • Build packages and manage repositories
  • Incorporate Ansible and Go for automated packaging and other deployments
  • Manage more complex and robust deployments

Who This Book Is For

Python programmers and operating staff that work with Python applications.

About the Author

Moritz Lenz develops Perl and Python code, and maintains a continuous delivery system for his employer. He is an experienced software developer and architect, and physicist. He is also a Perl 6 core developer, and has contributed significantly to the official test suite, the Rakudo Perl 6 compiler, and is the initiator of the official Perl 6 documentation project. He has also authored several modules, and runs infrastructure for the Perl 6 community.

In this Book

  • Automated Testing
  • Unit Testing in Python
  • Continuous Integration with Jenkins
  • Continuous Delivery
  • Building Packages
  • Distributing Debian Packages
  • Package Deployment
  • A Virtual Playground for Automating Deployments
  • Building in the Pipeline with Go Continuous Delivery
  • Distributing and Deploying Packages in the Pipeline
  • Pipeline Improvements
  • Security
  • State Management
  • Conclusions and Outlook