Modern Python Projects Transcripts
Lecture: Continuous Integration (CI)
0:00 Both Tox and pre-commit requires you to do some manual work to use them. You have to run Tox manually,
0:07 and you have to set up pre-commit, to use it with your local git repository
0:11 which is great because everything happens on your computer and you don't really depend on any external services. But if you work with a team of people,
0:20 there are always some problems with this approach. Some people forget to run Tox. Others don't use the latest pre-commit configuration,
0:28 so they use the outdated set of checks and stuff like that.
0:32 So different approaches to run checks on the server that stores your code from every team member servers like GitHub and GitLab.
0:41 Basically, each time someone creates a new pull request or merge request, you run the same set of checks that Tox or pre-commit would do.
0:49 If they pass, you accept that pull request and if not, your report an error and you ask that person to fix it.
0:57 This whole process is called continues integration, and, as you might have guessed,
1:01 it can happen mostly automatically. Two popular tools to implement continues integration are GitHub actions. For GitHub and GitLab CI.
1:10 or GitLab. But there are also many other paid external tools that you can use. You can even set up your own CI server using the
1:19 open source tool like Jenkins. But in this course I will focus on GitHub actions
1:24 and GitLab CI, since there are free and built in into the most popular code hosting platforms.