In this first video of the course, you’ll get an overview about the courses content as well as a basic definition of Continuous Integration (CI). During this course you will work with Python as programming language and CircleCI as CI platform.
Intro to Continuous Integration
00:00 Hello, and welcome to the Real Python guide to Continuous Integration with Python. In this set of videos, you’re going to learn the core concepts and benefits behind continuous integration. Next, you’ll set up your own continuous integration pipeline.
00:15 And finally, you’ll use that continuous integration pipeline to manage a Python project. So, what is continuous integration, or CI? Continuous integration is the practice of frequently building and testing every change done to a piece of code, and then integrating that code as often as possible. In the past, changes were often built weeks apart, causing huge headaches and wasted time when it came time to merge.
00:39 Frequent builds means that any issues that arise can be traced back quickly and efficiently. CI also involves all developers on a project working on the same repository of code. While different teams and individuals may be on different branches of a repo, they’re all working off the same master. This way, as changes are added, all teams have access right away and can see how their code interacts with it.
01:02 Git is a common version control system, and you’ll be using GitHub later on for the example. A big piece of a CI pipeline is automating building and testing. Since Python is interpreted and doesn’t need to be compiled, we’re more concerned about the testing aspect, but you can think of the build as pulling all the required dependencies for the project. When testing is added to the CI pipeline, you can ensure that a successful commit passes all defined tests, even if the developer forgot to run the test locally.
01:31 External services are often used to handle CI pipelines, as this eliminates any specific conditions on an individual machine. In the examples section, you’re going to learn how to use CircleCI, which monitors a GitHub repo for changes and then builds the project based on a configuration file that you provide.
Become a Member to join the conversation.