Go DevOps Tools

Open-source Go projects categorized as DevOps Tools

Top 23 Go DevOps Tool Projects

  • GitHub repo kubernetes

    Production-Grade Container Scheduling and Management

    Project mention: Can someone recommend me a Golang complete repo | reddit.com/r/golang | 2021-06-14
  • GitHub repo Moby

    Moby Project - a collaborative project for the container ecosystem to assemble container-based systems

    Project mention: TIL that you declaring version in docker-compose has been deprecated. | reddit.com/r/docker | 2021-06-13

    Swarm mode unfortunately breaks stuff like remote address (original client's IP address) because it uses its TCP ingress proxy, which makes all remote addresses look like they're coming from Docker. See https://github.com/moby/moby/issues/25526

  • GitHub repo Gogs

    Gogs is a painless self-hosted Git service

    Project mention: GitHub Reinstated YouTube-DL but Restoring Forks Is Apparently a Problem | news.ycombinator.com | 2021-04-17

    Sure, I reported an issue to the Gogs maintainer over two weeks ago and he hasn't acknowledged it at all. Here's the public reference that their SECURITY.md asks for: https://github.com/gogs/gogs/issues/6534

    Here's another one posted about a week ago: https://github.com/gogs/gogs/issues/6536

  • GitHub repo Gitea

    Git with a cup of tea, painless self-hosted git service

    Project mention: Self-hosted CI environment / pipelines? | reddit.com/r/selfhosted | 2021-06-10

    I'm currently self-hosting Gitea for source control, but I was wondering if any of you fine people have set up any self-hosted continuous integration environments. I would obviously prefer ones that work with Gitea.

  • GitHub repo Vegeta

    HTTP load testing tool and library. It's over 9000!

    Project mention: How to measure the number of requests a node.js application is receiving per second? | reddit.com/r/node | 2021-06-05
  • GitHub repo Packer

    Packer is a tool for creating identical machine images for multiple platforms from a single source configuration.

    Project mention: Provisioning Terraform EC2 Instances via Ansible playbooks & roles | reddit.com/r/Terraform | 2021-06-10

    Try Packer and then pick up AMI in your terraform project.

  • GitHub repo Hey

    HTTP load generator, ApacheBench (ab) replacement, formerly known as rakyll/boom

    Project mention: Load Testing Tool | reddit.com/r/devops | 2021-05-07
  • GitHub repo linuxkit

    A toolkit for building secure, portable and lean operating systems for containers

    Project mention: Ask HN: How are you using unikernels? | news.ycombinator.com | 2021-05-27

    The definition of what a unikernel is needs to be narrowed down, a lot of these projects in the space (not all the ones listed above) have material differences that are not clear:

    - some run only one language

    - some require recompilation

    - some essentially swap out libraries, others do something closer to dropping your already mostly static binary in a minimal disk image

    - some build pid1 processes, others VMs images

    Anyway, here are some additional entries in the space:

    - https://ssrg-vt.github.io/hermitux/

    - https://github.com/linuxkit/linuxkit (more embedded/minimal VM than unikernel)

    - https://nabla-containers.github.io/ (runs on Solo5)

    I am going through using Linuxkit to build AMIs for cloud providers now. I wouldn’t necessarily class linuxkit as a universal project because it doesn’t have the hallmark blurring of user and kernel space or kernel-as-a-library but you can customize the kernel so it’s an adjacent idea, and I think it’s the one most likely to be in actual use at non-hyperscalers.

  • GitHub repo webhook

    webhook is a lightweight incoming webhook server to run shell commands

    Project mention: Ask HN: Is there an open-source AWS Code Deploy or similar? | news.ycombinator.com | 2021-04-27

    Unfortunately I don't have a specific answer but I've was thinking of doing something similar - I've since changed my approach but this is what I was thinking.

    There are a number of these kinds of things for Kubernetes (Keel.sh, et al) but nothing that I could find for plain docker.

    One idea I had was to use something like https://github.com/adnanh/webhook and ping a webhook from the Github action. Yes it'd be publicly accessible, but using an HMAC header signed by a github secret would probably mitigate much of the risk. The webhook would do the pull and restart (via a shell script).

    I also spent some time playing with waypoint (from Hashicorp) and think it has potential, but of course is a bit different. They do have a docker image 'builder' and I think the webhook could be built into the server side to do the pull on new image.

    fwiw, I am looking at moving my app to fly.io

  • GitHub repo Boom

    HTTP(S) load generator, ApacheBench (ab) replacement, written in Go

  • GitHub repo awless

    A Mighty CLI for AWS

    Project mention: Ask HN: Show me the sexy, sexy home page of your favorite free CLI project | news.ycombinator.com | 2021-04-20
  • GitHub repo gaia

    Build powerful pipelines in any programming language.

    Project mention: best way to mock/unit test http.Client? | reddit.com/r/golang | 2021-03-15

    Something like this: https://github.com/gaia-pipeline/gaia/blob/8a9f66742fbb4c5120e52fcfeef94ff4fcfd63a0/workers/pipeline/git.go#L233

  • GitHub repo goss

    Quick and Easy server testing/validation

    Project mention: Find The Cube | dev.to | 2020-11-24

    The repository is private but there is a CI/CD no-downtime deployment process. So fancy! I use goss to test the built image along with the docker/build-push-action. The end of my ci.yml GitHub Action workflow looks like this:

  • GitHub repo gox

    A dead simple, no frills Go cross compile tool

  • GitHub repo yq

    yq is a portable command-line YAML processor

    Project mention: yq: Mastering YAML Processing in Command Line | dev.to | 2021-06-15

    Before we begin using yq, we first need to install it. When you google yq though, you will find two projects/repositories. First of them, at https://github.com/kislyuk/yq is wrapper around jq - the JSON processor. If you're already familiar with jq you might want to grab this one and use the syntax you already know. In this article though, we will use the other - a bit more popular project - from https://github.com/mikefarah/yq. This version does not 100% match the jq syntax, but its advantage is that it's dependency free (does not depend on jq), for more context on the differences, see following GitHub issue.

  • GitHub repo bosun

    Time Series Alerting Framework

  • GitHub repo Go Metrics

    Go port of Coda Hale's Metrics library

  • GitHub repo bombardier

    Fast cross-platform HTTP benchmarking tool written in Go

    Project mention: What's the fastest template parser in Go? | dev.to | 2020-10-01

    Bombardier

  • GitHub repo kubefwd

    Bulk port forwarding Kubernetes services for local development.

    Project mention: Using Telepresence 2 for Kubernetes debugging and local development | dev.to | 2021-04-15

    Kubefwd works similar to Telepresence by making your local environment think it is inside the cluster. The networking tunnel is one direction only. Telepresence is much smarter as it also makes the other cluster applications think that your local app is inside the same cluster. So with Kubefwd you only get 50% of what basic Telepresence offers. Telepresence also has volume mounting support for more advanced scenarios.

  • GitHub repo devspace

    DevSpace - The Fastest Developer Tool for Kubernetes ⚡ Automate your deployment workflow with DevSpace and develop software directly inside Kubernetes.

    Project mention: Docker Compose Alternatives for Kubernetes: Tilt | dev.to | 2021-06-09

    Many engineers developing apps that run in Kubernetes use Docker Compose for their local environment, but a lot of great alternatives are out there that make developing against a Kubernetes cluster fast and easy.  Tilt is an open source tool for developer workflows with Kubernetes, created by the Tilt team. Other tools in the space include Skaffold, created by Google, and DevSpace, created by Loft Labs. I work at Loft Labs and developer productivity is a big interest of mine, so I thought I'd look at what Tilt has to offer.

  • GitHub repo aptly

    aptly - Debian repository management tool

    Project mention: Microsoft Ubuntu repositories are broken because of space issues | news.ycombinator.com | 2021-06-17

    Aptly [0] is also really nice for maintaining mirrors and one's own Apt repositories though it is unmaintained.

    [0]: https://github.com/aptly-dev/aptly

  • GitHub repo rtop

    rtop is an interactive, remote system monitoring tool based on SSH

  • GitHub repo script

    Making it easy to write shell-like scripts in Go

    Project mention: Any Resources For Implementing Railway Oriented | reddit.com/r/golang | 2020-12-21

    The 'script' library is an example of exactly this: https://github.com/bitfield/script

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2021-06-17.

Index

What are some of the best open-source DevOps Tool projects in Go? This list will help you:

Project Stars
1 kubernetes 78,077
2 Moby 60,452
3 Gogs 37,188
4 Gitea 25,081
5 Vegeta 17,502
6 Packer 12,915
7 Hey 11,341
8 linuxkit 6,908
9 webhook 6,616
10 Boom 4,793
11 awless 4,777
12 gaia 4,390
13 goss 4,380
14 gox 4,037
15 yq 3,854
16 bosun 3,154
17 Go Metrics 3,039
18 bombardier 2,677
19 kubefwd 2,447
20 devspace 2,119
21 aptly 1,994
22 rtop 1,934
23 script 1,812
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com