-
Notifications
You must be signed in to change notification settings - Fork 4k
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(aws-codepipeline): #2572 allow IAM Role to be passed to Pipeline #2573
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for your contribution @AlexChesters ! 2 small comments before I merge this in.
assumedBy: new iam.ServicePrincipal('codepipeline.amazonaws.com') | ||
}); | ||
} | ||
this.role = propsRole; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We usually write it in one line:
this.role = props.role || new iam.Role(this, 'Role', {
assumedBy: new iam.ServicePrincipal('codepipeline.amazonaws.com')
});
@@ -68,6 +68,12 @@ export interface PipelineProps { | |||
*/ | |||
readonly artifactBucket?: s3.IBucket; | |||
|
|||
/** | |||
* The IAM role to be assumed by this Pipeline. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we be a little more precise here? "The IAM role used for executing this Pipeline. If not specified, a new IAM role, trusting the CodePipeline service principal, will be created".
Implemented an awslint rule to help identify all "export" methods and remove them. Align all AWS resource constructs (besides `events.EventRule`) to their canonical name. Fixes #2577 Fixes #2578 Fixes #2458 Fixes #2419 Fixes #2579 Fixes #2313 Related #2551 BREAKING CHANGE: All `export` methods from all AWS resources have been removed. CloudFormation Exports are now automatically created when attributes are referenced across stacks within the same app. To export resources manually, you can explicitly define a `CfnOutput`. * `kms.EncryptionKey` renamed to `kms.Key` * `ec2.VpcNetwork` renamed to `ec2.Vpc` * `ec2.VpcSubnet` renamed to `ec2.Subnet` * `cloudtrail.CloudTrail` renamed `to `cloudtrail.Trail` * Deleted a few `XxxAttribute` and `XxxImportProps` interfaces which were no longer in used after their corresponding `export` method was deleted and there was no use for them in imports. * `ecs.ClusterAttributes` now accepts `IVpc` and `ISecurityGroup` instead of attributes. You can use their corresponding `fromXxx` methods to import them as needed. * `servicediscovery.CnameInstance.instanceCname` renamed to `cname`. * `glue.IDatabase.locationUrl` is now only in `glue.Database` (not on the interface) * `ec2.TcpPortFromAttribute` and `UdpPortFromAttribute` removed. Use `TcpPort` and `UdpPort` with `new Token(x).toNumber` instead. * `ec2.VpcNetwork.importFromContext` renamed to `ec2.Vpc.fromLookup` * `iam.IRole.roleId` has been removed from the interface, but `Role.roleId` is still available for owned resources.
Oops, I messed up the history on this branch :| I'll create a new PR.. |
Pull Request Checklist
design
folderBy submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license.