giantswarm / roadmap

Giant Swarm Product Roadmap
https://github.com/orgs/giantswarm/projects/273
Apache License 2.0
3 stars 0 forks source link

Publish minimal default catalog for customer Backstage instances #3291

Closed marians closed 4 months ago

marians commented 8 months ago

Part of

One important building block for Backstage provided to customers is the catalog. The goal of this issue is to provide a common base catalog that can be published to all customers.

Roughly, the catalog should contain

We must decide whether the catalog data can be publicly accessible. If yes, this could help keep configuration simple. However, if required, the catalog should be pulled from a non-public place, using authentication.

The catalog data could also be modular and provided either publicly or privately, based on the sensitivity of the content.

### Tasks
- [x] Enhance backstage-catalog-importer to export customer catalogs
- [x] Decide how to publish and inject users into catalogs
- [x] Create automation for publishing the catalogs
marians commented 6 months ago

We have this PR in progress: https://github.com/giantswarm/backstage-catalog-importer/pull/155

Current todo

Some details should be left to an entity processor. For example, the default branch name, or whether the repository has a README.md file, are details I would like to avoid adding via backstage-catalog-importer, and instead use a processor.

marians commented 6 months ago

Some aftermath

These apps are missing the github repo URL:

marians commented 5 months ago

@gusevda I just checked our internal users catalog https://github.com/giantswarm/github/blob/main/catalog/users.yaml and found that it indeed contains email adresses. Do you know whether they are required for authentication/authorization? Could access work without them?

gusevda commented 5 months ago

@marians for authorization we use usernameMatchingUserEntityName resolver, so the email should not be needed. I don't think there are other places where it can be required. Will check the authorization without emails in the catalog and get back to you.

gusevda commented 5 months ago

@marians I tested authorization without email and it worked

marians commented 4 months ago

Found more things to improve:

marians commented 4 months ago

Done