simple self-contained ArgoCD style git-ops with fly.io - what are the options? +PoC: FlyCD app

Question to you fly.io veterans out there:

What are my options if wanting a self-contained (hosted within my fly.io org) ArgoCD style git-ops solution for my fly.io apps? Is there anything practical?

I couldn’t find anything obvious but I’m new to this platform and probably missing something :slight_smile: .

I’d like a monitoring app running on fly.io listening to webhooks from my app repos and making decisions on what to deploy/launch/modify based on configuration in my ops repo (list of apps and their app repos basically.).

  • Anything like that available?

To make it a bit clearer what I’m looking for, I built a proof-of-concept today in go of what such an app could look like (but it’s super early stage, so yeah, really only proof-of-concept).

Am I reinventing the wheel here or should I (and maybe if someone else wants to join in) keep building on this?

2 Likes

Ok, it actually works now :stuck_out_tongue_winking_eye:

Idk if it makes any sense. Maybe fly.io are already on their way to release a proper solution for this?

1 Like

I think you’d be the first to do this! Exciting! Currently the most common way to do CD seems to be running fly deploy on every push via Github Actions or something similar.

Yeah I guess I was after something a bit more declarative. Just "Here is my environment spec. It’s on this git repo here. Please keep my fly.oi account in sync with the spec. " :slight_smile:

Idk tbh if it would have made more sense to try to integrate Terraform instead :man_shrugging:

We do have a community-contributed terraform provider that can be used to manage apps, machines, volumes, etc… but it doesn’t have any of the magic that flyctl has around generating dockerfiles, building and pushing images, and rolling out deployments.

Thanks, I think that is a bit too low level for me.

I like how flyctl just does the auto conversion of “arbitrary app format” → “all in one image builder + storage” :slight_smile: (and like you mention, rolling out/deploying)

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.