Skip to content
This repository has been archived by the owner on Dec 19, 2023. It is now read-only.

janus-idp/backstage-operator

Repository files navigation

Hybrid Helm/Golang operator for Backstage prototype

Warning

This project is no longer actively maintained. The repository has been archived, and its contents are available for historical and reference purposes only.

Reconciler logic: https://github.com/operator-framework/helm-operator-plugins/blob/main/pkg/reconciler/reconciler.go Hybrid operators lacks documentation, see:

Setup

make init
make install

Run

Containerized

export IMG=quay.io/<foo>/<bar>:latest
make podman-build
make podman-push
make deploy

Inside OpenShift cluster using OperatorHub

1. build and push all images

VERSION=0.0.1-dev1 IMG=quay.io/<username>/janus-operator:$VERSION IMAGE_TAG_BASE=quay.io/<username>/janus-operator make build-push-all

2. add CatalogSource to OperatorHub

./bin/kustomize build config/operator-hub/ | oc apply -f -

3. Install RHDH-dev from OperatorHub using OpenShift Web Console

Locally

export WATCH_NAMESPACE=baz
make run

in VSCode:

  1. Edit namespace in .vscode/launch.json
  2. CTRL+SHIFT+D, run Launch Backstage Operator

Known issues

  • After first sync/install (before any upgrade call or reconcile), we need to set .upstream.postgresql.auth.existingSecret

Extra features on top of the Helm chart

  • global.clusterRouterBase is automaticaly populated with the cluster's ingress domain.