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

Merge #32

Merged
merged 349 commits into from
Dec 11, 2020
Merged

Merge #32

merged 349 commits into from
Dec 11, 2020

Conversation

flemjame-at-amazon
Copy link
Owner


By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license

dependabot-preview bot and others added 30 commits November 10, 2020 00:50
…443 (#11383)

Bumps [parcel](https://github.com/parcel-bundler/parcel) from 2.0.0-nightly.442 to 2.0.0-nightly.443.
- [Release notes](https://github.com/parcel-bundler/parcel/releases)
- [Changelog](https://github.com/parcel-bundler/parcel/blob/v2/CHANGELOG.md)
- [Commits](https://github.com/parcel-bundler/parcel/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Allow to customise different view types in GraphWidget. The default behavior is backward compatible.

Closes #11063

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…DataSource (#11185)

BackedDataSource make Grantable HttpDataSource.  I think this pr allows better use of the iam config: #10171

fixes #11183
)

Resolves #11305 

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…kStage addApplication() (#11376)

Currently there is no way of reordering stages/actions once they are created. Getting to the Prepare and Execute change set actions while adding an application stage, we identified a use case within our company that needs one or more intermediary sequential actions before actually executing the change set. Moreover, I can imagine there can be plenty of use cases with similar requirements of having certain actions to fulfil between the Prepare and actual Execution of the Change Sets.

To resolve the problem, I suggest extending the AddStageOptions interface with an optional property representing the number of intermediary actions you need room for.

Closes #11333


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Patterns in `.dockerignore` used to be interpreted as globs, which has different behavior from how `.dockerignore` is supposed to be interpreted. Specifically it was hard to properly ignore whole directories at once (such as a large `node_modules`).

This PR adds an `ignoreMode` flag which controls how the ignore patterns should be interpreted. The choices are:

* `IgnoreMode.GLOB` - interpret as before
* `IgnoreMode.GIT` - interpret as in `.gitignore`
* `IgnoreMode.DOCKER` - interpret as in `.dockerignore`

Users might have dependencies on the current behavior, which is why the default `ignoreMode` depends on a feature flag: `@aws-cdk/aws-ecr-assets:dockerIgnoreSupport` (which is set to `true` for new projects) enables the new, correct Docker-ignore behavior by default.

----

Closes #10921

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…1389)

Backported from 9299d4e

The pack script defensively checks if there are any artifacts versioned 0.0.0 under the `dist/` directory. Python artifacts are named like so: `aws_cdk.aws_iotanalytics-2.0.0a0-py3-none-any.whl` and since by default grep uses regular expressions, this matches `grep 0.0.0`.

The fix is to use `-F` so that the search string is not treated as regex.


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Hi this is a try to fix #10601 
I didn't add proper documentation and tests now because discussions about how to implement that are stale so I've decided to push it forward by creating this PR

if you guys think this is a good approach I will proceed with the unit tests and proper documentation

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Bumps [promptly](https://github.com/moxystudio/node-promptly) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/moxystudio/node-promptly/releases)
- [Changelog](https://github.com/moxystudio/node-promptly/blob/master/CHANGELOG.md)
- [Commits](moxystudio/node-promptly@v3.1.0...v3.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
…ate (#11375)

Currently, ubergen excludes packages that are marked as 'private'.
In v2, all packages under `@aws-cdk/` will be marked as 'private'.
This will mean that 'monocdk' and 'aws-cdk-lib' modules will have no
packages included.

Introduce another field `ubergen.exclude` in `package.json` that will be
explicitly exclude packages from the monolithic modules.


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…11227)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Bumps [nock](https://github.com/nock/nock) from 13.0.4 to 13.0.5.
- [Release notes](https://github.com/nock/nock/releases)
- [Changelog](https://github.com/nock/nock/blob/main/CHANGELOG.md)
- [Commits](nock/nock@v13.0.4...v13.0.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.788.0 to 2.789.0.
- [Release notes](https://github.com/aws/aws-sdk-js/releases)
- [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md)
- [Commits](aws/aws-sdk-js@v2.788.0...v2.789.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
In the v2 branch, `aws-cdk-lib` will be made public. Hence, include
attributions for these.

Update the pkglint rule to also check `aws-cdk-lib` in the `master`
branch.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…11317)

In the v2 branch, most packages are private except a handful. Update the
pkglint rule to carry an allowlist on the set of packages that should be
private.

Prevents accidentally publishing new packages.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Ran npm-check-updates and yarn upgrade to keep the `yarn.lock` file up-to-date.
Cannot use `efs.AccessPoint.fromAccessPointId()` with `lambda.FileSystem.fromEfsAccessPoint()`. the former returns an `IAccessPoint` when the later expect an `AccessPoint`. I think following the CDK guidelines, `lambda.FileSystem.fromEfsAccessPoint()` should expect an `IAccessPoint`, not an `AccessPoint`.

Argument of type `IAccessPoint` is not assignable to parameter of type `AccessPoint`.

### Solution
----

Add a new import method to the `AccessPoint` class called `fromAccessPointAttributes()` allowing to pass a fileSystem as an attribute.

Closes #10711.


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Following are open issues for missing properties that will be added with the update:

- Closes #11275
Adds listener timeout to Virtual Nodes.

BREAKING CHANGE: `IVirtualNode` no longer has the `addBackends()` method. A backend can be added to `VirtualNode` using the `addBackend()` method which accepts a single `IVirtualService`
* **appmesh**: `IVirtualNode` no longer has the `addListeners()` method. A listener can be added to `VirtualNode` using the `addListener()` method which accepts a single `VirtualNodeListener`
* **appmesh**: `VirtualNode` no longer has a default listener. It is valid to have a `VirtualNode` without any listeners
* **appmesh**: the construction property `listener` of `VirtualNode` has been renamed to `listeners`, and its type changed to an array of listeners
* **appmesh**: the struct `VirtualNodeListener` has been removed. To create Virtual Node listeners, use the static factory methods of the `VirtualNodeListener` class
----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
The `create-missing-packages` script currently adds new libraries to `decdk`;
this change does the same for our other "mega" packages that need some kind of
dependency on each new service construct library.


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Fix missing parenthesis in Kinesis code example


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.789.0 to 2.790.0.
- [Release notes](https://github.com/aws/aws-sdk-js/releases)
- [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md)
- [Commits](aws/aws-sdk-js@v2.789.0...v2.790.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
…ackage to stable (#11431)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…444 (#11435)

Bumps [parcel](https://github.com/parcel-bundler/parcel) from 2.0.0-nightly.443 to 2.0.0-nightly.444.
- [Release notes](https://github.com/parcel-bundler/parcel/releases)
- [Changelog](https://github.com/parcel-bundler/parcel/blob/v2/CHANGELOG.md)
- [Commits](https://github.com/parcel-bundler/parcel/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
skinny85 and others added 29 commits December 7, 2020 23:10
… be used in CodePipeline (#11795)

While CDK Pipelines is the idiomatic way of deploying ECS applications in CDK,
it does not handle the case where the application's source code is kept in a separate source code repository from the CDK infrastructure code.
This adds a new class to the ECS module,
`TagParameterContainerImage`, that allows deploying a service managed that way through CodePipeline.

Related to #1237
Related to #7746

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…w Generally Available (stable) (#11924)


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…ly (#11906)

Make sure that environment variables combine correctly and a BuildSpec
is still rendered.

Relates to #11877.


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
CloudWatch Explorer is a new service who have been collecting a
set of metrics emitted by various services.

Integrate this model and use to generate convenience methods that are
aware of per-metric dimensions and suggested default statistics.

We switch over to these metrics to a get second source of
confirmation that we have the dimensions correct.

We can't do complete code generation off of this model yet. Adds a README document that explains
why.


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…ons (#11917)

(CodeBuild) Build fails after introducing environmentVariables with type BuildEnvironmentVariableType.PARAMETER_STORE.

Fixes #9980 

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…fault (#11941)

Because the `Failed` metric is emitted as `1` if there is a failure, and no data points are emitted otherwise, the `Average` of all data points will always be `1`. 

`Sum` is a more appropriate default metric.

This PR should not be merged before #11717

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
The same set of mergify rules are used for 'master' and 'v2-main'
branches.

With these changes, regular PRs from contributors get auto-merged. This
is currently not the case.

This also removes any special rules for v2 and reduces the number of
rules.
…now 1GiB) (#11957)

Increase the default memory size of the kubectl provider's lambda function to 1GiB and introduce a `kubectlMemory` option that can be used to control memory allocation if needed.

Fixes #11787


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…11799)

We're migrating an existing API Gateway application to CDK and have [hit this error](https://github.com/aws/aws-cdk/blob/2f0a598720f7ecf4dfea7dde97182940fcbe8d9a/packages/%40aws-cdk/aws-apigateway/lib/base-path-mapping.ts#L52), because our base paths include capitalised characters.

This PR resolves that issue and I've included some basics tests for the `BasePathMapping` resource.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
… (under feature flag) (#11918)

In #5575, a new flag (`trustAccountIdentities`) was introduced which -- when set
-- changes the default key policy from a custom key admin policy to one that
grants all access to the key to the root account user. This key policy matches
the default policy when a key is created via the KMS APIs or console.

For backwards-compatibility reasons, the default for `trustAccountIdentities`
had to be set to `false`. Without the flag explicitly set, the default key
policy is one that (a) doesn't match the KMS-recommended admin policy and (b)
doesn't explicitly enable IAM principal policies to acccess the key. This means
that all usage operations (e.g., Encrypt, GenerateDataKey) must be added to both
the key policy and to the principal policy.

This change introduces a new feature flag to flip the default behavior of the
`trustAccountIdentities` flag, so new keys created will have the sane defaults
matching the KMS recommended best practices.

As a related change, this feature flag also changes the behavior when a user
passes in `policy` when creating a Key. Without the feature flag set, the policy
is always appended to the default key policy. With the feature flag set, the
policy will *override* the default key policy, enabling users to opt-out of the
default key policy to introduce a more restrictive policy if desired. This also
matches the KMS API behavior, where a policy provided by the user will override
the defaults.

Marking this PR as `requires-two-approvers` to ensure this PR gets an
appropriately-critical review.

BREAKING CHANGE: change the default value of trustAccountIdentities to true,
which will result in the key getting the KMS-recommended default key
policy. This is enabled through the '@aws-cdk/aws-kms:defaultKeyPolicies'
feature flag.

fixes #8977
fixes #10575
fixes #11309

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
fixes #9149 

The clusterSettings should be explicitly defined even when container insights is disabled, because CFn doesn't allow to remove the existing settings (as described in the issue.)

By this change, users who sets `containerInsights` prop `false` will see a diff like below, but it won't be a problem because by default container insights is disabled hence no actual change to existing resources: 

```
Resources
[~] AWS::ECS::Cluster cluster cluster611F8AFF 
 └─ [+] ClusterSettings
     └─ [{"Name":"containerInsights","Value":"disabled"}]
```

To prevent the existing tests from failing, the clusterSettings is only defined when `containerInsight` prop is explicitly defined(i.e. `true` or `false`, not `undefined`.)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Also fixes unit test name for default setting

Extension of #9151


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…class (#11926)

Addresses part of the conversation on #9490

BREAKING CHANGE: the properties `dnsHostName` and `awsCloudMap` of `VirtualNodeProps` have been replaced with the property `serviceDiscovery`

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Reorder sections: move the most useful ones closer to the top.

Improve native modules with `forceDockerBundling` instructions.

Various tiny improvements.

Closes #11439


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
added new props for `objectOwnership` that bucket class will transform to the required
rules fields by the CfnBucket. `objectOwnerships` is an enum will two possible values `BucketOwnerPreferred` and `ObjectWriter`

Closes #11591


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
In order to support deletion of kubernetes manifest resources, the EKS module now automatically allocates and injects a "prune label" to all resources. This label is then passed down to `kubectl apply` with the `--prune` option so that any resources in the cluster that do not appear in the manifest will get deleted.

The `prune` option can be set to `false` (either at the `Cluster` level or at the KubernetesResource level) to disable this.

In order to avoid needing to update all tests, many of the existing tests set `prune: false` so that their outputs are not impacted.

Resolves #10495

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…construct (#11989)

C# does not allow a property to have the same name as its class.
Jsii works around this by renaming the construct to `_DomainName` which
is ugly.

Instead, change the property name from `domainName` to `name` and avoid
this conflict entirely.

Further, re-categorize these class of defects as an error instead of a
warning.

BREAKING CHANGE: `domainName` property under `DomainName` has been
renamed to `name`.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
This one should be easy 😄 

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…1993)

These fail with the bump of @types/jest in #11948


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
I discovered a rogue focused (`test.only`) test that snuck past code review.
Introducing the `eslint-plugin-jest` to `cdk-build-tools`, as this seems like
the most common linter plugin that will detect this (and other common issues).

I adopted the "recommended" set of settings, then toned down those that seemed
like they'd be a huge effort to cleanup across the codebase, and cleaned up
other tests that needed slight changes to pass.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Bumps [ini](https://github.com/isaacs/ini) from 1.3.5 to 1.3.7.
- [Release notes](https://github.com/isaacs/ini/releases)
- [Commits](npm/ini@v1.3.5...v1.3.7)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Adds `metricSystemErrorsForOperations` and `metricThrottledRequests` to the `ITable` interface. Previously they were just in the `Table` class.

Thx @SomayaB and @skinny85 for highlighting the fix.

Fixes #11541


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
fix(ecs): remove Fargate environment files restriction
@flemjame-at-amazon flemjame-at-amazon merged commit 120258f into flemjame-at-amazon:master Dec 11, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.