The project is in a healthy, maintained state
Cloud-agnostic Kubernetes abstractions for Pangea. Compiles kubernetes_cluster() and kubernetes_node_pool() to provider-specific Terraform JSON via backend modules (AWS EKS, GCP GKE, Azure AKS, Hetzner k3s-on-NixOS).
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies

Development

~> 13.0
~> 3.12
~> 0.22

Runtime

 Project Readme

pangea-kubernetes

Cloud-agnostic Kubernetes abstractions for the Pangea infrastructure DSL.

Overview

Provides a unified kubernetes_cluster and kubernetes_node_pool API that compiles to provider-specific Terraform JSON via pluggable backend modules (AWS EKS, GCP GKE, Azure AKS, Hetzner k3s-on-NixOS). Includes bare-metal cloud-init support, elastic load balancer abstractions, and a backend registry for extensibility. Built on pangea-core.

Installation

gem 'pangea-kubernetes', '~> 0.1'

Usage

require 'pangea-kubernetes'
require 'pangea-hcloud'  # backend provider

cluster = Pangea::Kubernetes::Architecture.new(
  backend: :hcloud_nixos,
  name: "my-cluster",
  version: "1.31"
)

Backends are lazy-loaded -- only require the provider gem for the backend you use.

Development

nix develop
bundle exec rspec

License

Apache-2.0