Python CICD 管道

Python CICD pipeline

在我的公司,我们通过以下步骤对 java/groovy/node 等项目进行 CICD:

1)- 使用构建工具(maven、node、gradle 等)打包应用程序。将 snapshot/release 版本推送到二进制存储库(artifactory/nexus 等)。

2)- 如果它是一个版本,则增加版本或创建一个快照(使用与 maven 相同的构建工具)

3)- 使用声纳和 clm 扫描包裹

4)- 如果通过,创建一个 docker 映像并部署。

现在我想为基于 Python 的应用程序创建一个类似的 CICD 管道。 我对 Point#1 #2 和 #3 感到困惑。如何打包 Python 代码?如何扫描通过 pip 安装的罐子?因为一旦我 运行 pip jar 不仅被下载,而且被安装。另外,我如何对代码进行版本控制,是否有一个构建工具可以用于 Python.

这就是我最后做的事情: