Skip to content

Installation

Prerequisites

  • A Kubernetes cluster with Crossplane installed
  • kubectl configured to access your cluster
  • A running Keycloak instance

Install the Provider

Apply the following manifest to install provider-keycloak:

apiVersion: pkg.crossplane.io/v1
kind: Provider
metadata:
  name: provider-keycloak
spec:
  package: xpkg.upbound.io/crossplane-contrib/provider-keycloak:<version>

Replace <version> with the desired release version (e.g., v2.22.0). See GitHub Releases for available versions.

Verify Installation

# Check that the provider pod is running
kubectl get pods -n crossplane-system | grep keycloak

# Check that CRDs are installed
kubectl get crd | grep keycloak.crossplane.io

DeploymentRuntimeConfig (Optional)

To customize the provider deployment (e.g., enable external secret stores), create a DeploymentRuntimeConfig:

apiVersion: pkg.crossplane.io/v1beta1
kind: DeploymentRuntimeConfig
metadata:
  name: runtimeconfig-provider-keycloak
spec:
  deploymentTemplate:
    spec:
      selector: {}
      template:
        spec:
          containers:
            - name: package-runtime
              args:
                - --enable-external-secret-stores

Reference it in the Provider resource:

apiVersion: pkg.crossplane.io/v1
kind: Provider
metadata:
  name: provider-keycloak
spec:
  package: xpkg.upbound.io/crossplane-contrib/provider-keycloak:<version>
  runtimeConfigRef:
    name: runtimeconfig-provider-keycloak

Next Steps