66 lines
3.3 KiB
YAML
66 lines
3.3 KiB
YAML
|
|
apiVersion: backstage.io/v1alpha1
|
|
kind: Component
|
|
metadata:
|
|
name: demo-cyprus-1
|
|
description: 'demo-cyprus-1 — renovated onto the crucible platform orchestrator'
|
|
annotations:
|
|
gitea.kyndemo.live/project-slug: validate/demo-cyprus-1
|
|
gitea.kyndemo.live/repo-slug: validate/demo-cyprus-1
|
|
# The orchestrator names each environment's namespace ns-xxxxx at deploy time, so a
|
|
# namespace can never be known here -- pinning one only hides the workload. Omitted
|
|
# deliberately: the Kubernetes plugin then searches every namespace it is given.
|
|
#
|
|
# kubernetes-id matches the label the score-workload module propagates from the Score
|
|
# metadata.labels block. The previous selector, app.humanitec.io/name=..., was a
|
|
# Humanitec SaaS label that nothing on this platform has ever set.
|
|
backstage.io/kubernetes-id: demo-cyprus-1
|
|
backstage.io/techdocs-ref: dir:.
|
|
# Vestigial key names, live values. These drive the Orchestrator tab, which reads
|
|
# humanitec.dev/orgId and humanitec.dev/projectId; renaming the keys would break every
|
|
# entity already in the catalog, so the names stay and the values point at crucible.
|
|
humanitec.dev/orgId: crucible
|
|
# THE PROJECT IS THE APPLICATION. This was `apps-cluster`, a single project shared by
|
|
# every renovated app, which is why the Orchestrator tab on any one component listed the
|
|
# whole estate -- the tab shows a project's environments, and every app's environment
|
|
# lived in that one project. Now each app owns a project, so the tab shows this app's
|
|
# stages and nothing else. The deploy workflow creates the project, its runner rule and
|
|
# its environments on first deploy.
|
|
humanitec.dev/projectId: demo-cyprus-1
|
|
# The environments are now STAGES of this application -- dev, staging, prod -- rather
|
|
# than one environment named after the component.
|
|
humanitec.dev/appId: demo-cyprus-1
|
|
cjot.io/target-domain: apps
|
|
sonarqube.org/project-key: demo-cyprus-1
|
|
grafana/grafana-instance: "default"
|
|
grafana/alert-label-selector: "app=demo-cyprus-1"
|
|
grafana/dashboard-selector: "uid == 'otel-app-observability-v2'"
|
|
grafana.com/dashboard-url: "https://grafana.kyndemo.live/d/otel-app-observability-v2/opentelemetry-application-observability?orgId=1&var-app=demo-cyprus-1"
|
|
tags:
|
|
- platform-orchestrator
|
|
- renovation
|
|
links:
|
|
# console.humanitec.dev is the dead SaaS. This is the live crucible console, deep-linked
|
|
# to the per-application environment the deploy workflow creates.
|
|
- url: https://console.dev.orchestrator.crucible.kyndemo.live/orgs/crucible/projects/demo-cyprus-1/environments/dev
|
|
title: Orchestrator Console
|
|
icon: dashboard
|
|
- url: https://demo-cyprus-1.apps.dev.crucible.kyndemo.live
|
|
title: Live Application
|
|
icon: web
|
|
- url: https://gitea.kyndemo.live/validate/demo-cyprus-1
|
|
title: Source Repository
|
|
icon: github
|
|
- url: https://gitea.kyndemo.live/validate/demo-cyprus-1/actions
|
|
title: CI/CD Pipelines
|
|
icon: code
|
|
- url: https://grafana.kyndemo.live/d/otel-app-observability-v2/opentelemetry-application-observability?orgId=1&var-app=demo-cyprus-1
|
|
title: Grafana Dashboard
|
|
icon: dashboard
|
|
spec:
|
|
type: service
|
|
lifecycle: experimental
|
|
owner: platform-engineering
|
|
dependsOn:
|
|
- resource:default/cjot-aks
|