provider-harbor

module
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Feb 7, 2025 License: Apache-2.0

README

Provider Harbor

provider-harbor is a Crossplane provider that is built using Upjet and exposes XRM-conformant managed resources for the Harbor API.

Getting Started

Install the provider by using the following command after changing the image tag to the latest release:

up ctp provider install globallogicuki/provider-harbor:v0.1.0

Alternatively, you can use declarative installation:

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

Notice that in this example Provider resource is referencing ControllerConfig with debug enabled.

You can see the API reference here.

Provider Config

Note, that the ProviderConfig uses basic auth and requires a local user. A robot user can be used, but has restrictions around what can be created (e.g. a Robot cannot create other Robots).

Developing

Run code-generation pipeline:

go run cmd/generator/main.go "$PWD"

Run against a Kubernetes cluster:

make run

Build, push, and install:

make all

Build binary:

make build

Report a Bug

For filing bugs, suggesting improvements, or requesting new features, please open an issue.

Directories

Path Synopsis
Package apis contains Kubernetes API for the provider.
Package apis contains Kubernetes API for the provider.
config/v1alpha1
+kubebuilder:object:generate=true +groupName=config.harbor.crossplane.io +versionName=v1alpha1
+kubebuilder:object:generate=true +groupName=config.harbor.crossplane.io +versionName=v1alpha1
garbagecollection/v1alpha1
+kubebuilder:object:generate=true +groupName=garbagecollection.harbor.crossplane.io +versionName=v1alpha1
+kubebuilder:object:generate=true +groupName=garbagecollection.harbor.crossplane.io +versionName=v1alpha1
group/v1alpha1
+kubebuilder:object:generate=true +groupName=group.harbor.crossplane.io +versionName=v1alpha1
+kubebuilder:object:generate=true +groupName=group.harbor.crossplane.io +versionName=v1alpha1
interrogationservices/v1alpha1
+kubebuilder:object:generate=true +groupName=interrogationservices.harbor.crossplane.io +versionName=v1alpha1
+kubebuilder:object:generate=true +groupName=interrogationservices.harbor.crossplane.io +versionName=v1alpha1
label/v1alpha1
+kubebuilder:object:generate=true +groupName=label.harbor.crossplane.io +versionName=v1alpha1
+kubebuilder:object:generate=true +groupName=label.harbor.crossplane.io +versionName=v1alpha1
preheatinstance/v1alpha1
+kubebuilder:object:generate=true +groupName=preheatinstance.harbor.crossplane.io +versionName=v1alpha1
+kubebuilder:object:generate=true +groupName=preheatinstance.harbor.crossplane.io +versionName=v1alpha1
project/v1alpha1
+kubebuilder:object:generate=true +groupName=project.harbor.crossplane.io +versionName=v1alpha1
+kubebuilder:object:generate=true +groupName=project.harbor.crossplane.io +versionName=v1alpha1
purgeauditlog/v1alpha1
+kubebuilder:object:generate=true +groupName=purgeauditlog.harbor.crossplane.io +versionName=v1alpha1
+kubebuilder:object:generate=true +groupName=purgeauditlog.harbor.crossplane.io +versionName=v1alpha1
registry/v1alpha1
+kubebuilder:object:generate=true +groupName=registry.harbor.crossplane.io +versionName=v1alpha1
+kubebuilder:object:generate=true +groupName=registry.harbor.crossplane.io +versionName=v1alpha1
robotaccount/v1alpha1
+kubebuilder:object:generate=true +groupName=robotaccount.harbor.crossplane.io +versionName=v1alpha1
+kubebuilder:object:generate=true +groupName=robotaccount.harbor.crossplane.io +versionName=v1alpha1
tasks/v1alpha1
+kubebuilder:object:generate=true +groupName=tasks.harbor.crossplane.io +versionName=v1alpha1
+kubebuilder:object:generate=true +groupName=tasks.harbor.crossplane.io +versionName=v1alpha1
user/v1alpha1
+kubebuilder:object:generate=true +groupName=user.harbor.crossplane.io +versionName=v1alpha1
+kubebuilder:object:generate=true +groupName=user.harbor.crossplane.io +versionName=v1alpha1
v1alpha1
Package v1alpha1 contains the core resources of the harbor jet provider.
Package v1alpha1 contains the core resources of the harbor jet provider.
v1beta1
Package v1beta1 contains the core resources of the harbor upjet provider.
Package v1beta1 contains the core resources of the harbor upjet provider.
cmd
internal

Jump to

Keyboard shortcuts

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