argonaut

command module
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Aug 4, 2021 License: Apache-2.0 Imports: 11 Imported by: 0

README

Argonaut

Argonaut is a Kubernetes Operator leveraging Cloudflare services to "ingress" traffic to your workloads.

Turn's an opinionated CRD into automatically configured Cloudflare services and creates a managed Deployment of cloudflared container image configured to tunnel traffic to your workload.

Example CRD

apiVersion: argonaut.metalabs.no/v1beta1
kind: Argonaut
metadata:
  name: example
  namespace: example
spec:
  argoTunnelName: "example"
  cfAuthSecret:
    name: example
    namespace: example
  ingress:
    - hostname: test.example.com
      serviceSelector:
        matchLabels:
          app: nginx

Prerequisites for using this is a Cloudflare account, an existing DNS Zone and a API Token with appropriate permissions. This information should put inside a Kubernetes Secret with this structure, which is referenced in cfAuthSecret above:

apiVersion: v1
kind: Secret
metadata:
  name: example
  namespace: example
data:
  accountid: <redacted>
  email: <redacted>
  token: <redacted>
kind: Secret
type: Opaque

Status

DO NOT USE THIS FOR ANYTHING IMPORTANT, THIS IS VERY MUCH A WORK IN PROGRESS

I'm just figuring out what and how to build it here. Learning kubebuilder and controller-runtime as we go.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
api
v1beta1
Package v1beta1 contains API Schema definitions for the argonaut v1beta1 API group +kubebuilder:object:generate=true +groupName=argonaut.metalabs.no
Package v1beta1 contains API Schema definitions for the argonaut v1beta1 API group +kubebuilder:object:generate=true +groupName=argonaut.metalabs.no

Jump to

Keyboard shortcuts

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