q-shift / backstage-playground

2 stars 8 forks source link

Full bar options not displayed within the URL/catalog/default/component/quarkus using janus showcase image #1

Open cmoulliard opened 10 months ago

cmoulliard commented 10 months ago

Issue

This is still a mysterious for me why when we use rhdh (= janus backstage) with such a component CR

apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
  name: "my-quarkus-app"
  description: "A cool quarkus app"
  annotations:
    argocd/app-name: my-quarkus-app-dev
    backstage.io/kubernetes-id: my-quarkus-app
    backstage.io/kubernetes-namespace: my-quarkus-app-dev
    janus-idp.io/tekton: my-quarkus-app
    backstage.io/source-location: url:https://gitlab-gitlab.apps.cluster-r2lbv.sandbox1621.opentlc.com/development/my-quarkus-app
    backstage.io/techdocs-ref: url:https://gitlab-gitlab.apps.cluster-r2lbv.sandbox1621.opentlc.com/development/my-quarkus-app
    gitlab.com/project-slug: development/my-quarkus-app
    quay.io/repository-slug: "quayadmin/my-quarkus-app"
  tags:
    - java
    - quarkus
  links:
    - url: https://devspaces.apps.cluster-r2lbv.sandbox1621.opentlc.com/#https://gitlab-gitlab.apps.cluster-r2lbv.sandbox1621.opentlc.com/development/my-quarkus-app
      title: OpenShift Dev Spaces (VS Code)
      icon: web
    - url: https://devspaces.apps.cluster-r2lbv.sandbox1621.opentlc.com/#https://gitlab-gitlab.apps.cluster-r2lbv.sandbox1621.opentlc.com/development/my-quarkus-app?che-editor=che-incubator/che-idea/latest
      title: OpenShift Dev Spaces (JetBrains IntelliJ)
      icon: web
spec:
  type: service
  lifecycle: production
  owner: "user1"
  providesApis:
    - "my-quarkus-app"
---
apiVersion: backstage.io/v1alpha1
kind: API
metadata:
  name: "my-quarkus-app"
  description: "A cool quarkus app"
spec:
  type: openapi
  lifecycle: production
  owner: "user1"
  definition:
    $text: ./openapi.yaml

, then we can using theURL/catalog/default/component see within the bar: overview, topology, issues, ci, cd, etc while for us when we use the janus-idp image, we only see overview

Screenshot 2024-01-26 at 10 16 05

cmoulliard commented 10 months ago

Some hacking is needed as documented here when we use the Janus Helm chart https://github.com/janus-idp/backstage-showcase/blob/main/showcase-docs/dynamic-plugins.md#helm-deployment

cmoulliard commented 10 months ago

From Tom Coufal

Yup, the Janus helm chart is compatible with this if the image is Janus showcase based. We install/enable the plugins during an initContainer https://github.com/janus-idp/helm-backstage/blob/13af7ce76f6d6906a1780b6bbfac008392fd2b88/charts/backstage/values.yaml#L132

And we need the image to feature the loader script: https://github.com/janus-idp/backstage-showcase/blob/main/docker/install-dynamic-plugins.py

Which should already be in place for you if you based your image on Janus Showcase + use the Janus Helm chart with mostly default values.