Modern Python Projects Transcripts
Chapter: CI
Lecture: Continuous Integration (CI)
Login or
purchase this course
to watch this video and the rest of the course contents.
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.