radius-project / radius

Radius is a cloud-native, portable application platform that makes app development easier for teams building cloud-native apps.
https://radapp.io
Apache License 2.0
1.49k stars 96 forks source link

Investigate moving `hack/bicep-types-radius` generator to a separate repo or submodule #7986

Open sk593 opened 1 month ago

sk593 commented 1 month ago

Area for Improvement

We've discussed moving the hack/bicep-types-radius type generator to it's own repository and consuming that repo as a submodule [referred to as radius-generator in this issue]. We should investigate whether this is the right approach and the steps needed to make this compatible with the main Radius repository. There might also be some overlap between this and UDTs so we should also investigate if the work should be done together.

An alternative option is to rename the folder if we decide not to move this to a separate repo.

Observed behavior

No response

Desired behavior

This would work similar to how we generate AWS types now in the bicep-types-aws repository. We'd have a separate repository for the radius-generator code and then use the repository as a submodule to generate types in the main Radius repo.

This removes the dependency on the bicep-types submodules in the Radius repo. We use this submodule to help with type generation but that also means we need to keep it up to date and watch for breaking changes (this part is automated through dependabot right now). Having the Radius-type generator in a separate repo would decouple the main Radius repo and the dependent submodule.

Things to consider:

  1. We'd likely need to update the make generate script to initialize and pull from the new radius generator submodule
  2. We shouldn't reintroduce a 2-repository workstream again. We removed this when we moved to the official compiler. We should still handle generating and uploading types in the Radius repo. The Radius repo would simply use the radius-generator as a submodule when running make generate, during workflows, etc.

Proposed Fix

No response

rad Version

n/a

Operating system

No response

Additional context

No response

Would you like to support us?

AB#13442

radius-triage-bot[bot] commented 1 month ago

:wave: @sk593 Thanks for filing this issue.

A project maintainer will review this issue and get back to you soon.

We also welcome community contributions! If you would like to pick this item up sooner and submit a pull request, please visit our contribution guidelines and assign this to yourself by commenting "/assign" on this issue.

For more information on our triage process please visit our triage overview

radius-triage-bot[bot] commented 4 weeks ago

:+1: We've reviewed this issue and have agreed to add it to our backlog. Please subscribe to this issue for notifications, we'll provide updates when we pick it up.

We also welcome community contributions! If you would like to pick this item up sooner and submit a pull request, please visit our contribution guidelines and assign this to yourself by commenting "/assign" on this issue.

For more information on our triage process please visit our triage overview