2

Struggling with a problem that i just can't seem to figure out.

When starting from scratch self hosting both the SCM and CI/CD server.

Given that you can't use an existing setup to deploy/manage it, what is the best practice for deploying said services?

top 5 comments
sorted by: hot top controversial new old
[-] icb4dc0de@programming.dev 2 points 1 month ago

I tend to do manual bootstrapping with local execution as well but when using Forgejo/Gitea and corresponding actions you could also init the repo, start building your pipeline and use act to run it (locally at first if course) and as soon as you have your infrastructure in place you could continue to use the same pipeline there?

Still not ideal/perfect but if you don’t want to depend on some SaaS then this at least already runs the automation as it will be later?

[-] Senal@programming.dev 1 points 1 month ago

Yeah, I'm going with a tiny dedicated infra bootstrapping box with all the tools I'd need to bootstrap the main infrastructure.

Using a hypervisor (proxmox in this case) I have some prebuilt vms's and container images that I can use for the bootstrap instances so i'd not need to completely hand roll it again should it be needed.

I'm looking at cloudinit scripts to see if that's useful for this.

I really like packer but I'm hesitant to rely on anything hashicorp until whatever they have going on shakes out.

Then I just load up the bootstrap box with the main infra code and use woodpecker to deploy.

Code and config backed up, also mirrored to newly created infra forgejo instances, just in case.

If I can get a semi presentable cloud init based bootstrap system working nicely I'll stick it somewhere people can get to it, in case it's useful to someone else.

[-] icb4dc0de@programming.dev 1 points 1 month ago

If you don’t mind I’d be interested in how the cloudinit for proxmox looks like 😁 So far I only used it for Azure and Hetzner Cloud to bootstrap Coder machines but from your description I’d expect that should work. Very cool approach!

[-] slazer2au@lemmy.world 1 points 2 months ago

Isn't this what bootstrapping is for? Manually set up the system to the point it can be taken over by ci/cd

[-] melezhik@programming.dev 1 points 3 weeks ago* (last edited 3 weeks ago)

my 2 cents here, though I don't understand all the context, you might take a look at sparky - which is lightweight task runner with web console, so you may throw a bunch of jobs into it to do all the "bootstrapping" so that you may later repeat the same if required on any fresh environment ...

this post was submitted on 13 Apr 2024
2 points (75.0% liked)

DevOps

1573 readers
7 users here now

DevOps integrates and automates the work of software development (Dev) and IT operations (Ops) as a means for improving and shortening the systems development life cycle.

Rules:

Icon base by Lorc under CC BY 3.0 with modifications to add a gradient

founded 1 year ago
MODERATORS