provider-cloudflare

module
v0.0.0-...-0a20a09 Latest Latest
Warning

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

Go to latest
Published: Feb 26, 2026 License: Apache-2.0

README

Upjet-based Crossplane provider for Cloudflare

Go Report Card

Provider Cloudflare is a Crossplane provider that is built using Upjet and exposes XRM-conformant managed resources for Cloudflare.

Getting Started

Installation

Install the provider into your cluster (replace the image tag with a released version if needed):

kubectl crossplane install provider ghcr.io/prolixalias/provider-cloudflare:v0.0.0

Or use the installation manifest and apply with kubectl apply -f examples/install.yaml.

Developing

  • Code generation (after changing config):
    go run cmd/generator/main.go "$PWD"
    
  • Run locally (out-of-cluster):
    make run
    
  • Build and test:
    make build
    make test
    
  • Build for both linux/amd64 and linux/arm64 (e.g. for clusters that need amd64; default make build on Mac only produces the host’s arch):
    VERSION=v0.0.0 make build.multiarch.linux
    
    The Makefile runs binfmt.install first so QEMU is available for cross-arch Docker builds (e.g. amd64 on arm64). If that step fails (e.g. no --privileged docker), run manually: docker run --privileged --rm tonistiigi/binfmt --install all
  • Build and push multiarch package to ghcr.io (requires docker login ghcr.io):
    VERSION=v0.0.0 make push.multiarch
    
  • Tunnel (TrustTunnelCloudflared) – This resource uses the Terraform Plugin Framework async connector and requires the provider image to include the Terraform provider binary. Build and push the terraform-external image:
    VERSION=v0.0.2 make build.terraform-external.multiarch.linux
    VERSION=v0.0.2 make push.terraform-external.multiarch
    
    Use that tag (e.g. v0.0.2) in your cluster; the default make push.multiarch image is native (no Terraform binary) and will report "cannot retrieve framework provider" for Tunnel.
  • Reviewable (generate, lint, test):
    make reviewable
    

Contributing

Getting help

License

This provider is released under the Apache 2.0 license with NOTICE.

Directories

Path Synopsis
apis
cluster/v1beta1
Package v1beta1 contains the core resources of the cloudflare upjet provider.
Package v1beta1 contains the core resources of the cloudflare upjet provider.
namespaced/v1beta1
Package v1beta1 contains the core resources of the cloudflare upjet provider (namespaced).
Package v1beta1 contains the core resources of the cloudflare upjet provider (namespaced).
cmd
generator command
provider command
internal
version
Package version contains the version of this provider
Package version contains the version of this provider

Jump to

Keyboard shortcuts

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