forked from aws/aws-cdk
-
Notifications
You must be signed in to change notification settings - Fork 0
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
Merge #22
Merged
Merged
Merge #22
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Support `Input Types` for code-first approach. `Input Types` are special types of Intermediate Types in CDK. <details> <summary>Desired GraphQL Input Type</summary> ```gql input Review { stars: Int! commentary: String } ``` </details> The above GraphQL Input Type can be expressed in CDK as the following: <details> <summary>CDK Code</summary> ```ts const review = new appsync.InputType('Review', { definition: { stars: GraphqlType.int({ isRequired: true }), commentary: GraphqlType.string(), }, }); api.addType(review); ``` </details> ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…10081) The execution role for the CodeBuild StartBuild task is missing permissions to check the status of the running build. It results in a timeout of the step functions. Adding `codebuild:BatchGetBuilds` and `codebuild:BatchGetReports` following this [AWS news blog article](https://aws.amazon.com/blogs/aws/new-building-a-continuous-integration-workflow-with-step-functions-and-aws-codebuild/) solves the issue. Closes #8043 ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
fix(cli): Add browser command for Linux Adding "xdg-open %u" that is available in all free-desktop distros, so it can be used as the standard docs command for Linux users Fixes #2847 ---- * By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license
Fixes #10044 ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
The KMS key of the modern bootstrap stack no longer uses an `Export` to advertise itself, so users also don't need to specify the export name anymore. ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Add some `@deprecated` notices so we don't forget to take out a piece of code that is purely for backwards compatibility when it comes time for v2. Also fix some old references to an interface whose name was changed. ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…10022) Fixes #10018. Fixes #10027. #9468 added a flag (`allowPublicSubnet`) to `FunctionProps`, but `PythonFunction` and `NodejsFunction` props derive from `FunctionOptions`. This renders these derived function constructs unable to bypass the public subnet check that occurs in the base `Function` construct. We can resolve this issue by moving `allowPublicSubnet` to `FunctionOptions`. I also moved `filesystem` up to `FunctionOptions` while I was here. ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
After the feedback I received for my latest addition of the redirect method to the ÀpplicationLoadBalancerFargateService` I propose a convenience method for the ALB to create redirects. ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Added new properties to be able to join instance to a domain. closes #9869 ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
… of chatbot. (#9702) I am ready for the first run. Support L2 construct for SlackChannelConfiguration of chatbot. 1. add L2 construct 2. add unit tests 3. add integration test 4. update package.json Resolves: #9679 cc @skinny85 ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…0101) Change all instances of `GraphQLApi`/`GraphQlApi` to be `GraphqlApi`/`graphqlApi`. This was done to make the snake casing for python users feel more natural. **Before** ```ts appsync.GraphQLApi(...) appsync.GraphQLApiProps appsync.GraphQLApi.graphQlUrl ``` **After** ```ts appsync.GraphqlApi(...) appsync.GraphqlApiProps appsync.GraphqlApi.graphqlUrl ``` **BREAKING CHANGES**: Change all instances of `GraphQLApi` or `graphQLApi` or `graphQlApi` to be `graphqlApi`/`GraphqlApi`. - **appsync**: change `GraphQLApi` to `GraphqlApi` (all instances of `xxxQL` or `xxxQl` to `xxxql` Fixes #9367 ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…Cluster` creates circular dependency between the two stacks (#9701) This PR changes a few scenarios with regards to circular dependencies in cases where some resources are created in a different stack than the cluster stack. > Reviewers, Please refer to this detail as a first response to PR questions :) ### ServiceAccount Previously, the `ServiceAccount` construct used `cluster.addManifest` to deploy the necessary resource. https://github.com/aws/aws-cdk/blob/25a9cc7fabbe3b70add48edfd01421f74429b97f/packages/%40aws-cdk/aws-eks/lib/service-account.ts#L81-L95 This means that the resource itself is added to the **cluster stack**. When the `ServiceAccount` is created in a different stack, it creates a dependency between the cluster stack and the service account stack. Since `ServiceAccount` also depends on the cluster, it creates a dependency between the service account stack and the cluster stack. And hence a circular dependency is formed. #### Solution There is no inherent reason to always add the `ServiceAccount` resource to the cluster stack. If it was added to the service account stack, the circular dependency could be avoided. The solution is to use `new KubernetesManifest(this, ...)` instead of `cluster.addResource` - creating the manifest in the service account stack, which is perfectly fine since that direction of dependency is the intended one. ### AutoScalingGroup Capacity When adding capacity to a cluster using an `AutoScalingGroup`, we add the role of the ASG to the `aws-auth` role mappings of the cluster: https://github.com/aws/aws-cdk/blob/25a9cc7fabbe3b70add48edfd01421f74429b97f/packages/%40aws-cdk/aws-eks/lib/cluster.ts#L914-L923 The ASG depends on the cluster because, among others, it requires to have a tag with the cluster name: https://github.com/aws/aws-cdk/blob/25a9cc7fabbe3b70add48edfd01421f74429b97f/packages/%40aws-cdk/aws-eks/lib/cluster.ts#L907-L909 This creates a dependency between the ASG stack and the cluster stack. In case the ASG role is defined in the ASG stack, the auth mapping now creates a dependency between the cluster stack and the ASG, forming a circular dependency between the stacks. #### Solution `AwsAuth` is a singleton of the cluster, which means it is always defined in the cluster stack. Since we have no control over the stack of the ASG and its role, a circular dependency may always be created. The solution is to simply disallow creating `userMappings` or `roleMappings` with a `User/Role` that is not part of the cluster stack. This might be a little more restrictive than necessary, but it has less exposure potential to edge cases and complex dependency cycles. We can always be less restrictive down the road if needed. -------------- Fixes #8884 Fixes #9325 ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
The regex for the dist file did not match for `jsx`/`tsx` handlers. ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Global AWS services follow the convention of auto-creating CloudWatch Logs in `us-east-1`, which makes it challenging to control the log group retention when the stack is created in other region. This change adds support for specifying the optional region for LogRetention to be able to set log retention on CloudWatch logs created by global AWS Services in `us-east-1` Closes #9703 ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Fixes #9902 ~I also added support for the XML data type that's available as a choice when creating Glue tables in the AWS console.~ ~I've also added a commit which adds optional parameters csvSeparator and rowTag props. I'm not super experienced with Glue so I'm not sure how much value this provides and if this is the best way to organize the API, so I'm open to scrapping those changes for later.~ ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Allow adding Kubernetes resources such as manifests and Helm charts to imported clusters (`eks.Cluster.fromAttributes`). To enable this behavior, when the cluster is imported, users will have to specify additional information: - `kubectlRole` - an IAM role that can issue kubectl commands against the cluster - `kubectlEnvironment` (optional) - environment variables for `kubectl`. - `kubectlPrivateSubnets` and `kubectlSecurityGroup` - required if the cluster's k8s endpoint is private Resolves #5383 BREAKING CHANGE: when importing EKS clusters using `eks.Cluster.fromClusterAttributes`, the `clusterArn` attribute is not supported anymore, and will always be derived from `clusterName`. * **eks**: Only a single `eks.Cluster` is allowed per CloudFormation stack. * **eks**: The `securityGroups` attribute of `ClusterAttributes` is now `securityGroupIds`. ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Allow providing a custom kubectl lambda layer and/or creating the KubectlLayer object with custom configuration (version, aped). Resolves #7992 ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Various properties of the bootstrapping stack you configured with switches on the command line would be lost again if you performed bootstrapping again. This includes: - Template parameters such as the `qualifier`, `public-access-block-configuration`, `trust`, `cloudformation-execution-roles`. - Stack attributes such as `termination-protection`, `tags`. ALSO IN THIS PR - In the CLI integ tests, only show the CLI output if the test fails. This reduces noise when trying to inspect the causes of a failed test. - Some light refactoring (but not too much) of the division of responsibilities between `BootstrapStack`, `ToolkitInfo` and `CloudFormationStack`. Fixes #10091. ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license