1+ backstage :
2+ appConfig :
3+ app :
4+ title : Backstack Kubecon 2025 NA Demo
5+ baseUrl : https://${CODESPACE_NAME}-443.${GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN}/
6+ packages : all
7+ extensions :
8+ - nav-item:search : false
9+ - nav-item:user-settings : false
10+ - nav-item:catalog : false
11+ - nav-item:scaffolder : false
12+ - entity-card:catalog/has-subcomponents : false
13+ - entity-card:catalog/depends-on-components : false
14+ - entity-card:catalog/depends-on-resources : false
15+ - page:catalog :
16+ config :
17+ path : /
18+ organization :
19+ name : Backstack
20+ backend :
21+ auth :
22+ externalAccess :
23+ - type : static
24+ options :
25+ token : k9lPknGFOGEiHSVuxo1PxKZ+8EfKXBkz
26+ subject : mcp-clients
27+ actions :
28+ pluginSources :
29+ - ' catalog'
30+ - ' crossplane'
31+ - ' kyverno'
32+ baseUrl : https://${CODESPACE_NAME}-443.${GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN}/
33+ listen :
34+ port : 7007
35+ csp :
36+ connect-src : ["'self'", 'http:', 'https:']
37+ cors :
38+ origin : https://${CODESPACE_NAME}-443.${GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN}/
39+ methods : [GET, HEAD, PATCH, POST, PUT, DELETE]
40+ credentials : true
41+ database :
42+ client : better-sqlite3
43+ connection : ' :memory:'
44+ reading :
45+ allow :
46+ - host : raw.githubusercontent.com
47+ integrations :
48+ github :
49+ - host : github.com
50+ token : ${GITHUB_TOKEN}
51+ techdocs :
52+ builder : ' local'
53+ generator :
54+ runIn : ' docker'
55+ publisher :
56+ type : ' local'
57+
58+ auth :
59+ experimentalDynamicClientRegistration :
60+ enabled : true
61+ providers :
62+ guest : {}
63+ github :
64+ development :
65+ clientId : ${GITHUB_CLIENT_ID}
66+ clientSecret : ${GITHUB_CLIENT_SECRET}
67+ signIn :
68+ resolvers :
69+ - resolver : usernameMatchingUserEntityName
70+
71+ catalog :
72+ import :
73+ entityFilename : catalog-info.yaml
74+ pullRequestBranchName : backstage-integration
75+ rules :
76+ - allow : [Component, System, API, Resource, Location, Template, User, Group]
77+ locations :
78+ - type : url
79+ target : https://github.com/vrabbi-backstage/tf-module-template/blob/main/catalog-info.yaml
80+ rules :
81+ - allow : [Template]
82+ - type : url
83+ target : https://github.com/vrabbi/test-ai-rules/blob/main/catalog-info.yaml
84+ rules :
85+ - allow : [Component]
86+ - type : file
87+ target : /app/backstage-org-config/users.yaml
88+ rules :
89+ - allow : [User, Group]
90+ permission :
91+ enabled : false
92+ kubernetesIngestor :
93+ mappings :
94+ namespaceModel : ' default'
95+ nameModel : ' name'
96+ titleModel : ' name'
97+ systemModel : ' namespace'
98+ referencesNamespaceModel : ' default'
99+ components :
100+ enabled : true
101+ taskRunner :
102+ frequency : 10
103+ timeout : 600
104+ excludedNamespaces :
105+ - kube-public
106+ - kube-system
107+ customWorkloadTypes : []
108+ disableDefaultWorkloadTypes : true
109+ onlyIngestAnnotatedResources : false
110+ crossplane :
111+ claims :
112+ ingestAllClaims : true
113+ xrds :
114+ convertDefaultValuesToPlaceholders : true
115+ enabled : true
116+ publishPhase :
117+ allowRepoSelection : false
118+ allowedTargets : ['github.com']
119+ target : github
120+ git :
121+ repoUrl : github.com?owner=${GITHUB_OWNER}&repo=${GITHUB_REPO}
122+ targetBranch : main
123+ taskRunner :
124+ frequency : 10
125+ timeout : 600
126+ ingestAllXRDs : true
127+ crossplane :
128+ enablePermissions : false
129+ kyverno :
130+ enablePermissions : false
131+ kubernetes :
132+ frontend :
133+ podDelete :
134+ enabled : true
135+ serviceLocatorMethod :
136+ type : ' singleTenant'
137+ clusterLocatorMethods :
138+ - type : ' config'
139+ clusters :
140+ - name : demo-cluster
141+ authProvider : ' serviceAccount'
142+ skipTLSVerify : true
143+ url : https://kubernetes.default.svc.cluster.local:443
144+ serviceAccountToken : ${KUBERNETES_SERVICE_ACCOUNT_TOKEN}
145+ proxy :
146+ endpoints :
147+ ' /github-raw ' :
148+ target : ' https://raw.githubusercontent.com'
149+ changeOrigin : true
150+ headers :
151+ Authorization : ' Token ${GITHUB_TOKEN}'
152+ ' /terraform-registry ' :
153+ target : ' https://registry.terraform.io'
154+ changeOrigin : true
155+ aiRules :
156+ allowedRuleTypes :
157+ - ' cursor'
158+ - ' copilot'
159+ # ! - 'cline'
160+ # ! - 'claude-code'
161+ defaultRuleTypes : [copilot]
162+ terraformScaffolder :
163+ useProxyForGitHub : true
164+ registryReferences :
165+ returnAllVersions : true
166+ namespaces :
167+ - terraform-aws-modules
168+ - vmware
169+ moduleReferences :
170+ - name : " ECR Module"
171+ url : " https://github.com/terraform-aws-modules/terraform-aws-ecr"
172+ refs :
173+ - " v3.1.0"
174+ description : " AWS ECR Module"
175+ - name : " VPC Module"
176+ url : " https://github.com/terraform-aws-modules/terraform-aws-vpc"
177+ refs :
178+ - " v6.0.1"
179+ description : " AWS VPC Module"
180+ extraEnvVars :
181+ - name : NODE_OPTIONS
182+ value : --no-node-snapshot
183+ - name : NODE_TLS_REJECT_UNAUTHORIZED
184+ value : " 0"
185+ extraVolumeMounts :
186+ - mountPath : /app/backstage-org-config
187+ name : backstage-org-config
188+ extraVolumes :
189+ - configMap :
190+ name : backstage-org-config
191+ name : backstage-org-config
192+ image :
193+ registry : ghcr.io
194+ repository : vrabbi/backstack-demo
195+ tag : 0.0.1
196+ replicas : 1
197+ ingress :
198+ annotations :
199+ cert-manager.io/cluster-issuer : my-ca-issuer
200+ enabled : true
201+ host : ${CODESPACE_NAME}-443.${GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN}
202+ path : /
203+ tls :
204+ enabled : true
205+ secretName : backstack-tls
206+ extraHosts :
207+ - name : localhost
208+ extraDeploy :
209+ - apiVersion : v1
210+ data :
211+ users.yaml : |
212+ ---
213+ apiVersion: backstage.io/v1alpha1
214+ kind: User
215+ metadata:
216+ name: ${GITHUB_USER}
217+ spec:
218+ memberOf: [guests]
219+ ---
220+ apiVersion: backstage.io/v1alpha1
221+ kind: User
222+ metadata:
223+ name: guest
224+ spec:
225+ memberOf: [guests]
226+ ---
227+ # https://backstage.io/docs/features/software-catalog/descriptor-format#kind-group
228+ apiVersion: backstage.io/v1alpha1
229+ kind: Group
230+ metadata:
231+ name: guests
232+ spec:
233+ type: team
234+ children: [kubernetes-auto-ingested]
235+ ---
236+ apiVersion: backstage.io/v1alpha1
237+ kind: Group
238+ metadata:
239+ name: kubernetes-auto-ingested
240+ spec:
241+ type: team
242+ children: []
243+ kind : ConfigMap
244+ metadata :
245+ name : backstage-org-config
0 commit comments