terranetes-controller

module
v0.4.11 Latest Latest
Warning

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

Go to latest
Published: May 20, 2024 License: GPL-2.0

README

GPL license GitHub go.mod Go version of a Go module GoReportCard example CodeQL

TERRANETES CONTROLLER

The Terranetes Controller manages the life cycles of a terraform resource, allowing developers to self-serve dependencies in a controlled manner.

There's a number of open source controllers you could use that will run Terraform in Kubernetes. All of them deliver the developer outcome, however, none address the "consequences" of delivering that outcome in the first place; the risks, costs, security implications, the general lack of checks and balances. What sets the Terranetes controller apart is its opinion we first enable the platform team to deliver the outcome in a safe environment before it can be self-served by developers. Providing platform engineers with all the knobs, dials and levers to control and mitigate those risks is the key differentiator for Terranetes controller.

Documentation can be found at https://terranetes.io

Architecture

FEATURES

DEVELOPERS
PLATFORM ENGINEERS
  • Keep cloud credentials secure
    • Restrict credentials provider use via namespace and label selectors
    • Don't expose credentials within a user's namespace
  • Define Guardrails around use
    • Restrict to known module sources
    • Validate resource requests against Checkov policies
    • Automatically inject default configuration based on labels

GETTING STARTED

View the getting started guide at https://terranetes.io

Directories

Path Synopsis
cmd
pkg
apis/core/v1alpha1
Package v1alpha1 contains API Schema definitions for the core v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=core.appvia.io
Package v1alpha1 contains API Schema definitions for the core v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=core.appvia.io
apis/terraform/v1alpha1
Package v1alpha1 contains API Schema definitions for the terraform v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=terraform.appvia.io
Package v1alpha1 contains API Schema definitions for the terraform v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=terraform.appvia.io
cmd
register
Package register generated by go-bindata.// sources: charts/terranetes-controller/crds/terraform.appvia.io_cloudresources.yaml charts/terranetes-controller/crds/terraform.appvia.io_configurations.yaml charts/terranetes-controller/crds/terraform.appvia.io_contexts.yaml charts/terranetes-controller/crds/terraform.appvia.io_plans.yaml charts/terranetes-controller/crds/terraform.appvia.io_policies.yaml charts/terranetes-controller/crds/terraform.appvia.io_providers.yaml charts/terranetes-controller/crds/terraform.appvia.io_revisions.yaml deploy/webhooks/manifests.yaml
Package register generated by go-bindata.// sources: charts/terranetes-controller/crds/terraform.appvia.io_cloudresources.yaml charts/terranetes-controller/crds/terraform.appvia.io_configurations.yaml charts/terranetes-controller/crds/terraform.appvia.io_contexts.yaml charts/terranetes-controller/crds/terraform.appvia.io_plans.yaml charts/terranetes-controller/crds/terraform.appvia.io_policies.yaml charts/terranetes-controller/crds/terraform.appvia.io_providers.yaml charts/terranetes-controller/crds/terraform.appvia.io_revisions.yaml deploy/webhooks/manifests.yaml
utils/preload/eks/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.

Jump to

Keyboard shortcuts

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