CI/CD pipelines reddit / selfhosted ---------------------------------------------------------------------- servergeek82 · 2023-12-12 04:22 What's popular today? I've played with ansible, Jenkins, droneci, woodpecker, git runner in gitea. Found goCD seems the project is dying though. Is terraform worth learning? Your thoughts and use cases. ---------------------------------------------------------------------- root_switch · 2023-12-12 04:34 > Is terraform worth learning? Yes, especially if your in the cloud industry or plan on being in that industry, most cloud jobs now a days list terraform as a requirement. In regards to selfhosted, id say yes, as long as there is a provider for your tech stack. ---------------------------------------------------------------------- servergeek82 · 2023-12-12 04:44 I have hp proliant G8 server. I have enough horsepower for my own cloud lol ---------------------------------------------------------------------- root_switch · 2023-12-12 04:52 I use terraform in my self hosted stack cause there is a docker provider and a lot of my selfhosted apps are containers I built or grabbed from docker hub. But I also use terraform professionally so it’s an easy solution for me. This also has nothing to do with CICD pipelines. ---------------------------------------------------------------------- lordsepulchrave123 · 2023-12-12 05:06 Terraform isn't a CI/CD pipeline, but it's powerful and widely used. ---------------------------------------------------------------------- servergeek82 · 2023-12-12 05:08 True. Can I dockerize terraform stack? ---------------------------------------------------------------------- servergeek82 · 2023-12-12 05:08 So what would you recommend? ---------------------------------------------------------------------- root_switch · 2023-12-12 05:13 You should read up on terraform. In most cases you would use terraform to build and deploy your containers. Not sure why you would want to “dockerize” terraform but they do have an official image: https://hub.docker.com/r/hashicorp/terraform ---------------------------------------------------------------------- servergeek82 · 2023-12-12 05:17 Sounds like a to-do at work tomorrow. Got ollama ai running, and shut it down. Probably dockerize is a good option I can turn something on and shut it down whenever. ---------------------------------------------------------------------- tcassaert · 2023-12-12 07:13 Not all of the tools you're listing are CI/CD projects. Ansible and Terraform can be used in your CI/CD pipelines, but they aren't CI/CD projects on their own. When deciding what to use, take a look into the integrations with what you already use. Does it have a good integration with your version control system? Another thing I look out for, is projects with an open source license. DroneCI for example, doesn't have an open source license, but Woodpecker is a good open source alternative. ---------------------------------------------------------------------- Alles_ · 2023-12-12 08:19 commit -> github actions (docker build) -> containrrr/watchtower updates it easy as ---------------------------------------------------------------------- domanpanda · 2023-12-12 11:56 You mixing tools so you're complete newbie. In that case i would recommend Gitlab or Github actions to get your hands dirty quickly. Or Jenkins (even though people giving up from it) because it will enforce you to do your integrations by yourself (repos, webhooks, tools) so it will teach you much more than gitlab or github actions. ---------------------------------------------------------------------- servergeek82 · 2023-12-12 12:06 It's been been a couple years but I still have the volume data from the install of gitlab. I switched the gitea as I really enjoy the feel of it better. As for pipeline Jenkins was a lot of fun. I agree the interface it's starting to look aged, but kanban looks aged and people still use it. I still have my jenkinsfile in my repo so I'm not sure what you meant about mixing tools. I think to be honest there is a blurred line when people start mixing and integrating tools. But that is a another very long post. Keep it positive ---------------------------------------------------------------------- servergeek82 · 2023-12-12 12:09 Currently. Gitea -> gitea actions -> git pull on 3 hosts, and docker up. No point in adding more steps. Hopefully it's easy as pie for the statement or maybe easy as lasagna ---------------------------------------------------------------------- Alles_ · 2023-12-12 12:10 Always follow the KISS Keep It Simple, Stupid ---------------------------------------------------------------------- servergeek82 · 2023-12-12 12:12 Oh absolutely. Especially with 52 apps running currently on my server. ---------------------------------------------------------------------- servergeek82 · 2023-12-12 12:24 Gitea actions is great. Droneci was great too. Someone mentioned a bit ago of woodpecker undergoing some changes I hadn't kept up with. But it is similar to droneCi. My work uses Spinnaker but that monolithic and typically used with cloud and k8s environments. ---------------------------------------------------------------------- domanpanda · 2023-12-12 14:30 Ahh sorry, i got (false) impression that you're dont have any idea about the tools you mentioned - ansible or terraform are IaC tools which could be used in CD process but they are not CI/CD tools. So I think github actions are safe bet now. Overall i meet mostly people who use cloud-based solutions. But thats my personal impression. Most of the time i still work with Jenkins. ---------------------------------------------------------------------- servergeek82 · 2023-12-12 14:38 Ansible was definitely fun. Very powerful. ---------------------------------------------------------------------- Mother-Wasabi-3088 · 2023-12-12 14:57 it isn't really worth using CI/CD at home in my opinion. I have a selfhosted Forgejo repo with my docker-compose projects. I was previously using Gitlab runners to do deployments but it is just adding extra steps that are not necessary in a home environment unless you want to learn devops. ---------------------------------------------------------------------- servergeek82 · 2023-12-12 15:03 I don't even have to do that currently. I have my compose files. If I add one or modify one it gets copied to 3 places by git pull. And does a docker compose up. If I go a week without it does a docker compose pull and up once a week. I get a notification when done. Pretty much self healing at the point ---------------------------------------------------------------------- lordsnoake · 2023-12-12 22:15 personally, i have a kubernetes cluster at home amongst 2 servers. 2 masters, and 3 workers that run the apps. I utilize gitlab and gitlab runners to lint, build branch and push the image to the gitlab container registry. I then have flux cd running, monitoring the container registry and auto deploying once it detects a new version (i run dev and production environment so i have flux monitor my main and dev container registry). Granted, gitlab might be heavy, but i got the hardware for it and i personally like it. Not sure what hardware resources you have so that might be something else to consider. ---------------------------------------------------------------------- servergeek82 · 2023-12-13 01:48 I have a HP proliant G8 with x2 16 Xeon procs and 265gig of ram. But I have a spare for parts. 2 g10s with similar specs.jjst got them haven't turned them on yet. I think I still have 2 1U G8s as well too around the house.