gopskit

module
v1.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 21, 2024 License: MIT

README

Go Operations Toolkit GOpsKit Logo

License go.mod version Language Testing GitHub Release GitHub Activity Bazel Renovate PreCommit

GOpsKit (Go Operations Toolkit) is an open-source MIT-licensed Go-based toolkit for working with Kubernetes kubernetes Clusters v1.26 and above. The project is built using Google's Bazel build system in combination with their first-party Gazelle BUILD file generator.

📖 Overview

The toolkit offers a plethora of functionalities like setting up HashCorp's Vault with waltr, registering various applications for SSO authentication with Keycloak using ssolo. Never write Helmfile values.yaml template files to manage applications on your cluster again. Instead, generate them using fillr. Are you running your own custom private Certificate Authority using Smallstep's CA? Then you'd likely want to generate and manage PKI values using steppa. The German KBA delivers data in a custom bespoke text-based format, which purely relies on columns to separate data. That ain't SQL... So let's swiftly generate some usable SQL import script using amtrac.

✨ TL;DR

# build all projects at once - requires Bazel at .bazelversion
bazel build //...

🛠️ Tools

Like most modern Go projects the various executables are located within the cmd directory. Here's a quick-reference list as an overview:

  • ssolo: manage SSO authentication for various apps using Keycloak
  • waltr: configure and manage HashCorp's Vault
  • fillr: create Helmfile templates automatically
  • steppa: generate and manage SmallStep PKI values
  • amtrac: generate SQL dumps from the German KBA's data files using Docker
🔃 Contributing

Refer to our documentation for contributors for contributing guidelines, commit message formats and versioning tips.

📥 Maintainers

This project is owned and maintained by FMJ Studios refer to the AUTHORS or CODEOWNERS for more information. You may also use the linked contact details to reach out directly.

Directories

Path Synopsis
cmd
internal
pkg
fs
Package fs implements filesystem utilities as well as a Paths Object which holds references, to important directories like the platform-specific logging for configuration directories.
Package fs implements filesystem utilities as well as a Paths Object which holds references, to important directories like the platform-specific logging for configuration directories.
kv
Package kv implements a persistent Key-Value store based on the open-source BadgerDB.
Package kv implements a persistent Key-Value store based on the open-source BadgerDB.
log
proc
Package proc implements a generic Shell process executor, which allows us to execute arbitrary commands from within the program.
Package proc implements a generic Shell process executor, which allows us to execute arbitrary commands from within the program.
tools
Package tools implements the API to other tools like Helmfile, or Smallstep's 'step' CLI Initially I wanted to compile in the direct sources from their respective Go modules
Package tools implements the API to other tools like Helmfile, or Smallstep's 'step' CLI Initially I wanted to compile in the direct sources from their respective Go modules

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL