Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AWS Resource Model #73

Closed
eladb opened this issue Feb 11, 2019 · 2 comments
Closed

AWS Resource Model #73

eladb opened this issue Feb 11, 2019 · 2 comments
Labels
effort/large Significant effort required for implementation status/done Implementation complete

Comments

@eladb
Copy link
Contributor

eladb commented Feb 11, 2019

We are seeing an increasing value in being able to reflect on the resource model exposed by the AWS Construct Library. Two recent examples are decdk and the new API reference. In both cases, we utilize jsii-reflect to reflect on the AWS Construct Library as a whole and based on the conventions and patterns we have in the library (enforced by awslint) we are able to reason about the various resource constructs exposed by the library, their properties, attributes, metrics, alarms, grants.

It would be useful to extract these heuristics into a separate library that will offer a rich reflection API for the resource model (think jsii-reflect but with AWS semantics).

A few ideas/notes:

  • The model should be serializable and published to a well-known location such as our reference website (similar to the CloudFormation spec). This will allow people to build tools around it.
  • The library should offer rich API that will allow traversal of the model and through to the type system (e.g. it should be easy to get the jsii-reflect.ClassType object of a construct.
  • As much as possible, we should try to reuse the heuristics between awslint and this new library. It's a bit of a chicken and egg problem (awslint enforces the conventions that this library later depends on), but it might be possible to expose stuff from awslint so that this library can reuse.
  • There are already heuristics spread across decdk and API Reference that we can extract and move to this shared library.
@eladb
Copy link
Contributor Author

eladb commented Feb 13, 2019

copy @rix0rrr

@eladb eladb changed the title AWS Resource Model Library AWS Resource Model Apr 17, 2019
@eladb eladb transferred this issue from aws/aws-cdk Jan 23, 2020
@eladb eladb added the effort/large Significant effort required for implementation label Jan 23, 2020
This was referenced Jan 23, 2020
@eladb eladb removed their assignment Jan 23, 2020
@eladb eladb added the status/proposed Newly proposed RFC label Jun 22, 2020
@mrgrain
Copy link
Contributor

mrgrain commented Oct 27, 2023

@mrgrain mrgrain closed this as completed Oct 27, 2023
@mrgrain mrgrain added status/done Implementation complete and removed status/proposed Newly proposed RFC labels Oct 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
effort/large Significant effort required for implementation status/done Implementation complete
Projects
None yet
Development

No branches or pull requests

2 participants