backstage-demo-janus-showcase/app-config.dynamic-plugins.yaml
Med Mouine 089a1cd890 config
2024-04-18 10:23:04 -04:00

399 lines
12 KiB
YAML

## Arbitrary app-config for backwards compatible UI configuration - now with dynamic plugins
dynamicPlugins:
frontend:
# backstage.plugin-azure-devops:
# mountPoints:
# - mountPoint: entity.page.ci/cards
# importName: EntityAzurePipelinesContent
# config:
# layout:
# gridColumn: "1 / -1"
# if:
# allOf:
# - isAzureDevOpsAvailable
# - mountPoint: entity.page.pull-requests/cards
# importName: EntityAzurePullRequestsContent
# config:
# layout:
# gridColumn: "1 / -1"
# if:
# allOf:
# - isAzureDevOpsAvailable
# backstage.plugin-dynatrace:
# mountPoints:
# - mountPoint: entity.page.monitoring/cards
# importName: DynatraceTab
# config:
# layout:
# gridColumn: "1 / -1"
# if:
# allOf:
# - isDynatraceAvailable
backstage.plugin-github-actions:
mountPoints:
- mountPoint: entity.page.ci/cards
importName: EntityGithubActionsContent
config:
layout:
gridColumn: "1 / -1"
if:
allOf:
- isGithubActionsAvailable
# backstage.plugin-github-issues:
# mountPoints:
# - mountPoint: entity.page.issues/cards
# importName: GithubIssuesCard
# config:
# layout:
# gridColumn: "1 / -1"
# if:
# allOf:
# - hasAnnotation: github.com/project-slug
backstage.plugin-jenkins:
mountPoints:
- mountPoint: entity.page.ci/cards
importName: EntityJenkinsContent
config:
layout:
gridColumn: "1 / -1"
if:
allOf:
- isJenkinsAvailable
backstage.plugin-kubernetes:
mountPoints:
- mountPoint: entity.page.kubernetes/cards
importName: EntityKubernetesContent
config:
layout:
gridColumn: "1 / -1"
if:
anyOf:
- hasAnnotation: backstage.io/kubernetes-id
- hasAnnotation: backstage.io/kubernetes-namespace
# backstage.plugin-lighthouse:
# appIcons:
# - name: lighthouse
# importName: LighthouseIcon
# dynamicRoutes:
# - path: /lighthouse
# importName: LighthousePage
# menuItem:
# icon: lighthouse
# text: Lighthouse
# mountPoints:
# - mountPoint: entity.page.overview/cards
# importName: EntityLastLighthouseAuditCard
# config:
# layout:
# gridColumnEnd:
# md: "span 6"
# xs: "span 12"
# if:
# allOf:
# - isLighthouseAvailable
pagerduty.backstage-plugin:
mountPoints:
- mountPoint: entity.page.overview/cards
importName: EntityPagerDutyCard
config:
layout:
gridColumnEnd:
md: "span 6"
xs: "span 12"
if:
allOf:
- isPluginApplicableToEntity
# backstage.plugin-sonarqube:
# mountPoints:
# - mountPoint: entity.page.overview/cards
# importName: EntitySonarQubeCard
# config:
# layout:
# gridColumnEnd:
# lg: "span 4"
# md: "span 6"
# xs: "span 12"
# if:
# allOf:
# - isSonarQubeAvailable
# immobiliarelabs.backstage-plugin-gitlab:
# mountPoints:
# - mountPoint: entity.page.overview/cards
# importName: EntityGitlabMergeRequestStatsCard
# config:
# layout:
# gridColumnEnd:
# lg: "span 4"
# md: "span 6"
# xs: "span 12"
# if:
# allOf:
# - isGitlabAvailable
# - mountPoint: entity.page.ci/cards
# importName: EntityGitlabPipelinesTable
# config:
# layout:
# gridColumn: "1 / -1"
# if:
# allOf:
# - isGitlabAvailable
# - mountPoint: entity.page.issues/cards
# importName: EntityGitlabIssuesTable
# config:
# layout:
# gridColumn: "1 / -1"
# if:
# allOf:
# - isGitlabAvailable
# - mountPoint: entity.page.pull-requests/cards
# importName: EntityGitlabMergeRequestsTable
# config:
# layout:
# gridColumn: "1 / -1"
# if:
# allOf:
# - isGitlabAvailable
# janus-idp.backstage-plugin-acr:
# mountPoints:
# - mountPoint: entity.page.image-registry/cards
# importName: AcrPage
# config:
# layout:
# gridColumn: 1 / -1
# if:
# anyOf:
# - isAcrAvailable
# janus-idp.backstage-plugin-jfrog-artifactory:
# mountPoints:
# - mountPoint: entity.page.image-registry/cards
# importName: JfrogArtifactoryPage
# config:
# layout:
# gridColumn: 1 / -1
# if:
# anyOf:
# - isJfrogArtifactoryAvailable
# janus-idp.backstage-plugin-nexus-repository-manager:
# mountPoints:
# - mountPoint: entity.page.image-registry/cards
# importName: NexusRepositoryManagerPage
# config:
# layout:
# gridColumn: 1 / -1
# if:
# anyOf:
# - isNexusRepositoryManagerAvailable
# janus-idp.backstage-plugin-ocm:
# appIcons:
# - name: ocmIcon
# importName: OcmIcon
# dynamicRoutes:
# - path: /ocm
# importName: OcmPage
# menuItem:
# icon: ocmIcon
# text: Clusters
# mountPoints:
# - mountPoint: entity.page.overview/context
# importName: ClusterContextProvider
# - mountPoint: entity.page.overview/cards
# importName: ClusterAvailableResourceCard
# config:
# layout:
# gridColumnEnd:
# lg: "span 4"
# md: "span 6"
# xs: "span 12"
# if:
# allOf:
# - isKind: resource
# - isType: kubernetes-cluster
# - mountPoint: entity.page.overview/cards
# importName: ClusterInfoCard
# config:
# layout:
# gridColumnEnd:
# lg: "span 4"
# md: "span 6"
# xs: "span 12"
# if:
# allOf:
# - isKind: resource
# - isType: kubernetes-cluster
# janus-idp.backstage-plugin-quay:
# mountPoints:
# - mountPoint: entity.page.image-registry/cards
# importName: QuayPage
# config:
# layout:
# gridColumn: 1 / -1
# if:
# anyOf:
# - isQuayAvailable
janus-idp.backstage-plugin-tekton:
mountPoints:
- mountPoint: entity.page.ci/cards
importName: TektonCI
config:
layout:
gridColumn: "1 / -1"
if:
allOf:
- isTektonCIAvailable
janus-idp.backstage-plugin-topology:
mountPoints:
- mountPoint: entity.page.topology/cards
importName: TopologyPage
config:
layout:
gridColumn: "1 / -1"
height: 75vh
if:
anyOf:
- hasAnnotation: backstage.io/kubernetes-id
- hasAnnotation: backstage.io/kubernetes-namespace
roadiehq.backstage-plugin-argo-cd:
mountPoints:
- mountPoint: entity.page.overview/cards
importName: EntityArgoCDOverviewCard
config:
layout:
gridColumnEnd:
lg: "span 8"
xs: "span 12"
if:
allOf:
- isArgocdAvailable
- mountPoint: entity.page.cd/cards
importName: EntityArgoCDHistoryCard
config:
layout:
gridColumn: "1 / -1"
if:
allOf:
- isArgocdAvailable
# roadiehq.backstage-plugin-datadog:
# mountPoints:
# - mountPoint: entity.page.monitoring/cards
# importName: EntityDatadogContent
# config:
# layout:
# gridColumn: "1 / -1"
# if:
# allOf:
# - isDatadogAvailable
roadiehq.backstage-plugin-github-insights:
mountPoints:
- mountPoint: entity.page.overview/cards
importName: EntityGithubInsightsComplianceCard
config:
layout:
gridColumnEnd:
lg: "span 4"
md: "span 6"
xs: "span 12"
if:
allOf:
- isGithubInsightsAvailable
# roadiehq.backstage-plugin-github-pull-requests:
# mountPoints:
# - mountPoint: entity.page.overview/cards
# importName: EntityGithubPullRequestsOverviewCard
# config:
# layout:
# gridColumnEnd:
# lg: "span 4"
# md: "span 6"
# xs: "span 12"
# if:
# allOf:
# - isGithubPullRequestsAvailable
# - mountPoint: entity.page.pull-requests/cards
# importName: EntityGithubPullRequestsContent
# config:
# layout:
# gridColumn: "1 / -1"
# if:
# allOf:
# - isGithubPullRequestsAvailable
# roadiehq.backstage-plugin-jira:
# mountPoints:
# - mountPoint: entity.page.issues/cards
# importName: EntityJiraOverviewCard
# config:
# layout:
# gridColumn: "1 / -1"
# if:
# allOf:
# - isJiraAvailable
# roadiehq.backstage-plugin-security-insights:
# mountPoints:
# - mountPoint: entity.page.overview/cards
# importName: EntityDependabotAlertsCard
# config:
# layout:
# gridColumnEnd:
# lg: "span 4"
# md: "span 6"
# xs: "span 12"
# if:
# allOf:
# - isSecurityInsightsAvailable
backstage.plugin-techdocs:
routeBindings:
targets:
- importName: techdocsPlugin
bindings:
- bindTarget: catalogPlugin.externalRoutes
bindMap:
viewTechDoc: techdocsPlugin.routes.docRoot
- bindTarget: scaffolderPlugin.externalRoutes
bindMap:
viewTechDoc: techdocsPlugin.routes.docRoot
dynamicRoutes:
- path: /docs
importName: TechDocsIndexPage
menuItem:
icon: docs
text: Docs
- path: /docs/:namespace/:kind/:name/*
importName: TechDocsReaderPage
mountPoints:
- mountPoint: entity.page.docs/cards
importName: EntityTechdocsContent
config:
layout:
gridColumn: "1 / -1"
if:
allOf:
- isTechDocsAvailable
- mountPoint: search.page.results
importName: TechDocsSearchResultListItem
- mountPoint: search.page.filters
importName: TechdocsSearchFilter
- mountPoint: search.page.types
importName: techdocsSearchType
config:
props:
name: Documentation
icon: docs
# backstage.plugin-tech-radar:
# apiFactories:
# - importName: TechRadarApi
# appIcons:
# - name: techRadar
# importName: TechRadarIcon
# dynamicRoutes:
# - path: /tech-radar
# importName: TechRadarPage
# menuItem:
# icon: techRadar
# text: Tech Radar
# config:
# props:
# width: 1500
# height: 800
# janus-idp.backstage-plugin-analytics-provider-segment:
# apiFactories:
# - importName: SegmentAnalyticsApi