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

chore: build go bindings for monocdk #13399

Merged
merged 46 commits into from
Mar 25, 2021
Merged

chore: build go bindings for monocdk #13399

merged 46 commits into from
Mar 25, 2021

Conversation

Add `go` configuration to the `monocdk` package.

To be able to generate go bindings a few tweaks to the current codebase were needed:

BREAKING CHANGE: The deprecated `Duration.toISOString()` method is no longer available. Please use `Duration.toIsoString()` instead. Unfortunteally this API needs to be broken to disambiguate the two methods in the Go generated code.
@gitpod-io
Copy link

gitpod-io bot commented Mar 4, 2021

@github-actions github-actions bot added the monocdk Related to the monocdk package label Mar 4, 2021
@mergify mergify bot added the contribution/core This is a PR that came from AWS. label Mar 4, 2021
@eladb eladb marked this pull request as ready for review March 17, 2021 19:29
Elad Ben-Israel and others added 14 commits March 17, 2021 21:30
Package name for yum is not awscli. This causes the command to have a return code different than 0, which fails the user-data script.

This change addresses the issue: #13654


----

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

This PR adds a note that at most one listener may be added to a Virtual Node until App Mesh team adds support for multiple listeners per aws/aws-app-mesh-roadmap#120

Closes #13549

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
There was an unnecessary ')' in a Markdown link,
making it render incorrectly on our API page.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
`.npmignore` did not use to be copied into the directories of the monopackage,
leading to files that *ought* to have been excluded to not be excluded.

Remove the file from the list of files that doesn't get copied to fix this.

This fix is not along the lines of the method suggested in the linked issue,
but it does address the original problem.

Fixes #12292.


----

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

These changes (plus import changes) were necessary to make these tests pass on
the `v2-main` branch. Back-porting to `master` to (hopefully) reduce future
forward-merge pain.

The 'returns base construct info if no more specific info is present' test was
removed as is wasn't truly necessary, and does not work with V2, where Construct
comes from the `constructs` library instead of `core.Construct`.


----

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


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Across the CDK repo, remove the usage of deprecated symbols.

These are going to be removed in CDKv2, and these changes make
the codebases on the two branches more aligned.

However, this does not remove *all* usages of deprecated symbols,
but only the changes that are backwards compatible.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
If the installed node version is >= 14, use Node.js 14.x. Otherwise, use
Node.js 12.x.

This removes a default on the deprecated Node.js 10.x runtime.

BREAKING CHANGE: the default runtime of a `NodejsFunction` is now Node.js 14.x if the environment from which it is deployed uses Node.js >= 14 and Node.js 12.x otherwise.


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
We need this to have `jsii-rosetta` runs that try to translate READMEs
from submodules not crash (because it can't find the referenced fixture
files).

This is not a correct final state yet, but it makes the build not crash.

Hopefully allows aws/jsii#2712 to be merged.


----

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

The allowed values for `UntrustedArtifactOnDeployment` in the
`AWS::Lambda::CodeSigningConfig` resource type are 'Warn' and 'Enforce'.

This was incorrectly set in the CDK.

fixes #13586


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
CloudFormation supports only one resource type for AWS Signer, namely
[Signing Profile].

This is a very simple resource type with effectively two properties,
both of which, have been modeled according to the latest expectations of
the CDK construct library.

There is no good reason why this module ought to stay as experimental.
Given the standard nature of this module, I do not expect much customer
feedback on usability that would require backwards incompatible changes.
Hence, marking this as stable.

Motivation
The `ISigner` interface is referenced by the `Function` construct in the
`aws-lambda` module. This is an instance of a stable module depending on
an experimental module.

In CDKv2, we plan to ship only stable modules as part of the
mono-release of the cdk (aka, `aws-cdk-lib`). A prerequisite to achieve
this is to avoid such dependencies (stable → experimental).

In this specific case, we are fixing this by promoting the `aws-signer`
module to stable.

