provider-ceph

module
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Feb 27, 2024 License: Apache-2.0

README

provider-ceph

provider-ceph is a minimal Crossplane Provider that reconciles Bucket CRs with multiple external S3 backends such as Ceph. It comes with the following features:

  • A ProviderConfig type that represents a single S3 backend (such as Ceph) and points to a credentials Secret for access to that backend.
  • A controller that reconciles ProviderConfig objects which represent S3 backends and stores client details for each backend.
  • A Bucket resource type that represents an S3 bucket.
  • A controller that observes Bucket objects and reconciles these objects with the S3 backends.

Developing

Spin up the test environment, but with provider-ceph running locally in your terminal:

make dev

After you've made some changes, kill (Ctrl+C) the existing provider-ceph and re-run it:

make run
Debugging

Spin up the test environment, but with provider-ceph running locally in your terminal:

make mirrord.cluster mirrord.run

For debugging please install mirrord plugin in your IDE of choice.

Refer to Crossplane's CONTRIBUTING.md file for more information on how the Crossplane community prefers to work. The Provider Development guide may also be of use.

Getting Started

Install Crossplane in you Kubernetes cluster

Install the provider by using the Upbound CLI after changing the image tag to the latest release:

up ctp provider install xpkg.upbound.io/linode/provider-ceph:v0.1.0

Alternatively, you can use declarative installation:

cat <<EOF | kubectl apply -f -
apiVersion: pkg.crossplane.io/v1
kind: Provider
metadata:
  name: linode-provider-ceph
spec:
  package: xpkg.upbound.io/linode/provider-ceph:v0.1.0
EOF

See WEBHOOKS.md for instructions on how to enable webhooks.

Contact

Directories

Path Synopsis
Package apis contains Kubernetes API for the Ceph provider.
Package apis contains Kubernetes API for the Ceph provider.
provider-ceph
Package provider-ceph contains group provider-ceph API versions
Package provider-ceph contains group provider-ceph API versions
provider-ceph/v1alpha1
Package v1alpha1 contains the v1alpha1 group Sample resources of the Ceph provider.
Package v1alpha1 contains the v1alpha1 group Sample resources of the Ceph provider.
v1alpha1
Package v1alpha1 contains the core resources of the Ceph provider.
Package v1alpha1 contains the core resources of the Ceph provider.
cmd
internal
backendstore/backendstorefakes
Code generated by counterfeiter.
Code generated by counterfeiter.
otel
Package otel provides tools to interact with the opentelemetry golang sdk
Package otel provides tools to interact with the opentelemetry golang sdk
otel/traces
Package traces provides helper functions for tracing with OpenTelemetry SDK.
Package traces provides helper functions for tracing with OpenTelemetry SDK.
rgw
utils/randomstring
Package randomstring provides utilities for generating random strings.
Package randomstring provides utilities for generating random strings.
utils/randomstring/randomstringfakes
Code generated by counterfeiter.
Code generated by counterfeiter.

Jump to

Keyboard shortcuts

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