Open
Description
Community Note
- Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
- Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for issue followers and do not help prioritize the request
- If you are interested in working on this issue or have submitted a pull request, please leave a comment
The current repository structure is pretty difficult to handle for new contributors as-it deviate a lot from the default @backstage/create-app
boiler plate. Having the Backstage app untracked in the repository complicates the collaboration when many developers are work on the code base.
What is the outcome that you are trying to reach?
Describe the solution you would like
Implement the Backstage Community Plugins repository structure and CI pipeline to managed the AWS Harmonix plugin release.
Envisionned repo layout
|-- .yarn # Yarn 4.x
|-- containers
| |-- awstools # Container image definition of the CI/CD toolset
| |-- backstage # Container image definition of the Harmonix/Backstage application
| |-- postgresql # Container image definition of the PgVector extended PostgreSQL
| |-- hack # Known as Build scripts, contains scripts required for local development
|-- skeletons # Reusable directory structures for used by software-templates
| |-- cdk
| | |-- aws_ecs
| | |-- aws_eks
| | |-- aws_gen_ai_rag
| | |-- aws_rds
| | |-- aws_s3
| | |-- aws_secretsmanager
| | |-- aws_serverless_api
| | |-- aws_ecs
| |-- terraform
| | |-- aws_ecs
| |-- gitlab
| | |-- common # Shared pipelines
| | |-- saas # Gitlab SaaS runner auth "before_script"
| | |-- self-hosted # Gitlab Self-Hosted runner base auth
| |-- github # Future use
|-- software-templates
| |-- scaffolder-templates
| | |-- aws-basic-environment-provider
| | |-- aws-ecs-ec2-environment-provider
| | |-- aws-eks-environment-existing-cluster-provider
| | |-- aws-eks-environment-provider
| | |-- aws-environment
| | |-- aws-gen-ai-environment-provider
| | |-- aws-gen-ai-rag
| | |-- aws-rds-resource
| | |-- aws-s3-resource
| | |-- aws-secretsmanager-resource
| | |-- aws-serverless-environment-provider
| | |-- aws-tf-ecs-environment-provider
| | |-- example-eks-nodejs-rds-helm
| | |-- example-eks-nodejs-rds-kustomize
| | |-- example-nodejs-microservice
| | |-- example-nodejs-rds
| | |-- example-nodejs
| | |-- example-python-flask-eks
| | |-- example-python-flask
| | |-- example-serverless-rest-api
| | |-- example-springboot-eks
| | |-- example-springboot
| | |-- example-tf-nodejs
| | |-- all-templates.yaml
|-- website # Docusaurus documentation website
|-- workspaces
| |-- repo-tools # Copy of the [repository management](https://github.com/backstage/community-plugins/tree/main/workspaces/repo-tools)
| |-- harmonix
| | |-- packages
| | | |-- app # Reference plugins implementation in the Backstage frontend SPA
| | | |-- backend # Reference plugins implementation in the Backstage backend API
| | |-- plugins
| | | |-- aws-apps
| | | |-- aws-apps-backend
| | | |-- aws-apps-common
| | | |-- catalog-backend-module-aws-apps-entites-processor
| | | |-- scaffolder-backend-module-aws-apps
| | |-- platforms
| | | |-- basic-environment
| | | |-- common-contructs
| | | |-- ecs-ec2-environment
| | | |-- ecs-environment
| | | |-- eks-environment
| | | |-- gen-ai-enviroment
| | | |-- installer # Known as opa-platform
| | | |-- serverless-environment
Describe alternatives you have considered
Leverage traditional directory layout generated by the @backstage/create-app
and move plugins from backstage-plugins/plugins
directory to the classic plugins
directory.
Additional context
Relates to #116