In this chapter, we went over all the processes of packaging code. In particular, we created a GitHub repository, generated a template via poetry, and added all the dependencies, meaning everyone can now install the package from GitHub using pip. We then went further, adding a few tests to make sure our package works as expected throughout future development. To simplify the process and make it transparent, we integrated a CI service, Azure pipelines, to run tests on each pull request in order to prevent us from merging failing code into production.
In the next chapter, we will review another case, building a robust, secure, production-ready data pipeline using luigi.