[Signing Profile]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-signingprofile.html
BLasan and others added 15 commits March 24, 2021 18:31
…pplication (#13582)

fixes #13337


----

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

How the `env` parameter is supposed to be used is still confusing to
a lot of users.

Add uncommentable lines to the init templates showing and describing
the 3 alternatives.

Fixes #12321.


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Add support for client VPN endpoints with the following L2s: `ClientVpnEndpoint`,
`ClientVpnAuthorizationRule` and `ClientVpnRoute`.

Client VPN endpoints can be added to VPCs with the `addClientVpnEndpoint()`
method.

Both mutual and user-based authentication are supported.

The `ClientVpnEndpoint` class implements `IConnectable`.

Use a custom resource to import server and client certificates in ACM
for the integration test.

Close #4206

----

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

Adds optional `DetectChanges` to BitBucketSourceAction

https://docs.aws.amazon.com/codepipeline/latest/userguide/action-reference-CodestarConnectionSource.html

This option is available in the AWS console when configuring the Source stage.

----

*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*
…elector (#13728)

Fixes #13684


----

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

API gateway expects `*` to represent `ANY` HTTP method. `HttpMethod` enum doesn't 
have a value for that, thus causing errors when passing  `HttpMethod` 's `ANY` option.

This commit introduces `CorsHttpMethod` enum which has a proper `ANY` mapping to `*`.

Closes #13280.
Closes #13643.

BREAKING CHANGE: The type of `allowMethods` property under `corsPreflight`
section is changed from `HttpMethod` to `CorsHttpMethod`.

----

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

closes #12932
closes #12931
closes #12930


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…onds results in an error (#13689)

A previous change - b1449a1 - introduced a validation that should have
been applied only when Duration is specified as a token. Instead, it was
applied for non token values as well.

Adjusting the validation so it only applies to when the duration is a
token.

fixes #13566


----

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

Previously access control lists for putObject was not called.
This had led in getting access denied issue when trying to upload
objects into the s3 bucket

fixes #13557 


----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Add retry policy (+ dead letter queue) support for the following targets:
 
- Lambda
- LogGroup
- CodeBuild
- CodePipeline
- StepFunction

Closes #13659 

----

*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.
Required for publishing Go bindings.

Related #13399
Copy link
Contributor

@MrArnoldPalmer MrArnoldPalmer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just the conflict resolution in codebuild.

packages/@aws-cdk/aws-codebuild/package.json Outdated Show resolved Hide resolved
Elad Ben-Israel and others added 2 commits March 24, 2021 22:17
@aws aws deleted a comment from aws-cdk-automation Mar 24, 2021
@mergify
Copy link
Contributor

mergify bot commented Mar 25, 2021

Thank you for contributing! Your pull request will be updated from master and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork).

@mergify mergify bot merged commit 77a6268 into master Mar 25, 2021
@mergify mergify bot deleted the benisrae/go-monocdk branch March 25, 2021 07:51
@aws-cdk-automation
Copy link
Collaborator

AWS CodeBuild CI Report

  • CodeBuild project: AutoBuildProject89A8053A-LhjRyN9kxr8o
  • Commit ID: cc1d28b
  • Result: SUCCEEDED
  • Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

corrjo pushed a commit to corrjo/aws-cdk that referenced this pull request Mar 25, 2021
Add `go` configuration to the `monocdk` and `aws-cdk-lib` packages.

Resolves aws/jsii#2611

The following jsii bugs were fixed to enable this:

- [x] aws/jsii#2648
- [x] aws/jsii#2649
- [x] aws/jsii#2647
- [x] aws/jsii#2617
- [x] aws/jsii#2632
- [x] aws/jsii#2651
- [x] aws/jsii#2508
- [x] aws/jsii#2692
- [x] aws/jsii#2700
- [x] aws/jsii#2702

---

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
hollanddd pushed a commit to hollanddd/aws-cdk that referenced this pull request Mar 31, 2021
Add `go` configuration to the `monocdk` and `aws-cdk-lib` packages. 

Resolves aws/jsii#2611

The following jsii bugs were fixed to enable this:

- [x] aws/jsii#2648
- [x] aws/jsii#2649
- [x] aws/jsii#2647
- [x] aws/jsii#2617
- [x] aws/jsii#2632
- [x] aws/jsii#2651
- [x] aws/jsii#2508
- [x] aws/jsii#2692
- [x] aws/jsii#2700
- [x] aws/jsii#2702

---

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
hollanddd pushed a commit to hollanddd/aws-cdk that referenced this pull request Aug 26, 2021
Add `go` configuration to the `monocdk` and `aws-cdk-lib` packages.

Resolves aws/jsii#2611

The following jsii bugs were fixed to enable this:

- [x] aws/jsii#2648
- [x] aws/jsii#2649
- [x] aws/jsii#2647
- [x] aws/jsii#2617
- [x] aws/jsii#2632
- [x] aws/jsii#2651
- [x] aws/jsii#2508
- [x] aws/jsii#2692
- [x] aws/jsii#2700
- [x] aws/jsii#2702

---

*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
Labels
contribution/core This is a PR that came from AWS. monocdk Related to the monocdk package
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Publish AWS CDK for Go