awslabs / app-development-for-backstage-io-on-aws

A developer portal to meet your Enterprise needs. Fast, secure, and at-scale.
https://opaonaws.io/
Apache License 2.0
158 stars 28 forks source link

Why we need environment provider?? #90

Closed mario-mui closed 1 month ago

mario-mui commented 1 month ago

Please describe your question here

Provide a link to the example/module related to the question

Additional context

Since we have environment entity, why we need environment provider, we can add environment provider info to environment.

Is it that, If we got environment provider, we can deploy application to different environment provider, like different account or region ?

z-sourcecode commented 1 month ago

Hi @mario-mui Thanks for reaching out!

We separate the environment from the actual infrastructure behind it, this is done for several reasons:

  1. developers can rely on the environment abstraction and don't have to reason about infra considerations
  2. the relationship between environment to environment provider is 1:N - you can have more than one provider attached to an environment - this is useful for several reasons - Serving your customers across multiple regions / accounts, having resiliency for your application and other use cases when an app requires more than single account/single region infrastructure.
  3. providers are not limited to AWS, you can actually build an environment that has a mix of providers

We hope this helps, you can read more on our architecture documentation https://opaonaws.io/docs/techdocs/architecture

We also have workgroup sessions for Q&A you can join , we actually have one today in 30 min. https://communityinviter.com/apps/platformers-community/platformers-community

Thanks.