In my company , we do CICD on java/groovy/node etc projects by following steps:
1)- Package an application using a build tool (maven,node,gradle etc). Push the snapshot/release version in a binary repo (artifactory/nexus etc).
2)- Increment the version if its a release or create a snapshot (using the same build tool like maven)
3)- Scan the package using sonar and clm
4)- If passed , create a docker image and deploy.
Now I want to create a similar CICD pipeline for Python based application. I am confused on Point#1 #2 and #3 . How do I package a Python code ? How do I scan the jars those are installed through pip ? Because once I run pip the jars are not just downloaded , instead they are installed. Also , how do I version the code , Is there a build tool that I can use for this purpose with Python.