Hey Prefect community,
I'm trying to understand how to integrate CICD in the flow development process, in part to prevent accidents when pushing flows from a developer's local machine.
My first reflex was to create a private git repo with flows' code, and automatically register all flows inside with Cloud only after a PR was merged to `master`/a tagged release was made. This approach destroys flow versioning however, so then I need to parse git history to find only files that got added/modified recently (via Github Actions, or a step in CircleCI, for example)... Not very elegant.
Did anyone else run into a similar issue? How did you go about it? Thanks!!
👍 1
b
Braun Reyes
03/20/2020, 1:29 PM
What agent are you going to be using?
I think the deployment techniques may be different based on local agent(universal deploy) vs something like the Fargate Agent which requires using docker storage for now. At Clearcover we use the Fargate Agent and docker storage. Basically what we do is use a docker image per github repository, where all flows in the repo get deployed into a single docker images
I am currently writing a blog post on this that I hope to have out next week. I can share it privately with you...you can tell me what you think
🙂 1
we use AWS codebuild, but it should work with any CICD given some additional work to customize as needed
a
Arsenii
03/20/2020, 2:14 PM
I'm going to be using either
DockerAgent
or
FargateAgent
, still figuring the infra out -- but having a Docker registry for all flows is a must IMO
Sounds like your use case at Clearcover is very close to what I'm trying to achieve! @Braun Reyes would love to read the article, thank you. I'm sure it'll be an interesting build for other Cloud users as well