awslabs / harmonix

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

Add support for Gitlab.com (SaaS) #119

Open fjudith opened 1 month ago

fjudith commented 1 month ago

Community Note

Many potential adopters are not confortable to maintain their own Gitlab CI instance. However it seems acceptable to use the Gitlab. Software-as-a-Service platform including both repository, container registry, and CI runners which are managed and scallable.

What is the outcome that you are trying to reach?

Reduce the Harmonix platform footprint by leveraging Gitlab SaaS repository and CI runners to ease platform-engineering and developer collaboration.

Describe the solution you would like

Describe alternatives you have considered

None

Additional context

### Tasks
* [ ] Implement an option to select either Gitlab Community (on-premise) or Gitlab.com (SaaS) in the installation process.
* [ ] Create new `iac/roots/opa-platform` containing only the required resources for Gitlab.com deployment
  * [ ] **Platform/Environment role** and associated `/${dotenv.prefix}/platform-role` parameter store for Harmonix backend plugin and Gitlab SaaS runner
  * [ ] **Pipeline role** and associated `/${dotenv.prefix}/platform-role` parameter store for Gitlab SaaS runners
  * [ ] **IAM OpenId Provider** for Gitlab SaaS runner [doc](https://docs.gitlab.com/ee/ci/cloud_services/aws/) allow to assume the **Platform/Environment Role**.
  * [ ] **Secret** `opa-admin-gitlab-secrets` to store the Group Access Key that enables SaaS runners to push in generated git repositories
  * [ ] _Optional_: Container image(s)  to reduce the time spent on IaC tooling installation _(Should ideally be built using a scaffolded repo and stored in Gitlab Container Registry).
fjudith commented 1 month ago

We already implementd this feature in separated private repository and are open to submit a PR

z-sourcecode commented 1 month ago

@fjudith Thank you for considering to contribute back to Harmonix on AWS project. please submit the PR We"ll schedule a review as soon as we can. Your contribution is greatly appreciated!