Skip to content

Installation Types

Multi Tenant Configuration

Default installation is that operator is running within own namespace and controls websites within their namespaces defined by CRDs.

One Tenant Configuration

It's possible to completely disable Custom Resource Definition and define only one website that will be managed.

Operator needs to have defined these properties:

apiVersion: v1
kind: ConfigMap
metadata:
  name: spaship-operator-config
data:
  APP_OPERATOR_ROUTER_MODE: 'ingress'
  APP_OPERATOR_WEBSITE_DOMAIN: 'minikube.info'
  APP_OPERATOR_PROVIDER_ENV_ENABLED: 'true'
  APP_OPERATOR_PROVIDER_CRD_ENABLED: 'false'
  WEBSITE_NAMESPACE: 'spaship-examples'
  WEBSITE_NAME: 'simple'
  WEBSITE_GITURL: 'https://github.com/spaship/spaship-examples.git'
  WEBSITE_SSLVERIFY: 'true'                             # Optional
  WEBSITE_BRANCH: 'main'                                # Optional
  WEBSITE_CONFIG_DIR: 'websites/02-advanced'            # Optional
  WEBSITE_WEBHOOK_SECRET: 'CHANGEIT'
  WEBSITE_PREVIEWS: 'true'

Then Operator manage the website within same namespace as is installed.

Namespaced Installation

For limited installation without ClusterRole permissions it's possible to install the Operator within the namespace with Role instead of ClusterRole. It's up to configuration if Multi or One tenant way of management is used. Both are supported.