-
Notifications
You must be signed in to change notification settings - Fork 3.9k
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
feat(decdk) prototype for declarative CDK (decdk) #1618
Commits on Jan 25, 2019
-
We can now generate JSON schema
Rico Huijbers committedJan 25, 2019 Configuration menu - View commit details
-
Copy full SHA for 2b42350 - Browse repository at this point
Copy the full SHA 2b42350View commit details
Commits on Jan 26, 2019
-
We can hydrate a CdkFormation model now
Rico Huijbers committedJan 26, 2019 Configuration menu - View commit details
-
Copy full SHA for 275ae10 - Browse repository at this point
Copy the full SHA 275ae10View commit details -
Rico Huijbers committed
Jan 26, 2019 Configuration menu - View commit details
-
Copy full SHA for 5d0141c - Browse repository at this point
Copy the full SHA 5d0141cView commit details
Commits on Jan 27, 2019
-
turn decdk to a self-contained transformer which depends on all cdk libraries to simplify usage. theoretically we would have been able to split decdk and the dependency closure, but keeping them monolithic right now is easier to work with and takes care of some issues related to resolving modules in client packages (e.g. we need to resolve transitive modules and that's annoying).
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for 1e1d6c2 - Browse repository at this point
Copy the full SHA 1e1d6c2View commit details -
schema generation improvements
- support enums - inherit interface members - use normal jsii FQNs for package names to keep things simple
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for f7a10c5 - Browse repository at this point
Copy the full SHA f7a10c5View commit details -
expand serializable set by ignoring optional non-serializable props
if an interface has non-serializable properties but they are optional, we can technically allow users to use the construct with the default value. this dramatically expands the set of available deconstructs.
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for 2780f90 - Browse repository at this point
Copy the full SHA 2780f90View commit details -
use type info during deserialization
- performs type checking - allows deserializing enums - in the future will allow deserializing IBucket-like objects -
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for f201e9b - Browse repository at this point
Copy the full SHA f201e9bView commit details -
support Fn::GetAtt for resources and constructs
if we see an Fn::GetAtt, we replace it with a synth-time lazy value which will resolve according to what is referenced. if GetAtt references a high level construct, the resolved value will be the value returned by a named property. otherwise, we just retain the original Fn::GetAtt. at the moment, this is only supported for strings.
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for f650a36 - Browse repository at this point
Copy the full SHA f650a36View commit details -
a new "resourceForPath(path)" method will get or create all the resources leading to a certain path in the api model. this can be used to easily define "routes" in the api and reuse the nodes in the tree. includes a refactor of how the root resource and normal resources share implementation (through an abstract base class, dah!)
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for a00ce86 - Browse repository at this point
Copy the full SHA a00ce86View commit details -
the ApiEventSource allows easily adding APIGW routes to a Lambda. upon first call, a new REST API resource will be created, and then routes will be added to it for each ApiEventSource associated with the lambda.
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for d3e9d07 - Browse repository at this point
Copy the full SHA d3e9d07View commit details -
initial implementation for a declarative surface for serverless functions, which is based on the SAM spec. the main difference between this API and the Lambda API is that this allows defining event sources declaratively when the function is initialized.
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for a8deea8 - Browse repository at this point
Copy the full SHA a8deea8View commit details -
- ECS/Fargate: one resource that synthesizes 38 - Queue with KMS encryption with auto-created key - SAM API events + dynamo table + GetAtt in Outputs - SAM with Queues: shows GetAtt for both resource and construct A script "./synth" instead of cdk.json
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for 63803e4 - Browse repository at this point
Copy the full SHA 63803e4View commit details -
support construct properties with references
If a construct has a property that references another construct, users can now use {Ref} to reference a construct of that type that was defined in the same template. The schema will only allow { Ref: ID }
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for c72ee74 - Browse repository at this point
Copy the full SHA c72ee74View commit details -
print warnings when constructs are not serializable
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for 272b9e9 - Browse repository at this point
Copy the full SHA 272b9e9View commit details -
deconstructing enum-like classes
Classes that have static methods/properties that return a type that matches the class type can be considered "enum-like" because they can be used like so: lambda.Runtime.NodeJS10 or: lambda.Code.asset('path') We are now deconstructing these to either a string (for the property case) or an object where the key is the method name and the value is an map of parameter names to values. This is actually something we can probably embed in the jsii spec, as it is a common pattern.
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for 39bb01a - Browse repository at this point
Copy the full SHA 39bb01aView commit details -
ecs: make ContainerImage an enum-like class
To enable deconstruction, turn ContainerImage to an enum-like class. This means that the "image" property needs to accept a concrete class instead of an interface. Seems like this won't hurt the model in any way.
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for f3910b8 - Browse repository at this point
Copy the full SHA f3910b8View commit details -
ecs: fix ctor signature of ContainerDefinition
in order to be able to deconstruct this, we expect ctors to have only three arguments: scope,id,props. split ContainerDefinitionOptions from ContainerDefinitionProps to allow reusing them in `addContainer`. also, move the logic of "linking" the container to the task definition into the ContainerDefinition class, so that "addContainer" is pure sugar and doesn't have special behavior. otherwise, we won't be able to use it declaratively.
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for 1061c97 - Browse repository at this point
Copy the full SHA 1061c97View commit details -
add a few more declarative examples
- ecs - lambda - pipelines(!)
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for eb8859b - Browse repository at this point
Copy the full SHA eb8859bView commit details -
allow Fn::GetAtt to be used for object refs too
Elad Ben-Israel committedJan 27, 2019 Configuration menu - View commit details
-
Copy full SHA for 701e243 - Browse repository at this point
Copy the full SHA 701e243View commit details
Commits on Jan 30, 2019
-
feat(aws-lambda): specify event sources upon initialization
Elad Ben-Israel committedJan 30, 2019 Configuration menu - View commit details
-
Copy full SHA for 2fe18db - Browse repository at this point
Copy the full SHA 2fe18dbView commit details -
fix(dynamodb): require partitionKey
A partition key is a required property of DynamoDB. BREAKING CHANGE: partitionKey is now required when defining a DynamoDB table. the method "addPartitionKey" has been removed.
Elad Ben-Israel committedJan 30, 2019 Configuration menu - View commit details
-
Copy full SHA for 5399145 - Browse repository at this point
Copy the full SHA 5399145View commit details -
add SimpleTable, which is a DynamoDB table with a default partition key of "ID: string". SimpleTable extends from Table and support all features.
Elad Ben-Israel committedJan 30, 2019 Configuration menu - View commit details
-
Copy full SHA for a208519 - Browse repository at this point
Copy the full SHA a208519View commit details -
decdk: support arbitrary classes
If a property accepts an interface type, deCDK will identify all types that implement it and will formulate a JSON schema that allows users to instantiate these types. For example lambda IEventSource: "events": [ { "DynamoEventSource": { "table": { "Ref": "Table" }, "props": { "startingPosition": "TrimHorizon" } } }, { "ApiEventSource": { "method": "GET", "path": "/hello" } }, { "ApiEventSource": { "method": "POST", "path": "/hello" } }, { "SnsEventSource": { "topic": { "Ref": "MyTopic" } } } ]
Elad Ben-Israel committedJan 30, 2019 Configuration menu - View commit details
-
Copy full SHA for 1f88881 - Browse repository at this point
Copy the full SHA 1f88881View commit details
Commits on Feb 5, 2019
-
Merge branch 'master' into offsite/declarative
Sam Goodwin committedFeb 5, 2019 Configuration menu - View commit details
-
Copy full SHA for 20f2ab7 - Browse repository at this point
Copy the full SHA 20f2ab7View commit details -
Update examples to declare dynamo partition and sort keys declaratvely
Sam Goodwin committedFeb 5, 2019 Configuration menu - View commit details
-
Copy full SHA for ae247ae - Browse repository at this point
Copy the full SHA ae247aeView commit details -
Sam Goodwin committed
Feb 5, 2019 Configuration menu - View commit details
-
Copy full SHA for a1cd517 - Browse repository at this point
Copy the full SHA a1cd517View commit details -
improve error reporting by tracking schema context
prints a nice error tree instead of a flat list
Elad Ben-Israel committedFeb 5, 2019 Configuration menu - View commit details
-
Copy full SHA for 0b94775 - Browse repository at this point
Copy the full SHA 0b94775View commit details -
Elad Ben-Israel committed
Feb 5, 2019 Configuration menu - View commit details
-
Copy full SHA for 7336a69 - Browse repository at this point
Copy the full SHA 7336a69View commit details -
basic, initial and insufficient unit test
Elad Ben-Israel committedFeb 5, 2019 Configuration menu - View commit details
-
Copy full SHA for d2a2618 - Browse repository at this point
Copy the full SHA d2a2618View commit details -
Merge remote-tracking branch 'origin/master' into offsite/declarative
Elad Ben-Israel committedFeb 5, 2019 Configuration menu - View commit details
-
Copy full SHA for 0f87854 - Browse repository at this point
Copy the full SHA 0f87854View commit details
Commits on Feb 7, 2019
-
- move examples to tools/decdk - rename decdk => decdk-schema - rename recdk => decdk - initial readme (still wip)
Elad Ben-Israel committedFeb 7, 2019 Configuration menu - View commit details
-
Copy full SHA for 6617a74 - Browse repository at this point
Copy the full SHA 6617a74View commit details
Commits on Feb 11, 2019
-
Merge remote-tracking branch 'origin/master' into offsite/declarative
Elad Ben-Israel committedFeb 11, 2019 Configuration menu - View commit details
-
Copy full SHA for 2ac9a85 - Browse repository at this point
Copy the full SHA 2ac9a85View commit details
Commits on Feb 12, 2019
-
Elad Ben-Israel committed
Feb 12, 2019 Configuration menu - View commit details
-
Copy full SHA for 4098f6b - Browse repository at this point
Copy the full SHA 4098f6bView commit details -
Elad Ben-Israel committed
Feb 12, 2019 Configuration menu - View commit details
-
Copy full SHA for a1ce99b - Browse repository at this point
Copy the full SHA a1ce99bView commit details -
apigateway: capitalize method names
and fix "api" event source
Elad Ben-Israel committedFeb 12, 2019 Configuration menu - View commit details
-
Copy full SHA for c2b219f - Browse repository at this point
Copy the full SHA c2b219fView commit details -
Elad Ben-Israel committed
Feb 12, 2019 Configuration menu - View commit details
-
Copy full SHA for e8c9cb9 - Browse repository at this point
Copy the full SHA e8c9cb9View commit details -
Elad Ben-Israel committed
Feb 12, 2019 Configuration menu - View commit details
-
Copy full SHA for f65d939 - Browse repository at this point
Copy the full SHA f65d939View commit details -
kwargs + snapshot tests against examples
Elad Ben-Israel committedFeb 12, 2019 Configuration menu - View commit details
-
Copy full SHA for c9b47fb - Browse repository at this point
Copy the full SHA c9b47fbView commit details -
Merge remote-tracking branch 'origin/master' into offsite/declarative
Elad Ben-Israel committedFeb 12, 2019 Configuration menu - View commit details
-
Copy full SHA for afac15b - Browse repository at this point
Copy the full SHA afac15bView commit details -
Merge branch 'master' into offsite/declarative
Elad Ben-Israel authoredFeb 12, 2019 Configuration menu - View commit details
-
Copy full SHA for a86d18d - Browse repository at this point
Copy the full SHA a86d18dView commit details
Commits on Feb 13, 2019
-
Merge remote-tracking branch 'origin/master' into offsite/declarative
Elad Ben-Israel committedFeb 13, 2019 Configuration menu - View commit details
-
Copy full SHA for e8650e9 - Browse repository at this point
Copy the full SHA e8650e9View commit details -
deconstruct kwargs in methods a little differently and respect requir…
…ed arguments
Elad Ben-Israel committedFeb 13, 2019 Configuration menu - View commit details
-
Copy full SHA for 8ce7e33 - Browse repository at this point
Copy the full SHA 8ce7e33View commit details -
Elad Ben-Israel committed
Feb 13, 2019 Configuration menu - View commit details
-
Copy full SHA for 938f1fe - Browse repository at this point
Copy the full SHA 938f1feView commit details -
update ecs and lambda examples
Elad Ben-Israel committedFeb 13, 2019 Configuration menu - View commit details
-
Copy full SHA for 6d7bbee - Browse repository at this point
Copy the full SHA 6d7bbeeView commit details -
Elad Ben-Israel committed
Feb 13, 2019 Configuration menu - View commit details
-
Copy full SHA for fb431e2 - Browse repository at this point
Copy the full SHA fb431e2View commit details -
Elad Ben-Israel committed
Feb 13, 2019 Configuration menu - View commit details
-
Copy full SHA for 1cb7165 - Browse repository at this point
Copy the full SHA 1cb7165View commit details -
add description in deps.js script + fix typo
Elad Ben-Israel committedFeb 13, 2019 Configuration menu - View commit details
-
Copy full SHA for 8fbdfe3 - Browse repository at this point
Copy the full SHA 8fbdfe3View commit details