I would approach it this way:
• you can build your actual
workflow including your business logic and your data + model validation tests using
Prefect,
• the part to package
code dependencies into a Python package and/or a Docker image can be performed from your
CI
If you need some examples about that, check
this Discourse tag
This part of dbt blog post also shows how you could build a super simple one with CircleCI