From f4d3e8c16faf65f328068be80b12bbe38d081c36 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Tue, 1 Dec 2020 19:21:42 -0500 Subject: [PATCH 01/37] edits 120120 --- docs/images/architecture_diagram.png | Bin 102360 -> 69934 bytes docs/partner_editable/_settings.adoc | 2 +- docs/partner_editable/architecture.adoc | 24 ++++++++++++++---------- 3 files changed, 15 insertions(+), 11 deletions(-) diff --git a/docs/images/architecture_diagram.png b/docs/images/architecture_diagram.png index ad91da3dc9c365859149f563b0e3f8b3be7e07be..c3b529df75b45d5c024e07688bc5d46c770986d4 100644 GIT binary patch literal 69934 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 Vs23O>hcAJ+c17cI-o;yi{|oY~i5CC> literal 102360 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

hc%m?WRIrB9m^NdR;A35>Xi(UfsT{a_vxKAHh4& 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∓FCB6rZ$fLKTSpLzm6F|~yT3V} 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 E03O$7FaQ7m diff --git a/docs/partner_editable/_settings.adoc b/docs/partner_editable/_settings.adoc index b6aae21..3ffe5fe 100644 --- a/docs/partner_editable/_settings.adoc +++ b/docs/partner_editable/_settings.adoc @@ -6,7 +6,7 @@ :partner-product-short-name: Git Webhooks // If there's no partner, comment partner-company-name and partner-contributors. // :partner-company-name: Example Company Name, Ltd. -:doc-month: October +:doc-month: December :doc-year: 2020 // For the following two "contributor" attributes, if the partner agrees to include names in the byline, // enter names for both partner-contributors and quickstart-contributors. diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index 3e55d5b..0ecbe55 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -11,17 +11,21 @@ image::../images/image3.png[Architecture,width=100%,height=100%] *Figure 2: Webhook endpoint architecture on AWS* -The Quick Start deployment sets up a serverless AWS Cloud environment that includes the following components. +The Quick Start deployment sets up a serverless AWS Cloud environment that includes the following components: -* An API Gateway endpoint to accept the webhook requests from Git. -* Lambda function that processes the input git webhook payload received by the API Gateway and submits a build on AWS CodeBuild Project. -* An AWS CodeBuild project to connect to the Git service, either over SSH or through the Git service’s endpoint. This AWS CodeBuild project will zip the code and upload it to Amazon S3. +* An Amazon API Gateway endpoint that accepts webhook requests from Git. +* A Lambda function that processes Git webhook requests and submits code to AWS CodeBuild. +* AWS CodeBuild that connects to the Git repository and compresses and uploads code from it to an Amazon S3 bucket. -*Important* The AWS CodeBuild project that is deployed by this Quick Start must be able to communicate with your Git repository. For example, you can use a SaaS-based Git service that the AWS CodeBuild can reach through the internet. +IMPORTANT: The AWS CodeBuild project that is deployed by this Quick Start must be able to communicate with your Git repository, either over SSH or through the Git service’s endpoint. You can use a SaaS-based Git service to which AWS CodeBuild can connect over the internet. -* An AWS KMS key to encrypt the SSH private key used to connect to the repository over SSH. -* Two S3 buckets: One bucket stores the zipped contents of your Git repository, and the second bucket stores the AWS KMS-encrypted SSH private keys that are generated during stack creation. Note that the first bucket has versioning enabled, and all previous versions are retained indefinitely. If you’d like to manage the retention period for old versions, follow the instructions in the http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[Amazon S3 documentation]. -* Several IAM roles required for the Lambda functions and API Gateway. The inline permissions attached to these roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. -* Two Lambda-backed AWS CloudFormation custom resources. One resource generates an SSH keypair, encrypts it using AWS KMS, and stores it in Amazon S3. The second resource deletes the content of the two S3 buckets on stack deletion. +* AWS Key Management Service (KMS) to encrypt the SSH private keys that AWS CodeBuild uses to connect to the Git repository over SSH. +* Two S3 buckets, one for compressed Git repository code, and another for the AWS KMS-encrypted SSH private keys that are generated during stack creation. -NOTE: If you need backups, make sure to copy the S3 bucket contents before you delete the CloudFormation stack. \ No newline at end of file +NOTE: The first S3 bucket has versioning enabled. All previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?]. + +* Several IAM roles required by the Lambda function and API Gateway. The inline permissions attached to these roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. + +* Two Lambda-backed AWS CloudFormation custom resources. One resource generates an SSH key pair, encrypts it using AWS KMS, and stores it in an S3 bucket. The second resource deletes the contents of the two S3 buckets when the AWS CloudFormation stack is deleted. + +WARNING: To ensure you have backups, copy the contents of the S3 buckets before deleting the AWS CloudFormation stack. \ No newline at end of file From f8e2e8dbce8d978dc16e8b4a2e1683a0cdd7e1e8 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Wed, 2 Dec 2020 13:44:31 -0500 Subject: [PATCH 02/37] edits part 1 120220 --- docs/partner_editable/architecture.adoc | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index 0ecbe55..1720a03 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -13,19 +13,19 @@ image::../images/image3.png[Architecture,width=100%,height=100%] The Quick Start deployment sets up a serverless AWS Cloud environment that includes the following components: -* An Amazon API Gateway endpoint that accepts webhook requests from Git. -* A Lambda function that processes Git webhook requests and submits code to AWS CodeBuild. -* AWS CodeBuild that connects to the Git repository and compresses and uploads code from it to an Amazon S3 bucket. +* An Amazon API Gateway endpoint to accept webhook requests from Git. +* An AWS Lambda function to process Git webhook requests received by the API Gateway and initiate builds on AWS CodeBuild. +* A CodeBuild project to compress and upload code from the Git repository to an Amazon S3 bucket. -IMPORTANT: The AWS CodeBuild project that is deployed by this Quick Start must be able to communicate with your Git repository, either over SSH or through the Git service’s endpoint. You can use a SaaS-based Git service to which AWS CodeBuild can connect over the internet. +IMPORTANT: The CodeBuild project that is deployed by this Quick Start must be able to connect to your Git repository, either over SSH or through the Git service endpoint. You can use a SaaS-based Git service to which AWS CodeBuild can connect over the internet. * AWS Key Management Service (KMS) to encrypt the SSH private keys that AWS CodeBuild uses to connect to the Git repository over SSH. -* Two S3 buckets, one for compressed Git repository code, and another for the AWS KMS-encrypted SSH private keys that are generated during stack creation. +* Two Amazon Simple Storage Service (S3) buckets, one to store the compressed contents of the Git repository, and another to store encrypted SSH keys. -NOTE: The first S3 bucket has versioning enabled. All previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?]. +NOTE: The first S3 bucket has versioning enabled, and all previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?]. -* Several IAM roles required by the Lambda function and API Gateway. The inline permissions attached to these roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. +* AWS Identity and Access Management (IAM) roles required by Lambda and API Gateway. The inline permissions attached to these roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. * Two Lambda-backed AWS CloudFormation custom resources. One resource generates an SSH key pair, encrypts it using AWS KMS, and stores it in an S3 bucket. The second resource deletes the contents of the two S3 buckets when the AWS CloudFormation stack is deleted. -WARNING: To ensure you have backups, copy the contents of the S3 buckets before deleting the AWS CloudFormation stack. \ No newline at end of file +WARNING: If you need backups, copy the contents of the S3 buckets before deleting the AWS CloudFormation stack. \ No newline at end of file From cba8788677a5dd11a9653fef64e5def0c15962f2 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Wed, 2 Dec 2020 15:58:29 -0500 Subject: [PATCH 03/37] edits part 2 120220 --- docs/partner_editable/architecture.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index 1720a03..7a0f578 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -15,7 +15,7 @@ The Quick Start deployment sets up a serverless AWS Cloud environment that inclu * An Amazon API Gateway endpoint to accept webhook requests from Git. * An AWS Lambda function to process Git webhook requests received by the API Gateway and initiate builds on AWS CodeBuild. -* A CodeBuild project to compress and upload code from the Git repository to an Amazon S3 bucket. +* CodeBuild to connect and clone the Git repository, then compress and upload its contents to an Amazon S3 bucket. IMPORTANT: The CodeBuild project that is deployed by this Quick Start must be able to connect to your Git repository, either over SSH or through the Git service endpoint. You can use a SaaS-based Git service to which AWS CodeBuild can connect over the internet. From b9d0cee9098ea2a9119dfb56e5540431381f247e Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Thu, 3 Dec 2020 14:02:58 -0500 Subject: [PATCH 04/37] edits part 1 120320 --- docs/images/architecture_diagram.png | Bin 69934 -> 68175 bytes docs/partner_editable/architecture.adoc | 14 +++++++------- docs/partner_editable/licenses.adoc | 6 +++++- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/docs/images/architecture_diagram.png b/docs/images/architecture_diagram.png index c3b529df75b45d5c024e07688bc5d46c770986d4..39777389d3434adc11b555ad81b09d786358c939 100644 GIT binary patch literal 68175 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 literal 69934 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 Vs23O>hcAJ+c17cI-o;yi{|oY~i5CC> diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index 7a0f578..36b621e 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -5,7 +5,7 @@ Deploying this Quick Start builds the following environment in the AWS Cloud. [#architecture1] // .Quick Start architecture for {partner-product-short-name} on AWS [link=images/architecture_diagram.png] -image::../images/image3.png[Architecture,width=100%,height=100%] +image::../images/architecture_diagram.png[Architecture,width=100%,height=100%] *Figure 2: Webhook endpoint architecture on AWS* @@ -13,14 +13,14 @@ image::../images/image3.png[Architecture,width=100%,height=100%] The Quick Start deployment sets up a serverless AWS Cloud environment that includes the following components: -* An Amazon API Gateway endpoint to accept webhook requests from Git. -* An AWS Lambda function to process Git webhook requests received by the API Gateway and initiate builds on AWS CodeBuild. -* CodeBuild to connect and clone the Git repository, then compress and upload its contents to an Amazon S3 bucket. +* An Amazon API Gateway endpoint to accept Git webhook requests. +* An AWS Lambda function to process Git webhook requests and invoke AWS CodeBuild. +* A CodeBuild project to compress and upload the Git repository code to an Amazon S3 bucket. -IMPORTANT: The CodeBuild project that is deployed by this Quick Start must be able to connect to your Git repository, either over SSH or through the Git service endpoint. You can use a SaaS-based Git service to which AWS CodeBuild can connect over the internet. +IMPORTANT: The CodeBuild project that is deployed by this Quick Start must be able to connect to your Git repository, either over SSH (Secure Shell) or through the Git service endpoint. For example, you can use a SaaS-based Git service to which AWS CodeBuild can connect over the internet. -* AWS Key Management Service (KMS) to encrypt the SSH private keys that AWS CodeBuild uses to connect to the Git repository over SSH. -* Two Amazon Simple Storage Service (S3) buckets, one to store the compressed contents of the Git repository, and another to store encrypted SSH keys. +* AWS Key Management Service (AWS KMS) to encrypt the private keys used to connect to the Git repository with SSH. +* Two Amazon Simple Storage Service (S3) buckets, one to store the compressed Git repository code, and another to store the private SSH keys encrypted by AWS KMS. NOTE: The first S3 bucket has versioning enabled, and all previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?]. diff --git a/docs/partner_editable/licenses.adoc b/docs/partner_editable/licenses.adoc index f88ecc0..5966250 100644 --- a/docs/partner_editable/licenses.adoc +++ b/docs/partner_editable/licenses.adoc @@ -1 +1,5 @@ -The Quick Start provides an Amazon API Gateway endpoint, several Lambda functions and an AWS CodeBuild project to handle the download, zipping, and deployment of code to Amazon S3. AWS CodePipeline carries a cost for each active pipeline; see https://aws.amazon.com/codepipeline/pricing/[AWS CodePipeline pricing]. Depending on your configuration, the Quick Start may deploy an AWS Key Management Service (AWS KMS) key; for pricing, see https://aws.amazon.com/kms/pricing/[AWS Key Management Service pricing]. API Gateway, Amazon S3, Lambda, and AWS CodeBuild costs vary depending on how often you commit code to your repository; each commit triggers a request to the Lambda execution in API Gateway; for details, see the pricing pages for https://aws.amazon.com/api-gateway/pricing/[API Gateway], https://aws.amazon.com/s3/pricing/[Amazon S3], https://aws.amazon.com/lambda/pricing/[Lambda] and https://aws.amazon.com/codebuild/pricing/[codebuild] . +The Quick Start provides an Amazon API Gateway endpoint, Lambda functions, and an AWS CodeBuild project to access, compress, and upload code to Amazon S3. AWS CodePipeline carries a cost for each active pipeline. (See https://aws.amazon.com/codepipeline/pricing/[AWS CodePipeline pricing].) + +Depending on your configuration, the Quick Start may deploy an AWS Key Management Service (AWS KMS) key which incurs a monthly cost for key storage and usage. (See https://aws.amazon.com/kms/pricing/[AWS Key Management Service pricing].) + +API Gateway, Amazon S3, Lambda, and AWS CodeBuild costs vary depending on how often you commit code to the connected Git repository. (See https://aws.amazon.com/api-gateway/pricing/[Amazon API Gateway pricing], https://aws.amazon.com/s3/pricing/[Amazon S3 pricing], https://aws.amazon.com/lambda/pricing/[AWS Lambda pricing] and https://aws.amazon.com/codebuild/pricing/[AWS CodeBuild pricing].) From 99e7421f82bfdf35f3e83fd0a8c244d8d01b30f1 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Fri, 4 Dec 2020 14:12:13 -0500 Subject: [PATCH 05/37] edits part 1 120420 --- docs/partner_editable/additional_info.adoc | 27 ++++++++++------------ 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/docs/partner_editable/additional_info.adoc b/docs/partner_editable/additional_info.adoc index 33f0a5d..33ca451 100644 --- a/docs/partner_editable/additional_info.adoc +++ b/docs/partner_editable/additional_info.adoc @@ -1,23 +1,20 @@ -==== Adding an API Secret After Deployment +== Adding an API secret after deployment -In some cases, your Git service may provide security mechanisms like API secrets when you create the webhook. In these cases, you can launch the Quick Start with a blank parameter value for the *API Secret* parameter, and then update the stack to provide the value of the parameter. Follow these steps: +You can launch this Quick Start without providing an *API Secret* parameter. If your Git service provides an API secret when you create a webhook, you can update the stack with the API secret later. -. In the https://console.aws.amazon.com/cloudformation[AWS Cloudformation console], select the stack. +To update the stack with an API secret, do the following: -[arabic, start=2] -. Choose *Actions*, and then choose *Update Stack*. -. Keep the default to use the current template. -. On the *Specify Details* page, change the *API Secret* parameter setting. -. Choose *Next* twice. - -[arabic, start=10] -. Under *Capabilities*, select the check box to acknowledge that the template will create IAM resources, and then choose *Update*. - -When the status is *UPDATE_COMPLETE*, the stack has been updated with the webhook secret you specified for security. +. In the https://console.aws.amazon.com/cloudformation[AWS Cloudformation console], select the stack you want to update. +. In the stack details pane, choose *Update*. +. Choose *Use current template*. +. On the *Specify stack details* page, change the *API Secret* parameter setting, then choose *Next*. +. On the *Configure stack options* page, choose *Next*. +. Select *I acknowledge that this template may create IAM resources*. +. Choose *Update stack*. When the status is *UPDATE_COMPLETE*, the stack is updated with the API secret. == Test the deployment -Before putting the webhook into production, you should test your deployment. +Before putting a webhook into production, test your deployment. . Modify a file in your repository. @@ -28,7 +25,7 @@ image:../images/image6.png[../Desktop/Screen_Shot_2017-07-15_at_11_35_57_AM.png, image:../images/image7.png[Figure 4,width=648,height=198] [start=2] -. Wait a few minutes and check your S3 bucket for a new (or updated) object with a key that matches your repository path. +. Wait a few minutes, then check your S3 bucket for a new (or updated) object with a key that matches your repository path. image:../images/image8.png[Figure 5,width=646,height=348] From 09327f56b190a12c261bb2796b62824f8321e8ef Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Fri, 4 Dec 2020 14:47:53 -0500 Subject: [PATCH 06/37] edits part 2 120420 --- docs/partner_editable/additional_info.adoc | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/docs/partner_editable/additional_info.adoc b/docs/partner_editable/additional_info.adoc index 33ca451..e5b34dd 100644 --- a/docs/partner_editable/additional_info.adoc +++ b/docs/partner_editable/additional_info.adoc @@ -14,7 +14,7 @@ To update the stack with an API secret, do the following: == Test the deployment -Before putting a webhook into production, test your deployment. +Before putting a webhook into production, test your deployment by doing the following: . Modify a file in your repository. @@ -31,14 +31,18 @@ image:../images/image8.png[Figure 5,width=646,height=348] *Figure 4: Checking for S3 bucket updates after a commit* -=== Best Practices +== Best Practices The architecture built by this Quick Start supports AWS best practices for security. -==== SSH Keys +=== SSH Keys -SSH keys are generated at stack creation, and are then encrypted using AWS KMS and the encrypted copy stored in Amazon S3. When you use the Git pull endpoint, the private key is fetched by the Lambda function, decrypted, and used to authenticate against your Git service to perform a clone of the repository. We don’t recommend (a) reusing SSH keys for multiple services, or (b) launching another instance of this Quick Start for each repository that you wish to clone to Amazon S3; this ensures that each repository uses unique keys. +SSH keys are generated when the AWS CloudFormation stack is created. AWS KMS then encrypts the SSH keys stores them in an S3 bucket. When using the Git pull endpoint, the private SSH key is retrieved from the S3 bucket, decrypted, and used to authenticate your Git service before cloning the repository. -==== Webhook Security +We don’t recommend sharing SSH keys among multiple services, or launching another instance of this Quick Start for to clone and store another repository in Amazon S3. Each repository should use unique SSH keys. -Different Git services provide varying ways to authenticate against an endpoint. The Git pull endpoint supports webhook secrets (used by GitHub Enterprise, GitLab, and other Git repository managers) as well as source IP address whitelisting. The zip download endpoint supports personal access tokens (as used by GitHub Enterprise and GitLab) and OAuth2 (used by Bitbucket). We recommend that you set up at least one of these security mechanisms to protect your webhook API endpoint. For more information about how this Quick Start utilizes these mechanisms, see the parameters in the link:#deployment-steps[Deployment Steps] section of this guide. For product-specific guidance on how to configure these security mechanisms, refer to your Git product’s documentation. +=== Webhook Security + +Different Git services provide varying ways to authenticate against an endpoint. The Git pull endpoint supports webhook secrets (used by GitHub Enterprise, GitLab, and other Git repository managers) as well as source IP address whitelisting. The zip download endpoint supports personal access tokens (as used by GitHub Enterprise and GitLab) and OAuth2 (used by Bitbucket). We recommend that you set up at least one of these security mechanisms to protect your webhook API endpoint. + +For more information about how this Quick Start utilizes these mechanisms, see the parameters in the link:#deployment-steps[Deployment steps] section of this guide. For product-specific guidance on how to configure these security mechanisms, refer to your Git product’s documentation. From 4143cca6038f4610d7f3542f5a23d53c87a378e9 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Fri, 4 Dec 2020 16:15:59 -0500 Subject: [PATCH 07/37] edits part 3 120420 --- .../generated/parameters/git2s3.template.adoc | 24 ++++++++ docs/generated/parameters/index.adoc | 4 +- docs/partner_editable/_settings.adoc | 1 + templates/git2s3.template.yaml | 55 +++++++++---------- 4 files changed, 54 insertions(+), 30 deletions(-) create mode 100644 docs/generated/parameters/git2s3.template.adoc diff --git a/docs/generated/parameters/git2s3.template.adoc b/docs/generated/parameters/git2s3.template.adoc new file mode 100644 index 0000000..af7d3cf --- /dev/null +++ b/docs/generated/parameters/git2s3.template.adoc @@ -0,0 +1,24 @@ + +.General Settings +[width="100%",cols="16%,11%,73%",options="header",] +|=== +|Parameter label (name) |Default value|Description|Output S3 Bucket Name +(`OutputBucketName`)|`**__Blank string__**`|OPTIONAL: Bucket Name where the zip file output should be placed, if left blank a bucket name will be automatically generated.|Custom Domain Name +(`CustomDomainName`)|`**__Blank string__**`|Use a custom domain name for the webhook endpoint, if left blank API Gateway will create a domain name for you +|=== +.Git Pull Settings +[width="100%",cols="16%,11%,73%",options="header",] +|=== +|Parameter label (name) |Default value|Description|API Secret +(`ApiSecret`)|`**__Blank string__**`|gitpull method only. WebHook Secrets for use with GitHub Enterprise and GitLab. If a secret is matched IP range authentication is bypassed. Cannot contain: , \ "|Allowed IPs +(`AllowedIps`)|`18.205.93.0/25,18.234.32.128/25,13.52.5.0/25`|gitpull method only. Comma seperated list of IP CIDR blocks for source IP authentication. The BitBucket Cloud IP ranges are provided as defaults.|Exclude Git +(`ExcludeGit`)|`True`|Choose True to include the .git directory in the zip file or false to not include +|=== +.AWS Quick Start Configuration +[width="100%",cols="16%,11%,73%",options="header",] +|=== +|Parameter label (name) |Default value|Description|Quick Start S3 Bucket Name +(`QSS3BucketName`)|`aws-quickstart`|S3 bucket name for the Quick Start assets. Quick Start bucket name can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-).|Quick Start S3 bucket region +(`QSS3BucketRegion`)|`us-east-1`|The AWS Region where the Quick Start S3 bucket (QSS3BucketName) is hosted. When using your own bucket, you must specify this value.|Quick Start S3 Key Prefix +(`QSS3KeyPrefix`)|`quickstart-git2s3/`|S3 key prefix for the Quick Start assets. Quick Start key prefix can include numbers, lowercase letters, uppercase letters, hyphens (-), and forward slash (/). +|=== \ No newline at end of file diff --git a/docs/generated/parameters/index.adoc b/docs/generated/parameters/index.adoc index ff7bd09..e59999e 100644 --- a/docs/generated/parameters/index.adoc +++ b/docs/generated/parameters/index.adoc @@ -1 +1,3 @@ -// placeholder + +=== Deploying into your selected Region +include::git2s3.template.adoc[] diff --git a/docs/partner_editable/_settings.adoc b/docs/partner_editable/_settings.adoc index 3ffe5fe..9c39762 100644 --- a/docs/partner_editable/_settings.adoc +++ b/docs/partner_editable/_settings.adoc @@ -28,3 +28,4 @@ :disable_licenses: :disable_regions: :disable_requirements: +:parameters_as_appendix: diff --git a/templates/git2s3.template.yaml b/templates/git2s3.template.yaml index baeb0f6..6e96085 100644 --- a/templates/git2s3.template.yaml +++ b/templates/git2s3.template.yaml @@ -3,41 +3,41 @@ Description: Git Webhooks to clone repository contents to S3. For integrating 3r party git products with AWS Services like CodePipeline/CodeBuild (qs-1nfhrd9bh) Metadata: QuickStartDocumentation: - EntrypointName: "Launch Quick Start" + EntrypointName: Deploying into your selected Region AWS::CloudFormation::Interface: ParameterGroups: - Label: - default: General Settings + default: General settings Parameters: - OutputBucketName - CustomDomainName - Label: - default: Git Pull Settings + default: Git pull settings Parameters: - ApiSecret - AllowedIps - ExcludeGit - Label: - default: AWS Quick Start Configuration + default: AWS Quick Start configuration Parameters: - QSS3BucketName - QSS3BucketRegion - QSS3KeyPrefix ParameterLabels: AllowedIps: - default: Allowed IPs + default: Allowed IP addresses ApiSecret: - default: API Secret + default: API secret CustomDomainName: - default: Custom Domain Name + default: Custom domain name OutputBucketName: - default: Output S3 Bucket Name + default: Output S3 bucket name QSS3BucketName: - default: Quick Start S3 Bucket Name + default: Quick Start S3 bucket name QSS3BucketRegion: - default: Quick Start S3 bucket region + default: Quick Start S3 bucket Region QSS3KeyPrefix: - default: Quick Start S3 Key Prefix + default: Quick Start S3 key prefix ExcludeGit: default: Exclude Git Parameters: @@ -47,25 +47,23 @@ Parameters: Type: String Default: 18.205.93.0/25,18.234.32.128/25,13.52.5.0/25 ApiSecret: - Description: 'gitpull method only. WebHook Secrets for use with GitHub Enterprise - and GitLab. If a secret is matched IP range authentication is bypassed. Cannot - contain: , \ "' + Description: 'gitpull method only. WebHook secrets for use with GitHub Enterprise + and GitLab. If a secret is matched, IP range authentication is bypassed. Cannot + contain commas (,), backward slashes (\), or quotes ("). Type: String Default: '' NoEcho: 'true' CustomDomainName: - Description: Use a custom domain name for the webhook endpoint, if left blank - API Gateway will create a domain name for you + Description: Domain name for the webhook endpoint. If left blank, API Gateway will create a domain name for you. Type: String Default: '' OutputBucketName: - Description: 'OPTIONAL: Bucket Name where the zip file output should be placed, - if left blank a bucket name will be automatically generated.' + Description: (Optional) Name for the S3 bucket where the .zip file is stored. If left blank, an S3 bucket name is created automatically. Type: String Default: '' QSS3BucketName: AllowedPattern: ^[0-9a-zA-Z]+([0-9a-zA-Z-]*[0-9a-zA-Z])*$ - ConstraintDescription: Quick Start bucket name can include numbers, lowercase + ConstraintDescription: Quick Start S3 bucket name can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-). Default: aws-quickstart @@ -75,7 +73,7 @@ Parameters: Type: String QSS3BucketRegion: Default: 'us-east-1' - Description: 'The AWS Region where the Quick Start S3 bucket (QSS3BucketName) is hosted. When using your own bucket, you must specify this value.' + Description: AWS Region where the Quick Start S3 bucket (QSS3BucketName) is hosted. Required when using your own S3 bucket. Type: String QSS3KeyPrefix: AllowedPattern: ^[0-9a-zA-Z-/]*$ @@ -87,23 +85,23 @@ Parameters: forward slash (/). Type: String VPCId: - Description: Id of the VPC the DL Zip lambda should run in + Description: ID of the VPC in which the .zip download Lambda function runs. Type: String Default: '' VPCCidrRange: - Description: CIDR range of the VPC + Description: CIDR range of the VPC. Type: String Default: '' SubnetIds: - Description: SubnetIds the DL Zip lambda should run in + Description: SubnetIDs in which the .zip download Lambda function runs. Type: CommaDelimitedList Default: '' ScmHostnameOverride: - Description: Hostname to override the incoming json request with + Description: Host name to override the incoming JSON request. Type: String Default: '' ExcludeGit: - Description: Choose True to include the .git directory in the zip file or false to not include + Description: Include the .git directory in the .zip file (True), or do not include (False). Type: String Default: 'True' AllowedValues: ['True', 'False'] @@ -188,7 +186,7 @@ Resources: CopyZipsFunction: Type: AWS::Lambda::Function Properties: - Description: Copies objects from a source S3 bucket to a destination + Description: Copies objects from a source S3 bucket to a destination. Handler: index.handler Runtime: python3.7 Role: !GetAtt 'CopyZipsRole.Arn' @@ -272,8 +270,7 @@ Resources: KMSKey: Type: AWS::KMS::Key Properties: - Description: git CodePipeline integration, used to encrypt/decrypt ssh keys - stored in S3 + Description: Key used to encrypt and decrypt SSH keys stored in S3. KeyPolicy: Version: '2012-10-17' Statement: @@ -718,7 +715,7 @@ Resources: Condition: ShouldRunInVPC Type: AWS::EC2::SecurityGroup Properties: - GroupDescription: Security Group to allow the lambda to access the git service + GroupDescription: Security Group to allow the Lambda function to access the Git service. SecurityGroupEgress: - CidrIp: !Ref 'VPCCidrRange' FromPort: 0 From 3d81d58c27be277bddf21532b22c35c7dc92168a Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Mon, 7 Dec 2020 09:27:48 -0500 Subject: [PATCH 08/37] edits part 1 120720 --- docs/partner_editable/additional_info.adoc | 8 ++++---- docs/partner_editable/architecture.adoc | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/partner_editable/additional_info.adoc b/docs/partner_editable/additional_info.adoc index e5b34dd..87c2ff0 100644 --- a/docs/partner_editable/additional_info.adoc +++ b/docs/partner_editable/additional_info.adoc @@ -9,7 +9,7 @@ To update the stack with an API secret, do the following: . Choose *Use current template*. . On the *Specify stack details* page, change the *API Secret* parameter setting, then choose *Next*. . On the *Configure stack options* page, choose *Next*. -. Select *I acknowledge that this template may create IAM resources*. +. Choose *I acknowledge that this template may create IAM resources*. . Choose *Update stack*. When the status is *UPDATE_COMPLETE*, the stack is updated with the API secret. == Test the deployment @@ -37,12 +37,12 @@ The architecture built by this Quick Start supports AWS best practices for secur === SSH Keys -SSH keys are generated when the AWS CloudFormation stack is created. AWS KMS then encrypts the SSH keys stores them in an S3 bucket. When using the Git pull endpoint, the private SSH key is retrieved from the S3 bucket, decrypted, and used to authenticate your Git service before cloning the repository. +SSH keys are generated when the AWS CloudFormation stack is created. AWS KMS then encrypts the SSH keys and stores them in an S3 bucket. When using the Git pull endpoint, the private SSH key is retrieved from the S3 bucket, decrypted, and used to authenticate your Git service before cloning the repository. We don’t recommend sharing SSH keys among multiple services, or launching another instance of this Quick Start for to clone and store another repository in Amazon S3. Each repository should use unique SSH keys. === Webhook Security -Different Git services provide varying ways to authenticate against an endpoint. The Git pull endpoint supports webhook secrets (used by GitHub Enterprise, GitLab, and other Git repository managers) as well as source IP address whitelisting. The zip download endpoint supports personal access tokens (as used by GitHub Enterprise and GitLab) and OAuth2 (used by Bitbucket). We recommend that you set up at least one of these security mechanisms to protect your webhook API endpoint. +Git services provide different ways to authenticate against an endpoint. The Git pull endpoint supports webhook secrets (used by GitHub Enterprise, GitLab, and other Git repository managers) and source IP address whitelisting. The .zip download endpoint supports personal access tokens (as used by GitHub Enterprise and GitLab) and OAuth2 (used by Bitbucket). We recommend that you set up at least one of these security mechanisms to protect your webhook API endpoint. -For more information about how this Quick Start utilizes these mechanisms, see the parameters in the link:#deployment-steps[Deployment steps] section of this guide. For product-specific guidance on how to configure these security mechanisms, refer to your Git product’s documentation. +For more information about how this Quick Start utilizes endpoint security mechanisms, see the link:#parameter_reference[Parameter reference] section of this guide. For product-specific guidance on how to configure these security mechanisms, refer to your Git service documentation. diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index 36b621e..e3f5ba7 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -26,6 +26,6 @@ NOTE: The first S3 bucket has versioning enabled, and all previous versions are * AWS Identity and Access Management (IAM) roles required by Lambda and API Gateway. The inline permissions attached to these roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. -* Two Lambda-backed AWS CloudFormation custom resources. One resource generates an SSH key pair, encrypts it using AWS KMS, and stores it in an S3 bucket. The second resource deletes the contents of the two S3 buckets when the AWS CloudFormation stack is deleted. +* Two Lambda-backed AWS CloudFormation custom resources. One resource generates an SSH key pair, encrypts it using AWS KMS, and stores it in an S3 bucket. The second resource deletes the contents of the two S3 buckets when you delete the CloudFormation stack. WARNING: If you need backups, copy the contents of the S3 buckets before deleting the AWS CloudFormation stack. \ No newline at end of file From a0efc54444281c129052a795ef55cb37072035dd Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Mon, 14 Dec 2020 10:45:01 -0500 Subject: [PATCH 09/37] edits part 1 121420 --- docs/images/{image8.png => S3_new_object.png} | Bin docs/images/{image7.png => commit_push.png} | Bin docs/images/{image5.png => outputs_tab.png} | Bin docs/images/{image6.png => testfile.png} | Bin .../images/{image2.png => using_webhooks.png} | Bin docs/partner_editable/additional_info.adoc | 23 ++++++++--- docs/partner_editable/architecture.adoc | 11 ++---- docs/partner_editable/deploy_steps.adoc | 37 +++++++++--------- .../partner_editable/faq_troubleshooting.adoc | 35 ++++++----------- .../partner_editable/product_description.adoc | 12 +++--- 10 files changed, 59 insertions(+), 59 deletions(-) rename docs/images/{image8.png => S3_new_object.png} (100%) rename docs/images/{image7.png => commit_push.png} (100%) rename docs/images/{image5.png => outputs_tab.png} (100%) rename docs/images/{image6.png => testfile.png} (100%) rename docs/images/{image2.png => using_webhooks.png} (100%) diff --git a/docs/images/image8.png b/docs/images/S3_new_object.png similarity index 100% rename from docs/images/image8.png rename to docs/images/S3_new_object.png diff --git a/docs/images/image7.png b/docs/images/commit_push.png similarity index 100% rename from docs/images/image7.png rename to docs/images/commit_push.png diff --git a/docs/images/image5.png b/docs/images/outputs_tab.png similarity index 100% rename from docs/images/image5.png rename to docs/images/outputs_tab.png diff --git a/docs/images/image6.png b/docs/images/testfile.png similarity index 100% rename from docs/images/image6.png rename to docs/images/testfile.png diff --git a/docs/images/image2.png b/docs/images/using_webhooks.png similarity index 100% rename from docs/images/image2.png rename to docs/images/using_webhooks.png diff --git a/docs/partner_editable/additional_info.adoc b/docs/partner_editable/additional_info.adoc index 87c2ff0..c47e1d0 100644 --- a/docs/partner_editable/additional_info.adoc +++ b/docs/partner_editable/additional_info.adoc @@ -18,18 +18,29 @@ Before putting a webhook into production, test your deployment by doing the foll . Modify a file in your repository. -image:../images/image6.png[../Desktop/Screen_Shot_2017-07-15_at_11_35_57_AM.png,width=529,height=21] +:xrefstyle: short +[#testfile] +.Modifying a file +[link=images/testfile.png] +image::../images/testfile.png[testfile,width=529,height=21] +[start=2] . Commit and push the changes. -image:../images/image7.png[Figure 4,width=648,height=198] +:xrefstyle: short +[#commit_push] +.Committing and pushing changes +[link=images/commit_push.png] +image::../images/commit_push.png[commit_push,width=648,height=198] -[start=2] +[start=3] . Wait a few minutes, then check your S3 bucket for a new (or updated) object with a key that matches your repository path. -image:../images/image8.png[Figure 5,width=646,height=348] - -*Figure 4: Checking for S3 bucket updates after a commit* +:xrefstyle: short +[#S3_new_object] +.Checking for a new or updated object in your S3 bucket after a commit +[link=images/S3_new_object.png] +image::../images/S3_new_object.png[S3_new_object,width=646,height=348] == Best Practices diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index e3f5ba7..2da27de 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -1,15 +1,12 @@ Deploying this Quick Start builds the following environment in the AWS Cloud. // Replace this example diagram with your own. Send us your source PowerPoint file. Be sure to follow our guidelines here : http://(we should include these points on our contributors giude) + :xrefstyle: short -[#architecture1] -// .Quick Start architecture for {partner-product-short-name} on AWS +[#architecture_diagram] +.Git Webhooks on AWS Quick Start architecture [link=images/architecture_diagram.png] -image::../images/architecture_diagram.png[Architecture,width=100%,height=100%] - - -*Figure 2: Webhook endpoint architecture on AWS* - +image::../images/architecture_diagram.png[architecture_diagram,width=100%,height=100%] The Quick Start deployment sets up a serverless AWS Cloud environment that includes the following components: diff --git a/docs/partner_editable/deploy_steps.adoc b/docs/partner_editable/deploy_steps.adoc index 72efed0..f38358e 100644 --- a/docs/partner_editable/deploy_steps.adoc +++ b/docs/partner_editable/deploy_steps.adoc @@ -8,10 +8,6 @@ . https://fwd.aws/mDMrd[Launch the AWS CloudFormation template] into your AWS account. -You can also https://fwd.aws/wr8Gg[download the template] to use it as a starting point for your own implementation. - -The stack takes approximately 15 minutes to create. - NOTE: You are responsible for the cost of the AWS services used while running this Quick Start reference deployment. There is no additional cost for using this Quick Start. Prices are subject to change. See the pricing pages for each AWS service you will be using in this Quick Start for full details. [start=2] @@ -20,19 +16,21 @@ NOTE: You are responsible for the cost of the AWS services used while running th . On the *Specify Details* page, change the stack name if needed. Review the parameters for the template. Provide values for the parameters that require input. For all other parameters, review the default settings and customize them as necessary. When you finish reviewing and customizing the parameters, choose *Next*. . On the *Options* page, you can https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html[specify tags] (key-value pairs) for resources in your stack and https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-add-tags.html[set advanced options]. When you’re done, choose *Next*. . On the *Review* page, review and confirm the template settings. Under *Capabilities*, select the check box to acknowledge that the template will create IAM resources. -. Choose *Create* to deploy the stack. +. Choose *Create* to deploy the stack. The stack takes approximately 15 minutes to create. . Monitor the status of the stack. When the status is *CREATE_COMPLETE*, the webhook resources are ready. . The *Outputs* tab for the stack contain the two webhook endpoint URLs, the output bucket name, and the public SSH key, as illustrated in Figure 4. -=== Configure Your Git Repository - -After you have successfully deployed the Quick Start, you can configure the service that will use the S3 object as a source. Figure 4 shows the *Outputs* tab in the AWS CloudFormation console, which displays the outputs for configuring your Git webhook. - -image:../images/image5.png[Figure 4,width=701,height=222] +NOTE: You can also https://fwd.aws/wr8Gg[download the template] to use it as a starting point for your own implementation. +=== Configure Your Git Repository -*Figure 3: Outputs tab after deployment* +:xrefstyle: short +After you have successfully deployed the Quick Start, you can configure the service that will use the S3 object as a source. <> shows the *Outputs* tab in the AWS CloudFormation console, which displays the outputs for configuring your Git webhook. +[#outputs_tab] +.AWS CloudFormation console Outputs tab +[link=images/outputs_tab.png] +image::../images/outputs_tab.png[outputs_tab,width=701,height=222] * *GitPullWebHookApi* is the webhook endpoint to use if you opt for the Git pull method described in the link:#webhook-endpoints[Webhook Endpoints] section of this guide. * *PublicSSHKey* is the public SSH key that you use to connect to your repository if you’re using the Git pull endpoint. This key can be configured as a read-only machine user or as a deployment key in your Git service. @@ -43,14 +41,17 @@ The exact process to set up webhooks differs from service to service. For step-b After you have successfully deployed the Quick Start, you can configure the desired service to use the S3 object as a source. As previously illustrated in Figure 4, the *Outputs* tab in the AWS CloudFormation console includes the *OutputBucketName* output. This output is an S3 key that forms the base of the path to your code zip file. The S3 key is in this format: -S3://_output-bucket-name_/_git-user_/_git-repository_/_git-user_git-repository_.zip - +``` +S3://output-bucket-name/git-user/git-repository/git-user_git-repository.zip +``` where: -* _git-user_ is the owner or path prefix of the repository. In some Git services, this may be an organization name. -* Some Git services do not return a Git user or organization for a repository. In these cases, you can omit the _git-user_ parts of the path. +* `git-user` is the owner or path prefix of the repository. In some Git services, this may be an organization name. +* Some Git services do not return a Git user or organization for a repository. In these cases, you can omit the `git-user` parts of the path. + +The process for linking an AWS service to an S3 bucket varies. o typical services are AWS CodePipeline and AWS CodeBuild. For step-by-step instructions, consult the link:#aws-services[AWS Service documentation]. For easy reference, here are links for the two typical services: -The exact process for linking an AWS service differs from service to service. For step-by-step instructions, consult the service documentation. For easy reference, here are links for the two typical services: +* http://docs.aws.amazon.com/codepipeline/latest/userguide/tutorials-simple-s3.html[Tutorial: Create a simple pipeline (S3 bucket)] +* http://docs.aws.amazon.com/codebuild/latest/userguide/getting-started.html[Getting started with AWS CodeBuild using the console] -* http://docs.aws.amazon.com/codepipeline/latest/userguide/tutorials-simple-s3.html[AWS CodePipeline – Simple pipeline tutorial] -* http://docs.aws.amazon.com/codebuild/latest/userguide/getting-started.html[AWS CodeBuild – Walkthrough for creating deployable source code] +For more links to AWS service documentation, see link:#aws-services[AWS Services] later in this guide. diff --git a/docs/partner_editable/faq_troubleshooting.adoc b/docs/partner_editable/faq_troubleshooting.adoc index dacb8ae..eb0b472 100644 --- a/docs/partner_editable/faq_troubleshooting.adoc +++ b/docs/partner_editable/faq_troubleshooting.adoc @@ -15,34 +15,23 @@ For additional information, see https://docs.aws.amazon.com/AWSCloudFormation/la If your commits are not being pushed through to Amazon S3, check the following: * In your Git service’s webhooks configuration, check that your configured security parameters and the endpoint are correct. Consult the Git service documentation for detailed guidance on configuration. -* Check the Lambda logs for errors. These are stored in Amazon CloudWatch Logs. To access the logs, open the endpoint’s Lambda function in the AWS console, navigate to the *Monitoring* tab, and then choose *View logs in CloudWatch*. +* Check the Lambda logs for errors. These are stored in Amazon CloudWatch Logs. To access the logs, open the endpoint’s Lambda function in the AWS console, navigate to the *Monitoring* tab, and then choose *View logs in CloudWatch*. For more information, see https://docs.aws.amazon.com/lambda/latest/dg/lambda-troubleshooting.html[Troubleshooting issues in AWS Lambda^] on the AWS website. -For additional information, see https://docs.aws.amazon.com/lambda/latest/dg/lambda-troubleshooting.html[Troubleshooting issues in AWS Lambda^] on the AWS website. - -* Check the AWS CodeBuild project logs for errors. These are stored in Amazon CloudWatch Logs. To access the logs, open the endpoint’s CodeBuild Build Project in the AWS console, select a *Build run* and click on the hyperlink and navigate to the *Build logs* tab to see the build execution logs. - -For additional information, see https://docs.aws.amazon.com/codebuild/latest/userguide/troubleshooting.html[Troubleshooting AWS CodeBuild^] on the AWS website. +* Check the AWS CodeBuild project logs for errors. These are stored in Amazon CloudWatch Logs. To access the logs, open the endpoint’s CodeBuild Build Project in the AWS console, select a *Build run* and click on the hyperlink and navigate to the *Build logs* tab to see the build execution logs. For more information, see https://docs.aws.amazon.com/codebuild/latest/userguide/troubleshooting.html[Troubleshooting AWS CodeBuild^] on the AWS website. == Additional Resources === AWS services -*AWS CloudFormation* https://aws.amazon.com/documentation/cloudformation/ - -*AWS Lambda* https://aws.amazon.com/documentation/lambda/ - -*Amazon API Gateway* https://aws.amazon.com/documentation/apigateway/ - -*Amazon S3* https://aws.amazon.com/documentation/s3/ - -*AWS CodePipeline* https://aws.amazon.com/documentation/codepipeline/ - -*AWS CodeBuild* https://aws.amazon.com/documentation/codebuild/ - -=== Webhooks - -*GitHub Developer Repository Webhooks API* https://developer.github.com/v3/repos/hooks/ +* https://aws.amazon.com/documentation/cloudformation/[AWS CloudFormation] +* https://aws.amazon.com/documentation/lambda/[AWS Lambda] +* https://aws.amazon.com/documentation/apigateway/[Amazon API Gateway] +* https://aws.amazon.com/documentation/s3/[Amazon S3] +* https://aws.amazon.com/documentation/codepipeline/[AWS CodePipeline] +* https://aws.amazon.com/documentation/codebuild/[AWS CodeBuild] -*Atlassian Bitbucket Webhooks documentation* https://confluence.atlassian.com/bitbucket/manage-webhooks-735643732.html +=== Git webhooks -*GitLab Webhooks documentation* https://docs.gitlab.com/ce/user/project/integrations/webhooks.html +* https://developer.github.com/v3/repos/hooks/[Webhooks on GitHub Developer blog] +* https://confluence.atlassian.com/bitbucket/manage-webhooks-735643732.html[Manage webhooks on Atlassian Bitbucket Support] +* https://docs.gitlab.com/ce/user/project/integrations/webhooks.html[Webhooks on GitLab Docs] \ No newline at end of file diff --git a/docs/partner_editable/product_description.adoc b/docs/partner_editable/product_description.adoc index c88dfc5..6f6c151 100644 --- a/docs/partner_editable/product_description.adoc +++ b/docs/partner_editable/product_description.adoc @@ -1,10 +1,12 @@ -As Figure 1 illustrates, when code is pushed to your repository, the Git service sends an HTTPS POST to the endpoints configured by the Quick Start. The POST contains JSON data about the push operation, including the repository details that the Quick Start uses to fetch the latest version of your code. +:xrefstyle: short +As <> illustrates, when code is pushed to your repository, the Git service sends an HTTPS POST request to the endpoints configured by the Quick Start. The POST request contains JavaScript Object Notation (JSON) data about the push operation, including the repository details that the Quick Start uses to fetch the latest version of your code. -image:../images/image2.png[image,width=647,height=266] +[#using_webhooks] +.Using webhooks for code commits +[link=images/using_webhooks.png] +image::../images/using_webhooks.png[using_webhooks,width=647,height=266] -*Figure 1: Using webhooks for code commits* - -This Quick Start implements the required code to trigger a Lambda function and an AWS CodeBuild project working together that zips up the code in your repository and places the .zip file in Amazon S3. When this function is triggered by a Git webhook, it provides a convenient way to bridge Git services with AWS services like AWS CodePipeline and AWS CodeBuild, so that builds and pipeline executions occur automatically when you commit your code to a Git repository. Linking your existing code repositories to the AWS Cloud in this way enables your code to be continuously integrated, tested, built, and deployed on the AWS Cloud with each change. +This Quick Start provides a deploys an AWS Lambda function and an AWS CodeBuild project to zip the code in your Git repository and place the .zip file in an Amazon Simple Storage Service (Amazon S3) bucket. The deployment provides the code to trigger builds and pipeline executions automatically when you commit changes to a Git repository. With this deployment, your code is continuously integrated, tested, built, and deployed on the AWS Cloud with each change. NOTE: The AWS CodeBuild Project deployed by this Quick Start must be able to communicate with your Git repository. For example, you can use a SaaS-based Git service that AWS CodeBuild can reach through the internet. From 7bec22e4365084c925ec57b36fd64a2e132dae92 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Mon, 14 Dec 2020 11:29:03 -0500 Subject: [PATCH 10/37] edits part 2 121420 --- docs/partner_editable/deploy_steps.adoc | 20 +++++++------------ .../partner_editable/faq_troubleshooting.adoc | 6 ++++-- 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/docs/partner_editable/deploy_steps.adoc b/docs/partner_editable/deploy_steps.adoc index f38358e..f50506e 100644 --- a/docs/partner_editable/deploy_steps.adoc +++ b/docs/partner_editable/deploy_steps.adoc @@ -22,7 +22,7 @@ NOTE: You are responsible for the cost of the AWS services used while running th NOTE: You can also https://fwd.aws/wr8Gg[download the template] to use it as a starting point for your own implementation. -=== Configure Your Git Repository +=== Configure Your Git repository :xrefstyle: short After you have successfully deployed the Quick Start, you can configure the service that will use the S3 object as a source. <> shows the *Outputs* tab in the AWS CloudFormation console, which displays the outputs for configuring your Git webhook. @@ -37,21 +37,15 @@ image::../images/outputs_tab.png[outputs_tab,width=701,height=222] The exact process to set up webhooks differs from service to service. For step-by-step instructions, consult your Git service’s documentation. -=== Configure an AWS Service to Connect to the S3 Object +=== Configure an AWS service to connect to the S3 object -After you have successfully deployed the Quick Start, you can configure the desired service to use the S3 object as a source. As previously illustrated in Figure 4, the *Outputs* tab in the AWS CloudFormation console includes the *OutputBucketName* output. This output is an S3 key that forms the base of the path to your code zip file. The S3 key is in this format: +After deploying the Quick Start, configure the AWS services in your workload to use the S3 object as a source. + +As previously illustrated in <>, the *Outputs* tab in the AWS CloudFormation console includes the *OutputBucketName*. This output is an S3 key that forms the base of the path to your code .zip file. The S3 key is in the following format: ``` S3://output-bucket-name/git-user/git-repository/git-user_git-repository.zip ``` -where: - -* `git-user` is the owner or path prefix of the repository. In some Git services, this may be an organization name. -* Some Git services do not return a Git user or organization for a repository. In these cases, you can omit the `git-user` parts of the path. - -The process for linking an AWS service to an S3 bucket varies. o typical services are AWS CodePipeline and AWS CodeBuild. For step-by-step instructions, consult the link:#aws-services[AWS Service documentation]. For easy reference, here are links for the two typical services: - -* http://docs.aws.amazon.com/codepipeline/latest/userguide/tutorials-simple-s3.html[Tutorial: Create a simple pipeline (S3 bucket)] -* http://docs.aws.amazon.com/codebuild/latest/userguide/getting-started.html[Getting started with AWS CodeBuild using the console] +Here, `git-user` is the owner or path prefix of the repository. In some Git services, this may be an organization name. However, some Git services do not return a Git user or organization for a repository. In these cases, you can omit the `git-user` parts of the path. -For more links to AWS service documentation, see link:#aws-services[AWS Services] later in this guide. +The instructions for linking an AWS service to the S3 object vary. For links to AWS service documentation, see link:#aws-services[AWS Services] later in this guide. \ No newline at end of file diff --git a/docs/partner_editable/faq_troubleshooting.adoc b/docs/partner_editable/faq_troubleshooting.adoc index eb0b472..0494b78 100644 --- a/docs/partner_editable/faq_troubleshooting.adoc +++ b/docs/partner_editable/faq_troubleshooting.adoc @@ -19,7 +19,7 @@ If your commits are not being pushed through to Amazon S3, check the following: * Check the AWS CodeBuild project logs for errors. These are stored in Amazon CloudWatch Logs. To access the logs, open the endpoint’s CodeBuild Build Project in the AWS console, select a *Build run* and click on the hyperlink and navigate to the *Build logs* tab to see the build execution logs. For more information, see https://docs.aws.amazon.com/codebuild/latest/userguide/troubleshooting.html[Troubleshooting AWS CodeBuild^] on the AWS website. -== Additional Resources +== Additional resources === AWS services @@ -28,9 +28,11 @@ If your commits are not being pushed through to Amazon S3, check the following: * https://aws.amazon.com/documentation/apigateway/[Amazon API Gateway] * https://aws.amazon.com/documentation/s3/[Amazon S3] * https://aws.amazon.com/documentation/codepipeline/[AWS CodePipeline] +** http://docs.aws.amazon.com/codepipeline/latest/userguide/tutorials-simple-s3.html[Tutorial: Create a simple pipeline (S3 bucket)] * https://aws.amazon.com/documentation/codebuild/[AWS CodeBuild] +** http://docs.aws.amazon.com/codebuild/latest/userguide/getting-started.html[Getting started with AWS CodeBuild using the console] -=== Git webhooks +=== Webhooks * https://developer.github.com/v3/repos/hooks/[Webhooks on GitHub Developer blog] * https://confluence.atlassian.com/bitbucket/manage-webhooks-735643732.html[Manage webhooks on Atlassian Bitbucket Support] From 95a3975abceef1536bf460c8a47eed5f4637edf6 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Mon, 14 Dec 2020 15:54:29 -0500 Subject: [PATCH 11/37] edits part 3 121420 --- docs/partner_editable/architecture.adoc | 2 +- docs/partner_editable/deploy_steps.adoc | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index 2da27de..b454cb7 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -4,7 +4,7 @@ Deploying this Quick Start builds the following environment in the AWS Cloud. :xrefstyle: short [#architecture_diagram] -.Git Webhooks on AWS Quick Start architecture +.Git webhooks with AWS services Quick Start architecture [link=images/architecture_diagram.png] image::../images/architecture_diagram.png[architecture_diagram,width=100%,height=100%] diff --git a/docs/partner_editable/deploy_steps.adoc b/docs/partner_editable/deploy_steps.adoc index f50506e..bf5cc4c 100644 --- a/docs/partner_editable/deploy_steps.adoc +++ b/docs/partner_editable/deploy_steps.adoc @@ -22,11 +22,11 @@ NOTE: You are responsible for the cost of the AWS services used while running th NOTE: You can also https://fwd.aws/wr8Gg[download the template] to use it as a starting point for your own implementation. -=== Configure Your Git repository +=== Configuring Git services -:xrefstyle: short -After you have successfully deployed the Quick Start, you can configure the service that will use the S3 object as a source. <> shows the *Outputs* tab in the AWS CloudFormation console, which displays the outputs for configuring your Git webhook. +After deploying the Quick Start, set up your webhook by configuring your Git service to use the S3 object as a source. To do this, you need the *GitPullWebHookApi* and *PublicSSHKey*, which display on the *Outputs* tab on the AWS CloudFormation console. +:xrefstyle: short [#outputs_tab] .AWS CloudFormation console Outputs tab [link=images/outputs_tab.png] @@ -35,9 +35,9 @@ image::../images/outputs_tab.png[outputs_tab,width=701,height=222] * *GitPullWebHookApi* is the webhook endpoint to use if you opt for the Git pull method described in the link:#webhook-endpoints[Webhook Endpoints] section of this guide. * *PublicSSHKey* is the public SSH key that you use to connect to your repository if you’re using the Git pull endpoint. This key can be configured as a read-only machine user or as a deployment key in your Git service. -The exact process to set up webhooks differs from service to service. For step-by-step instructions, consult your Git service’s documentation. +The instructions for setting up webhooks vary by Git service. For more information, see your Git service documentation. -=== Configure an AWS service to connect to the S3 object +=== Configuring AWS services After deploying the Quick Start, configure the AWS services in your workload to use the S3 object as a source. From 6081387fe3fef1099a58aa9d307e5d9193725ddb Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Tue, 15 Dec 2020 10:04:52 -0500 Subject: [PATCH 12/37] edits part 1 121520 --- docs/partner_editable/additional_info.adoc | 4 ++-- docs/partner_editable/product_description.adoc | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/partner_editable/additional_info.adoc b/docs/partner_editable/additional_info.adoc index c47e1d0..6ce3e30 100644 --- a/docs/partner_editable/additional_info.adoc +++ b/docs/partner_editable/additional_info.adoc @@ -42,7 +42,7 @@ image::../images/commit_push.png[commit_push,width=648,height=198] [link=images/S3_new_object.png] image::../images/S3_new_object.png[S3_new_object,width=646,height=348] -== Best Practices +== Best practices The architecture built by this Quick Start supports AWS best practices for security. @@ -52,7 +52,7 @@ SSH keys are generated when the AWS CloudFormation stack is created. AWS KMS the We don’t recommend sharing SSH keys among multiple services, or launching another instance of this Quick Start for to clone and store another repository in Amazon S3. Each repository should use unique SSH keys. -=== Webhook Security +=== Webhook security Git services provide different ways to authenticate against an endpoint. The Git pull endpoint supports webhook secrets (used by GitHub Enterprise, GitLab, and other Git repository managers) and source IP address whitelisting. The .zip download endpoint supports personal access tokens (as used by GitHub Enterprise and GitLab) and OAuth2 (used by Bitbucket). We recommend that you set up at least one of these security mechanisms to protect your webhook API endpoint. diff --git a/docs/partner_editable/product_description.adoc b/docs/partner_editable/product_description.adoc index 6f6c151..28123da 100644 --- a/docs/partner_editable/product_description.adoc +++ b/docs/partner_editable/product_description.adoc @@ -7,6 +7,6 @@ As <> illustrates, when code is pushed to your repository, the G [link=images/using_webhooks.png] image::../images/using_webhooks.png[using_webhooks,width=647,height=266] -This Quick Start provides a deploys an AWS Lambda function and an AWS CodeBuild project to zip the code in your Git repository and place the .zip file in an Amazon Simple Storage Service (Amazon S3) bucket. The deployment provides the code to trigger builds and pipeline executions automatically when you commit changes to a Git repository. With this deployment, your code is continuously integrated, tested, built, and deployed on the AWS Cloud with each change. +This Quick Start deploys an AWS Lambda function and an AWS CodeBuild project to zip the code in your Git repository and place the .zip file in an Amazon Simple Storage Service (Amazon S3) bucket. The deployment provides the code to trigger builds and pipeline executions automatically when you commit changes to a Git repository. With this deployment, your code is continuously integrated, tested, built, and deployed on the AWS Cloud with each change. -NOTE: The AWS CodeBuild Project deployed by this Quick Start must be able to communicate with your Git repository. For example, you can use a SaaS-based Git service that AWS CodeBuild can reach through the internet. +NOTE: The AWS CodeBuild Project deployed by this Quick Start must be able to communicate with your Git repository using a Git service. For example, you can use a SaaS-based Git service that AWS CodeBuild can reach through the internet. From b384b4458c518bbc58807259df52785f1f86735b Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Thu, 17 Dec 2020 12:16:52 -0500 Subject: [PATCH 13/37] edits part 1 121720 --- docs/partner_editable/overview_target_and_usage.adoc | 2 +- docs/partner_editable/product_description.adoc | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/partner_editable/overview_target_and_usage.adoc b/docs/partner_editable/overview_target_and_usage.adoc index 3a97fda..8aa4c00 100644 --- a/docs/partner_editable/overview_target_and_usage.adoc +++ b/docs/partner_editable/overview_target_and_usage.adoc @@ -1 +1 @@ -This Quick Start implements HTTPS endpoints and code that helps you link AWS services with webhooks. Git webhooks enable event-driven integration between Git services and external applications. This Quick Start uses this integration to receive an event when commits are pushed to a Git repository. +Git webhooks enable event-driven integration between Git services and applications on the AWS Cloud. This Quick Start implements HTTPS endpoints and code you can leverage to link your AWS services to a Git service with webhooks. The code it deploys will run automatically when code is committed to the linked Git repository. diff --git a/docs/partner_editable/product_description.adoc b/docs/partner_editable/product_description.adoc index 28123da..b942933 100644 --- a/docs/partner_editable/product_description.adoc +++ b/docs/partner_editable/product_description.adoc @@ -1,12 +1,12 @@ :xrefstyle: short -As <> illustrates, when code is pushed to your repository, the Git service sends an HTTPS POST request to the endpoints configured by the Quick Start. The POST request contains JavaScript Object Notation (JSON) data about the push operation, including the repository details that the Quick Start uses to fetch the latest version of your code. +As <> illustrates, when code is pushed to your Git repository, the Git service sends an HTTPS POST request to the endpoints configured by the Quick Start. The POST request contains JavaScript Object Notation (JSON) data about the push operation, including the repository details that the Quick Start uses to fetch the latest version of your code. [#using_webhooks] .Using webhooks for code commits [link=images/using_webhooks.png] image::../images/using_webhooks.png[using_webhooks,width=647,height=266] -This Quick Start deploys an AWS Lambda function and an AWS CodeBuild project to zip the code in your Git repository and place the .zip file in an Amazon Simple Storage Service (Amazon S3) bucket. The deployment provides the code to trigger builds and pipeline executions automatically when you commit changes to a Git repository. With this deployment, your code is continuously integrated, tested, built, and deployed on the AWS Cloud with each change. +This Quick Start deploys an AWS Lambda function and an AWS CodeBuild project to zip the code in your Git repository and store it in an Amazon Simple Storage Service (Amazon S3) bucket. The deployment provides the code to trigger builds and pipeline executions automatically when you commit changes to a Git repository. With this deployment, your code is continuously integrated, tested, built, and deployed on the AWS Cloud with each change. NOTE: The AWS CodeBuild Project deployed by this Quick Start must be able to communicate with your Git repository using a Git service. For example, you can use a SaaS-based Git service that AWS CodeBuild can reach through the internet. From 0b01eb24d55e2fdcdab847a4d981ab0b9001359c Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Thu, 17 Dec 2020 13:38:20 -0500 Subject: [PATCH 14/37] edits part 2 121720 --- docs/partner_editable/overview_target_and_usage.adoc | 4 +++- templates/git2s3.template.yaml | 12 ++++++------ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/docs/partner_editable/overview_target_and_usage.adoc b/docs/partner_editable/overview_target_and_usage.adoc index 8aa4c00..306af14 100644 --- a/docs/partner_editable/overview_target_and_usage.adoc +++ b/docs/partner_editable/overview_target_and_usage.adoc @@ -1 +1,3 @@ -Git webhooks enable event-driven integration between Git services and applications on the AWS Cloud. This Quick Start implements HTTPS endpoints and code you can leverage to link your AWS services to a Git service with webhooks. The code it deploys will run automatically when code is committed to the linked Git repository. +Git webhooks enable event-driven integration between Git services and external applications. This Quick Start implements endpoints and code you can use to link a Git repository to AWS services in your AWS account. Code to retrieve, zip, and store your repository code to an Amazon S3 bucket runs automatically when commits are pushed to the linked Git repository. + +This guide explains the architecture that is deployed by the Quick Start, and links to view and launch the AWS CloudFormation template that automates the deployment. The guide is for IT infrastructure architects, administrators, and DevOps professionals who are planning to implement AWS services that use Amazon S3 as a source. Examples of such services include AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy. diff --git a/templates/git2s3.template.yaml b/templates/git2s3.template.yaml index 6e96085..a72b18e 100644 --- a/templates/git2s3.template.yaml +++ b/templates/git2s3.template.yaml @@ -3,7 +3,7 @@ Description: Git Webhooks to clone repository contents to S3. For integrating 3r party git products with AWS Services like CodePipeline/CodeBuild (qs-1nfhrd9bh) Metadata: QuickStartDocumentation: - EntrypointName: Deploying into your selected Region + EntrypointName: Deploy into your selected Region AWS::CloudFormation::Interface: ParameterGroups: - Label: @@ -42,12 +42,12 @@ Metadata: default: Exclude Git Parameters: AllowedIps: - Description: gitpull method only. Comma seperated list of IP CIDR blocks for source - IP authentication. The BitBucket Cloud IP ranges are provided as defaults. + Description: Gitpull method only. Comma-separated list of IP CIDR blocks for source + IP authentication. BitBucket Cloud IP ranges are provided as defaults. Type: String Default: 18.205.93.0/25,18.234.32.128/25,13.52.5.0/25 ApiSecret: - Description: 'gitpull method only. WebHook secrets for use with GitHub Enterprise + Description: 'Gitpull method only. WebHook secrets for use with GitHub Enterprise and GitLab. If a secret is matched, IP range authentication is bypassed. Cannot contain commas (,), backward slashes (\), or quotes ("). Type: String @@ -85,7 +85,7 @@ Parameters: forward slash (/). Type: String VPCId: - Description: ID of the VPC in which the .zip download Lambda function runs. + Description: ID of the VPC in which the Lambda function runs. Type: String Default: '' VPCCidrRange: @@ -93,7 +93,7 @@ Parameters: Type: String Default: '' SubnetIds: - Description: SubnetIDs in which the .zip download Lambda function runs. + Description: SubnetIDs in which the Lambda function runs. Type: CommaDelimitedList Default: '' ScmHostnameOverride: From 6967363f79b0e206dbde8716abc106445e5ff06b Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Thu, 17 Dec 2020 15:27:42 -0500 Subject: [PATCH 15/37] edits part 3 121720 --- docs/partner_editable/_settings.adoc | 8 +++---- docs/partner_editable/additional_info.adoc | 22 ++++--------------- docs/partner_editable/architecture.adoc | 25 +++++++++++++++++++++- 3 files changed, 32 insertions(+), 23 deletions(-) diff --git a/docs/partner_editable/_settings.adoc b/docs/partner_editable/_settings.adoc index 9c39762..a684a92 100644 --- a/docs/partner_editable/_settings.adoc +++ b/docs/partner_editable/_settings.adoc @@ -1,13 +1,13 @@ // Do not change this first attribute. Do change the others. :quickstart-team-name: AWS Quick Start team :quickstart-project-name: quickstart-git2s3 -:partner-product-name: Git Webhooks +:partner-product-name: Git webhooks // For the following attribute, if you have no short name, enter the same name as partner-product-name. -:partner-product-short-name: Git Webhooks +:partner-product-short-name: Git webhooks // If there's no partner, comment partner-company-name and partner-contributors. // :partner-company-name: Example Company Name, Ltd. -:doc-month: December -:doc-year: 2020 +:doc-month: January +:doc-year: 2021 // For the following two "contributor" attributes, if the partner agrees to include names in the byline, // enter names for both partner-contributors and quickstart-contributors. // Otherwise, delete all placeholder names: everything preceding "{partner-company-name}" diff --git a/docs/partner_editable/additional_info.adoc b/docs/partner_editable/additional_info.adoc index 6ce3e30..be59df8 100644 --- a/docs/partner_editable/additional_info.adoc +++ b/docs/partner_editable/additional_info.adoc @@ -1,6 +1,6 @@ == Adding an API secret after deployment -You can launch this Quick Start without providing an *API Secret* parameter. If your Git service provides an API secret when you create a webhook, you can update the stack with the API secret later. +You can launch this Quick Start without an *API Secret* parameter. If your Git service provides an API secret when you create a webhook, you can update the stack with the API secret later. To update the stack with an API secret, do the following: @@ -17,23 +17,7 @@ To update the stack with an API secret, do the following: Before putting a webhook into production, test your deployment by doing the following: . Modify a file in your repository. - -:xrefstyle: short -[#testfile] -.Modifying a file -[link=images/testfile.png] -image::../images/testfile.png[testfile,width=529,height=21] - -[start=2] . Commit and push the changes. - -:xrefstyle: short -[#commit_push] -.Committing and pushing changes -[link=images/commit_push.png] -image::../images/commit_push.png[commit_push,width=648,height=198] - -[start=3] . Wait a few minutes, then check your S3 bucket for a new (or updated) object with a key that matches your repository path. :xrefstyle: short @@ -48,7 +32,9 @@ The architecture built by this Quick Start supports AWS best practices for secur === SSH Keys -SSH keys are generated when the AWS CloudFormation stack is created. AWS KMS then encrypts the SSH keys and stores them in an S3 bucket. When using the Git pull endpoint, the private SSH key is retrieved from the S3 bucket, decrypted, and used to authenticate your Git service before cloning the repository. +This Quick Start creates SSH keys with AWS CloudFormation stack. AWS KMS encrypts the SSH keys and stores them in an S3 bucket. + +With the Git pull endpoint method, AWS CodeBuild retrieves and decrypts the private SSH key and uses it to authenticate your Git service before cloning the repository. We don’t recommend sharing SSH keys among multiple services, or launching another instance of this Quick Start for to clone and store another repository in Amazon S3. Each repository should use unique SSH keys. diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index b454cb7..610b0dc 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -25,4 +25,27 @@ NOTE: The first S3 bucket has versioning enabled, and all previous versions are * Two Lambda-backed AWS CloudFormation custom resources. One resource generates an SSH key pair, encrypts it using AWS KMS, and stores it in an S3 bucket. The second resource deletes the contents of the two S3 buckets when you delete the CloudFormation stack. -WARNING: If you need backups, copy the contents of the S3 buckets before deleting the AWS CloudFormation stack. \ No newline at end of file +WARNING: If you need backups, copy the contents of the S3 buckets before deleting the AWS CloudFormation stack. + +== Webhook endpoints + +This Quick Start deploys two endpoints for connecting to your Git repository. Each endpoint has different benefits. Choose the endpoint that best fits your use case, repository size, and other requirements. + +[cols="1,2,3a"] +|=== +Endpoint | Description | Benefits + +| Zip download | Uses the Git service's HTTP API to download a .zip file of the entire repository. | + +* No need for external libraries. +* Smaller Lambda function code. +* Large repository size limit (500 MB). + +| Git pull | Uses SSH to pull from the Git repository. The repository contents are then zipped and uploaded to Amazon S3. | + +* Efficient for repositories with a high volume of commits, because each time the API is triggered, it downloads only changed files. +* Suitable for any Git server that supports webhooks and SSH. Does not depend on personal access tokens or OAuth2. +* More extensible because it uses a standard Git library. + +|=== + From 6813cc74119722e24bdc6f1a457be5496d90ebef Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Thu, 17 Dec 2020 18:16:40 -0500 Subject: [PATCH 16/37] edits part 4 121720 --- docs/partner_editable/architecture.adoc | 2 +- docs/partner_editable/deploy_steps.adoc | 12 +++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index 610b0dc..d5fde8c 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -12,7 +12,7 @@ The Quick Start deployment sets up a serverless AWS Cloud environment that inclu * An Amazon API Gateway endpoint to accept Git webhook requests. * An AWS Lambda function to process Git webhook requests and invoke AWS CodeBuild. -* A CodeBuild project to compress and upload the Git repository code to an Amazon S3 bucket. +* A CodeBuild project to compress and upload Git repository code to an Amazon S3 bucket. IMPORTANT: The CodeBuild project that is deployed by this Quick Start must be able to connect to your Git repository, either over SSH (Secure Shell) or through the Git service endpoint. For example, you can use a SaaS-based Git service to which AWS CodeBuild can connect over the internet. diff --git a/docs/partner_editable/deploy_steps.adoc b/docs/partner_editable/deploy_steps.adoc index bf5cc4c..53d5abd 100644 --- a/docs/partner_editable/deploy_steps.adoc +++ b/docs/partner_editable/deploy_steps.adoc @@ -24,18 +24,20 @@ NOTE: You can also https://fwd.aws/wr8Gg[download the template] to use it as a s === Configuring Git services -After deploying the Quick Start, set up your webhook by configuring your Git service to use the S3 object as a source. To do this, you need the *GitPullWebHookApi* and *PublicSSHKey*, which display on the *Outputs* tab on the AWS CloudFormation console. +After deploying the Quick Start, set up a webhook in the Git repository. + +To configure a link:#webhook-endpoints[git pull endpoint], you need the *GitPullWebHookApi* and *PublicSSHKey*, which display on the *Outputs* tab on the AWS CloudFormation console. :xrefstyle: short [#outputs_tab] -.AWS CloudFormation console Outputs tab +.Outputs tab on the AWS CloudFormation console [link=images/outputs_tab.png] image::../images/outputs_tab.png[outputs_tab,width=701,height=222] -* *GitPullWebHookApi* is the webhook endpoint to use if you opt for the Git pull method described in the link:#webhook-endpoints[Webhook Endpoints] section of this guide. -* *PublicSSHKey* is the public SSH key that you use to connect to your repository if you’re using the Git pull endpoint. This key can be configured as a read-only machine user or as a deployment key in your Git service. +* *GitPullWebHookApi* is the URL endpoint that receives the HTTP POST request from the Git service. +* *PublicSSHKey* is the public SSH key used to connect to your Git repository. This key can be configured as a read-only machine user or as a deployment key in your Git repository. -The instructions for setting up webhooks vary by Git service. For more information, see your Git service documentation. +The instructions for setting up webhooks and deploy keys vary by Git service. For more information, see your Git service documentation. === Configuring AWS services From d27fd555a9430f115832af19b0f61683d1410271 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Fri, 18 Dec 2020 11:24:52 -0500 Subject: [PATCH 17/37] edits part 1 121820 --- docs/partner_editable/architecture.adoc | 27 +++++++++++-------------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index d5fde8c..9cce340 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -10,38 +10,34 @@ image::../images/architecture_diagram.png[architecture_diagram,width=100%,height The Quick Start deployment sets up a serverless AWS Cloud environment that includes the following components: -* An Amazon API Gateway endpoint to accept Git webhook requests. +* An Amazon API Gateway endpoint to receive Git webhook requests and forward requests to AWS Lambda. * An AWS Lambda function to process Git webhook requests and invoke AWS CodeBuild. -* A CodeBuild project to compress and upload Git repository code to an Amazon S3 bucket. - -IMPORTANT: The CodeBuild project that is deployed by this Quick Start must be able to connect to your Git repository, either over SSH (Secure Shell) or through the Git service endpoint. For example, you can use a SaaS-based Git service to which AWS CodeBuild can connect over the internet. - -* AWS Key Management Service (AWS KMS) to encrypt the private keys used to connect to the Git repository with SSH. -* Two Amazon Simple Storage Service (S3) buckets, one to store the compressed Git repository code, and another to store the private SSH keys encrypted by AWS KMS. - -NOTE: The first S3 bucket has versioning enabled, and all previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?]. - * AWS Identity and Access Management (IAM) roles required by Lambda and API Gateway. The inline permissions attached to these roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. +* A CodeBuild project to fetch, zip, and upload Git repository code to Amazon Simple Storage Service (Amazon S3). +* AWS Key Management Service (AWS KMS) to encrypt private keys used to connect to the Git repository with SSH. +* Two Amazon Simple Storage Service (S3) buckets, one for Git repository contents, and the other for private SSH keys encrypted by AWS KMS. +* Two Lambda-backed AWS CloudFormation custom resources. One generates an SSH key pair, encrypts it using AWS KMS, and uploads it to Amazon S3. The second deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you need backups, ensure that you copy S3 bucket contents before deleting the stack. -* Two Lambda-backed AWS CloudFormation custom resources. One resource generates an SSH key pair, encrypts it using AWS KMS, and stores it in an S3 bucket. The second resource deletes the contents of the two S3 buckets when you delete the CloudFormation stack. +The CodeBuild project must be able to connect to your Git repository using one of the link:#_webhook_endpoints[webhook endpoints] this Quick Start deploys. For example, you can use a SaaS-based Git service to which AWS CodeBuild can connect over the internet. -WARNING: If you need backups, copy the contents of the S3 buckets before deleting the AWS CloudFormation stack. +The S3 bucket for Git contents that this Quick Start deploys has versioning enabled, and all previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?]. == Webhook endpoints +A webhook endpoint is the URL to which your Git service sends HTTP POST requests when commits are pushed to your Git repository. -This Quick Start deploys two endpoints for connecting to your Git repository. Each endpoint has different benefits. Choose the endpoint that best fits your use case, repository size, and other requirements. +The following table compares the benefits of the two endpoints deployed by this Quick Start. Use the endpoint that best fits your use case, repository size, and Git workflow. [cols="1,2,3a"] |=== Endpoint | Description | Benefits -| Zip download | Uses the Git service's HTTP API to download a .zip file of the entire repository. | +| Zip download | Use your Git service's HTTP API to download a .zip file of the entire current repository version. | * No need for external libraries. * Smaller Lambda function code. * Large repository size limit (500 MB). -| Git pull | Uses SSH to pull from the Git repository. The repository contents are then zipped and uploaded to Amazon S3. | +| Git pull | Use SSH to pull, zip, and upload changed files from your Git repository to Amazon S3. | * Efficient for repositories with a high volume of commits, because each time the API is triggered, it downloads only changed files. * Suitable for any Git server that supports webhooks and SSH. Does not depend on personal access tokens or OAuth2. @@ -49,3 +45,4 @@ Endpoint | Description | Benefits |=== +NOTE: When configuring a webhook using the Git pull endpoint, you need the the *GitPullWebHookApi* and *PublicSSHKey*. For more information, see link:#_configure_git_services[Configuring Git services] later in this guide. From 5c68024dcffea892453d4671a882076d11dbc8c8 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Fri, 18 Dec 2020 14:30:50 -0500 Subject: [PATCH 18/37] edits part 2 121820 --- docs/partner_editable/architecture.adoc | 6 ++---- docs/partner_editable/overview_target_and_usage.adoc | 4 ++-- docs/partner_editable/product_description.adoc | 10 ++++++---- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index 9cce340..ff1c06c 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -14,12 +14,10 @@ The Quick Start deployment sets up a serverless AWS Cloud environment that inclu * An AWS Lambda function to process Git webhook requests and invoke AWS CodeBuild. * AWS Identity and Access Management (IAM) roles required by Lambda and API Gateway. The inline permissions attached to these roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. * A CodeBuild project to fetch, zip, and upload Git repository code to Amazon Simple Storage Service (Amazon S3). -* AWS Key Management Service (AWS KMS) to encrypt private keys used to connect to the Git repository with SSH. +* AWS Key Management Service (AWS KMS) to encrypt private keys used to connect to the Git repository using SSH (Secure Shell). * Two Amazon Simple Storage Service (S3) buckets, one for Git repository contents, and the other for private SSH keys encrypted by AWS KMS. * Two Lambda-backed AWS CloudFormation custom resources. One generates an SSH key pair, encrypts it using AWS KMS, and uploads it to Amazon S3. The second deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you need backups, ensure that you copy S3 bucket contents before deleting the stack. -The CodeBuild project must be able to connect to your Git repository using one of the link:#_webhook_endpoints[webhook endpoints] this Quick Start deploys. For example, you can use a SaaS-based Git service to which AWS CodeBuild can connect over the internet. - The S3 bucket for Git contents that this Quick Start deploys has versioning enabled, and all previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?]. == Webhook endpoints @@ -31,7 +29,7 @@ The following table compares the benefits of the two endpoints deployed by this |=== Endpoint | Description | Benefits -| Zip download | Use your Git service's HTTP API to download a .zip file of the entire current repository version. | +| Zip download | Use your Git service's HTTP API to download a .zip file of the current version of the entire repository. | * No need for external libraries. * Smaller Lambda function code. diff --git a/docs/partner_editable/overview_target_and_usage.adoc b/docs/partner_editable/overview_target_and_usage.adoc index 306af14..470dc0a 100644 --- a/docs/partner_editable/overview_target_and_usage.adoc +++ b/docs/partner_editable/overview_target_and_usage.adoc @@ -1,3 +1,3 @@ -Git webhooks enable event-driven integration between Git services and external applications. This Quick Start implements endpoints and code you can use to link a Git repository to AWS services in your AWS account. Code to retrieve, zip, and store your repository code to an Amazon S3 bucket runs automatically when commits are pushed to the linked Git repository. +Git webhooks enable event-driven integration between Git services and external applications. This Quick Start deploys endpoints to help you configure a webhook from a Git repository to AWS services in your AWS account. The code this Quick Start deploys fetches, zips, and stores Git repository contents to Amazon Simple Storage Service (Amazon S3) automatically when commits are pushed to the repository. -This guide explains the architecture that is deployed by the Quick Start, and links to view and launch the AWS CloudFormation template that automates the deployment. The guide is for IT infrastructure architects, administrators, and DevOps professionals who are planning to implement AWS services that use Amazon S3 as a source. Examples of such services include AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy. +This guide describes the components that are deployed by the Quick Start, and contains links to launch the AWS CloudFormation template that automates the deployment. The guide is for IT infrastructure architects, administrators, and DevOps professionals who are planning to implement AWS services that use Amazon S3 as a source. Examples of such services include AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy. diff --git a/docs/partner_editable/product_description.adoc b/docs/partner_editable/product_description.adoc index b942933..b5632de 100644 --- a/docs/partner_editable/product_description.adoc +++ b/docs/partner_editable/product_description.adoc @@ -1,12 +1,14 @@ :xrefstyle: short -As <> illustrates, when code is pushed to your Git repository, the Git service sends an HTTPS POST request to the endpoints configured by the Quick Start. The POST request contains JavaScript Object Notation (JSON) data about the push operation, including the repository details that the Quick Start uses to fetch the latest version of your code. +As <> illustrates, when code is pushed to your Git repository, the Git service sends an HTTPS POST request to the link:#_webhook_endpoints[endpoint] deployed by the Quick Start. The POST request contains JavaScript Object Notation (JSON) data about the push operation, including the repository details that the AWS CodeBuild project uses to fetch the latest version of your repository. [#using_webhooks] -.Using webhooks for code commits +.Using webhooks to code commits [link=images/using_webhooks.png] image::../images/using_webhooks.png[using_webhooks,width=647,height=266] -This Quick Start deploys an AWS Lambda function and an AWS CodeBuild project to zip the code in your Git repository and store it in an Amazon Simple Storage Service (Amazon S3) bucket. The deployment provides the code to trigger builds and pipeline executions automatically when you commit changes to a Git repository. With this deployment, your code is continuously integrated, tested, built, and deployed on the AWS Cloud with each change. +When a POST request is received This Quick Start deploys an AWS Lambda function that invokes an AWS CodeBuild project to zip the code in your Git repository and store it in an Amazon Simple Storage Service (Amazon S3) bucket. With this deployment, your code is continuously integrated, tested, built, and deployed on the AWS Cloud with each change. + +NOTE: The AWS CodeBuild project deployed by this Quick Start must be able to communicate with your Git repository using a Git service. For example, you can use a SaaS-based Git service that AWS CodeBuild can reach through the internet. + -NOTE: The AWS CodeBuild Project deployed by this Quick Start must be able to communicate with your Git repository using a Git service. For example, you can use a SaaS-based Git service that AWS CodeBuild can reach through the internet. From 08e16754b25b03138aa7c685313044a643284fbe Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Mon, 21 Dec 2020 16:59:49 -0500 Subject: [PATCH 19/37] edits part 1 122120 --- docs/partner_editable/architecture.adoc | 4 ++-- docs/partner_editable/overview_target_and_usage.adoc | 5 +++-- docs/partner_editable/product_description.adoc | 4 ++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index ff1c06c..d1b17b6 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -13,8 +13,8 @@ The Quick Start deployment sets up a serverless AWS Cloud environment that inclu * An Amazon API Gateway endpoint to receive Git webhook requests and forward requests to AWS Lambda. * An AWS Lambda function to process Git webhook requests and invoke AWS CodeBuild. * AWS Identity and Access Management (IAM) roles required by Lambda and API Gateway. The inline permissions attached to these roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. -* A CodeBuild project to fetch, zip, and upload Git repository code to Amazon Simple Storage Service (Amazon S3). -* AWS Key Management Service (AWS KMS) to encrypt private keys used to connect to the Git repository using SSH (Secure Shell). +* A CodeBuild project to connect to the Git service, then fetch, zip, and upload Git repository code to Amazon Simple Storage Service (Amazon S3). +* AWS Key Management Service (AWS KMS) to encrypt private keys used by AWS CodeBuild to connect to the Git repository using SSH (Secure Shell). * Two Amazon Simple Storage Service (S3) buckets, one for Git repository contents, and the other for private SSH keys encrypted by AWS KMS. * Two Lambda-backed AWS CloudFormation custom resources. One generates an SSH key pair, encrypts it using AWS KMS, and uploads it to Amazon S3. The second deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you need backups, ensure that you copy S3 bucket contents before deleting the stack. diff --git a/docs/partner_editable/overview_target_and_usage.adoc b/docs/partner_editable/overview_target_and_usage.adoc index 470dc0a..5227f2e 100644 --- a/docs/partner_editable/overview_target_and_usage.adoc +++ b/docs/partner_editable/overview_target_and_usage.adoc @@ -1,3 +1,4 @@ -Git webhooks enable event-driven integration between Git services and external applications. This Quick Start deploys endpoints to help you configure a webhook from a Git repository to AWS services in your AWS account. The code this Quick Start deploys fetches, zips, and stores Git repository contents to Amazon Simple Storage Service (Amazon S3) automatically when commits are pushed to the repository. +Git webhooks enable event-driven integration between Git services and external applications. This Quick Start deploys the HTTPS endpoints and code you can use to link your AWS and Git services with webhooks. After deploying the Quick Start, you can configure a webhook in your Git repository using the HTTPS endpoints the Quick Start provides. With this integration in place, each time a developer pushes a commit, your repository is automatically retrieved, zipped, and uploaded to an Amazon Simple Storage Service (Amazon S3) bucket. You can then configure AWS services such as AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy to use the S3 bucket as a source. In this way, you can build a continuous integration and continuous delivery (CI/CD) pipeline on the foundation this Quick Start deploys. + +This guide describes the components that are deployed by the Quick Start, and contains links to launch the AWS CloudFormation template that automates the deployment. -This guide describes the components that are deployed by the Quick Start, and contains links to launch the AWS CloudFormation template that automates the deployment. The guide is for IT infrastructure architects, administrators, and DevOps professionals who are planning to implement AWS services that use Amazon S3 as a source. Examples of such services include AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy. diff --git a/docs/partner_editable/product_description.adoc b/docs/partner_editable/product_description.adoc index b5632de..282d857 100644 --- a/docs/partner_editable/product_description.adoc +++ b/docs/partner_editable/product_description.adoc @@ -1,13 +1,13 @@ :xrefstyle: short -As <> illustrates, when code is pushed to your Git repository, the Git service sends an HTTPS POST request to the link:#_webhook_endpoints[endpoint] deployed by the Quick Start. The POST request contains JavaScript Object Notation (JSON) data about the push operation, including the repository details that the AWS CodeBuild project uses to fetch the latest version of your repository. +As <> illustrates, when code is pushed to your Git repository, the Git service sends an HTTPS POST request to the link:#_webhook_endpoints[endpoint] deployed by the Quick Start. The POST request contains JavaScript Object Notation (JSON) data about the push operation, including the repository details, that the AWS CodeBuild project uses to fetch the latest version of your repository. [#using_webhooks] .Using webhooks to code commits [link=images/using_webhooks.png] image::../images/using_webhooks.png[using_webhooks,width=647,height=266] -When a POST request is received This Quick Start deploys an AWS Lambda function that invokes an AWS CodeBuild project to zip the code in your Git repository and store it in an Amazon Simple Storage Service (Amazon S3) bucket. With this deployment, your code is continuously integrated, tested, built, and deployed on the AWS Cloud with each change. +When a POST request is received this Quick Start deploys an AWS Lambda function that invokes an AWS CodeBuild project to zip the code in your Git repository and upload it to Amazon Simple Storage Service (Amazon S3). With this deployment, your code can be continuously integrated, tested, built, and deployed on the AWS Cloud with each change. NOTE: The AWS CodeBuild project deployed by this Quick Start must be able to communicate with your Git repository using a Git service. For example, you can use a SaaS-based Git service that AWS CodeBuild can reach through the internet. From b07fff999c9dcca814d50532e74d1533dd6ff806 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Mon, 21 Dec 2020 17:15:32 -0500 Subject: [PATCH 20/37] edits part 2 122120 --- docs/partner_editable/architecture.adoc | 6 +++--- docs/partner_editable/overview_target_and_usage.adoc | 2 +- docs/partner_editable/product_description.adoc | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index d1b17b6..86cc212 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -10,12 +10,12 @@ image::../images/architecture_diagram.png[architecture_diagram,width=100%,height The Quick Start deployment sets up a serverless AWS Cloud environment that includes the following components: -* An Amazon API Gateway endpoint to receive Git webhook requests and forward requests to AWS Lambda. +* Amazon API Gateway to receive Git webhook requests and forward requests to AWS Lambda. * An AWS Lambda function to process Git webhook requests and invoke AWS CodeBuild. * AWS Identity and Access Management (IAM) roles required by Lambda and API Gateway. The inline permissions attached to these roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. -* A CodeBuild project to connect to the Git service, then fetch, zip, and upload Git repository code to Amazon Simple Storage Service (Amazon S3). +* A CodeBuild project to work with AWS Lambda to connect to the Git service, then retrieve, zip, and upload Git repository code to Amazon Simple Storage Service (Amazon S3). * AWS Key Management Service (AWS KMS) to encrypt private keys used by AWS CodeBuild to connect to the Git repository using SSH (Secure Shell). -* Two Amazon Simple Storage Service (S3) buckets, one for Git repository contents, and the other for private SSH keys encrypted by AWS KMS. +* Two Amazon Simple Storage Service (S3) buckets, one for Git repository contents, and another for the private SSH keys encrypted by AWS KMS. * Two Lambda-backed AWS CloudFormation custom resources. One generates an SSH key pair, encrypts it using AWS KMS, and uploads it to Amazon S3. The second deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you need backups, ensure that you copy S3 bucket contents before deleting the stack. The S3 bucket for Git contents that this Quick Start deploys has versioning enabled, and all previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?]. diff --git a/docs/partner_editable/overview_target_and_usage.adoc b/docs/partner_editable/overview_target_and_usage.adoc index 5227f2e..0b02f65 100644 --- a/docs/partner_editable/overview_target_and_usage.adoc +++ b/docs/partner_editable/overview_target_and_usage.adoc @@ -1,4 +1,4 @@ -Git webhooks enable event-driven integration between Git services and external applications. This Quick Start deploys the HTTPS endpoints and code you can use to link your AWS and Git services with webhooks. After deploying the Quick Start, you can configure a webhook in your Git repository using the HTTPS endpoints the Quick Start provides. With this integration in place, each time a developer pushes a commit, your repository is automatically retrieved, zipped, and uploaded to an Amazon Simple Storage Service (Amazon S3) bucket. You can then configure AWS services such as AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy to use the S3 bucket as a source. In this way, you can build a continuous integration and continuous delivery (CI/CD) pipeline on the foundation this Quick Start deploys. +Git webhooks enable event-driven integration between Git services and external applications. This Quick Start deploys the HTTPS endpoints and code you can use to link your AWS and Git services with webhooks. After deploying the Quick Start, you can configure a webhook in your Git repository using these endpoints. With this integration in place, each time a developer pushes a commit, your repository is automatically retrieved, zipped, and uploaded to an Amazon Simple Storage Service (Amazon S3) bucket. You can then configure AWS services such as AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy to use the S3 bucket as a source. In this way, you can build a continuous integration and continuous delivery (CI/CD) pipeline on the foundation this Quick Start deploys. This guide describes the components that are deployed by the Quick Start, and contains links to launch the AWS CloudFormation template that automates the deployment. diff --git a/docs/partner_editable/product_description.adoc b/docs/partner_editable/product_description.adoc index 282d857..40ee486 100644 --- a/docs/partner_editable/product_description.adoc +++ b/docs/partner_editable/product_description.adoc @@ -1,13 +1,13 @@ :xrefstyle: short -As <> illustrates, when code is pushed to your Git repository, the Git service sends an HTTPS POST request to the link:#_webhook_endpoints[endpoint] deployed by the Quick Start. The POST request contains JavaScript Object Notation (JSON) data about the push operation, including the repository details, that the AWS CodeBuild project uses to fetch the latest version of your repository. +After deploying this Quick Start and configuring a webhook in your Git repository, when code is pushed to the repository, the Git service sends an HTTPS POST request to the link:#_webhook_endpoints[endpoint]. The POST request contains JavaScript Object Notation (JSON) data about the push operation, including the repository details, that the AWS CodeBuild project uses to fetch the latest version of your repository. [#using_webhooks] .Using webhooks to code commits [link=images/using_webhooks.png] image::../images/using_webhooks.png[using_webhooks,width=647,height=266] -When a POST request is received this Quick Start deploys an AWS Lambda function that invokes an AWS CodeBuild project to zip the code in your Git repository and upload it to Amazon Simple Storage Service (Amazon S3). With this deployment, your code can be continuously integrated, tested, built, and deployed on the AWS Cloud with each change. +When a POST request is received, an AWS Lambda function and AWS CodeBuild project work together to retrieve, zip, and upload the Git repository to Amazon S3. NOTE: The AWS CodeBuild project deployed by this Quick Start must be able to communicate with your Git repository using a Git service. For example, you can use a SaaS-based Git service that AWS CodeBuild can reach through the internet. From 4e10953799b96896810d698c47e369f41fa03c00 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Tue, 22 Dec 2020 10:33:06 -0500 Subject: [PATCH 21/37] edits part 1 122220 --- docs/images/architecture_diagram.png | Bin 68175 -> 65483 bytes docs/partner_editable/architecture.adoc | 12 ++++++------ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/images/architecture_diagram.png b/docs/images/architecture_diagram.png index 39777389d3434adc11b555ad81b09d786358c939..ee2e9d598a80656ebf9db8518a9027860b541875 100644 GIT binary patch literal 65483 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

E9fN**tr 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 From 762452717331626d13beb3bc13a57276e52e690b Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Wed, 23 Dec 2020 13:05:19 -0500 Subject: [PATCH 27/37] edits part 4 122320 --- docs/partner_editable/architecture.adoc | 12 ++++++------ docs/partner_editable/deploy_steps.adoc | 19 ++++++++++--------- .../partner_editable/faq_troubleshooting.adoc | 4 ++-- .../partner_editable/product_description.adoc | 14 ++------------ 4 files changed, 20 insertions(+), 29 deletions(-) diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index 3313c44..67195c9 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -10,17 +10,17 @@ image::../images/architecture_diagram.png[architecture_diagram,width=100%,height As shown in <>, this Quick Start sets up a serverless AWS Cloud environment that includes the following components: -* Amazon API Gateway to receive Git webhook requests and forward requests to AWS Lambda. -* An AWS Lambda function to process Git webhook requests and invoke AWS CodeBuild. +* Amazon API Gateway to receive Git webhook requests and forward them to AWS Lambda. +* An AWS Lambda function to process Git webhook requests from API Gateway and invoke an AWS CodeBuild project. * AWS Identity and Access Management (IAM) roles required by Lambda and API Gateway (not pictured). -* A CodeBuild project to connect to the Git service, then retrieve, zip, and upload Git repository code to Amazon Simple Storage Service (Amazon S3). -* An AWS Key Management Service (AWS KMS) private key to encrypt the SSH key used by AWS CodeBuild to connect to the Git repository using SSH (Secure Shell). -* Two Amazon Simple Storage Service (S3) buckets: one for Git repository contents, and another for the AWS KMS key. +* A CodeBuild project to connect to your Git service, then retrieve, zip, and upload Git repository code to Amazon Simple Storage Service (Amazon S3). +* An AWS Key Management Service (AWS KMS) key to encrypt and decrypt the SSH keys used by CodeBuild to connect to your Git repository using SSH (Secure Shell). +* Two Amazon Simple Storage Service (S3) buckets: one for Git repository contents, and another for encrypted SSH keys. * Two Lambda-backed AWS CloudFormation custom resources (not pictured). One generates an SSH key pair, encrypts it using AWS KMS, and uploads it to Amazon S3. The second deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you need backups, ensure that you copy S3 bucket contents before deleting the stack. [NOTE] ======== * The inline permissions attached to the IAM roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. -* The CodeBuild project must be able to communicate with your Git repository. For example, you can employ a SaaS-based Git service to which CodeBuild can connect over the internet. +* The CodeBuild project must be able to communicate with your Git repository. For example, you can employ a SaaS-based Git service like GitHub to which CodeBuild can connect over the internet. * The Git repository S3 bucket this Quick Start deploys has versioning enabled, and all previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?]. ======== diff --git a/docs/partner_editable/deploy_steps.adoc b/docs/partner_editable/deploy_steps.adoc index eab09dd..d11615e 100644 --- a/docs/partner_editable/deploy_steps.adoc +++ b/docs/partner_editable/deploy_steps.adoc @@ -8,27 +8,28 @@ . https://fwd.aws/mDMrd[Launch the AWS CloudFormation template] into your AWS account. -NOTE: You are responsible for the cost of the AWS services used while running this Quick Start reference deployment. There is no additional cost for using this Quick Start. Prices are subject to change. See the pricing pages for each AWS service you will be using in this Quick Start for full details. +NOTE: You are responsible for the cost of the AWS services used while running this Quick Start reference deployment. There is no additional cost for using this Quick Start. Prices are subject to change. See the pricing pages for each AWS service you use in this Quick Start for full details. +:xrefstyle: short [start=2] -. Check the region that’s displayed in the upper-right corner of the navigation bar, and change it if necessary. This is where the network infrastructure will be built. The template is launched in the US East (Ohio) Region by default. +. Check the Region that’s displayed in the upper-right corner of the navigation bar, and change it if necessary. This Region is where the Quick Start infrastructure is built. The template for this Quick Start is launched in the US East (Ohio) Region by default. . On the *Select Template* page, keep the default setting for the template URL, and then choose *Next*. -. On the *Specify Details* page, change the stack name if needed. Review the parameters for the template. Provide values for the parameters that require input. For all other parameters, review the default settings and customize them as necessary. When you finish reviewing and customizing the parameters, choose *Next*. +. On the *Specify Details* page, change the stack name if needed. Review the parameters for the template. Provide values for the parameters that require input. For all other parameters, review the default settings and customize them as necessary. After reviewing and customizing the parameters, choose *Next*. . On the *Options* page, you can https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html[specify tags] (key-value pairs) for resources in your stack and https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-add-tags.html[set advanced options]. When you’re done, choose *Next*. -. On the *Review* page, review and confirm the template settings. Under *Capabilities*, select the check box to acknowledge that the template will create IAM resources. +. On the *Review* page, review and confirm the template settings. Under *Capabilities*, select the check box to acknowledge that the template creates IAM resources. . Choose *Create* to deploy the stack. The stack takes approximately 15 minutes to create. . Monitor the status of the stack. When the status is *CREATE_COMPLETE*, the webhook resources are ready. -. The *Outputs* tab for the stack contain the two webhook endpoint URLs, the output bucket name, and the public SSH key, as illustrated in Figure 4. +. The *Outputs* tab for the stack contain the endpoint URL, the output S3 bucket name, and the public SSH key, as shown in <>. NOTE: You can also https://fwd.aws/wr8Gg[download the template] to use it as a starting point for your own implementation. === Configuring Git services -After deploying the Quick Start, set up a webhook in the Git repository. +After deploying the Quick Start, set up a webhook in your Git repository. To configure a webhook, you need *GitPullWebHookApi* and *PublicSSHKey*. You can find these on the *Outputs* tab on the AWS CloudFormation console after deploying the Quick Start. -:xrefstyle: short + [#outputs_tab] .Outputs tab on the AWS CloudFormation console [link=images/outputs_tab.png] @@ -41,7 +42,7 @@ The instructions for setting up webhooks and deployment keys vary by Git service === Configuring AWS services -After deploying the Quick Start, configure the AWS services in your workload to use the S3 object as a source. +After deploying the Quick Start, configure the AWS services in your workload to use the Git repository S3 bucket as a source. As shown in <>, the *Outputs* tab in the AWS CloudFormation console includes *OutputBucketName*. This output is an S3 key that forms the base of the path to the .zip file of your repository code. The S3 key is in the following format: @@ -50,4 +51,4 @@ S3://output-bucket-name/git-user/git-repository/git-user_git-repository.zip ``` Here, `git-user` is the owner or path prefix of the repository. In some Git services, this may be an organization name. However, some Git services do not return a Git user or organization for a repository. In these cases, you can omit the `git-user` parts of the path. -The instructions for linking an AWS service to the S3 object vary. For links to AWS service documentation, see link:#aws-services[AWS Services] later in this guide. \ No newline at end of file +The instructions for linking an AWS service to an S3 object vary. For links to AWS service documentation, see link:#aws-services[AWS Services] later in this guide. \ No newline at end of file diff --git a/docs/partner_editable/faq_troubleshooting.adoc b/docs/partner_editable/faq_troubleshooting.adoc index a50c60f..cceba63 100644 --- a/docs/partner_editable/faq_troubleshooting.adoc +++ b/docs/partner_editable/faq_troubleshooting.adoc @@ -6,13 +6,13 @@ *A.* If AWS CloudFormation fails to create the stack, we recommend that you relaunch the template with *Rollback on failure* set to *Disabled*. (This setting is under *Advanced* on the *Options* page of the AWS CloudFormation console.) With this setting, the stack’s state is retained and the instance remains running so you can troubleshoot the issue. -WARNING: When you set *Rollback on failure* to *Disabled*, you continue to incur AWS charges for this stack. Ensure that you delete the stack when after troubleshooting. +WARNING: When you set *Rollback on failure* to *Disabled*, you continue to incur AWS charges for this stack. Ensure that you delete the stack after troubleshooting. For additional information, see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html[Troubleshooting AWS CloudFormation^] on the AWS website. == Troubleshooting -If your commits are not being pushed through to Amazon S3, do the following: +If commits to your repository do not show up in Amazon S3, do the following: * Check the security parameters and endpoint in your Git webhook configuration. See link:#configuring_git_services[Configuring Git services] earlier in this guide and consult your Git service documentation for help configuring webhooks. * Check the Lambda logs for errors. These are stored in Amazon CloudWatch Logs. For help accessing them, see https://docs.aws.amazon.com/lambda/latest/dg/monitoring-cloudwatchlogs.html[Accessing Amazon CloudWatch logs for AWS Lambda]. diff --git a/docs/partner_editable/product_description.adoc b/docs/partner_editable/product_description.adoc index 40ee486..f9b4f0f 100644 --- a/docs/partner_editable/product_description.adoc +++ b/docs/partner_editable/product_description.adoc @@ -1,14 +1,4 @@ -:xrefstyle: short -After deploying this Quick Start and configuring a webhook in your Git repository, when code is pushed to the repository, the Git service sends an HTTPS POST request to the link:#_webhook_endpoints[endpoint]. The POST request contains JavaScript Object Notation (JSON) data about the push operation, including the repository details, that the AWS CodeBuild project uses to fetch the latest version of your repository. - -[#using_webhooks] -.Using webhooks to code commits -[link=images/using_webhooks.png] -image::../images/using_webhooks.png[using_webhooks,width=647,height=266] - -When a POST request is received, an AWS Lambda function and AWS CodeBuild project work together to retrieve, zip, and upload the Git repository to Amazon S3. - -NOTE: The AWS CodeBuild project deployed by this Quick Start must be able to communicate with your Git repository using a Git service. For example, you can use a SaaS-based Git service that AWS CodeBuild can reach through the internet. - +After deploying this Quick Start and configuring a webhook in your Git service, when a Git user pushes changes to your repository, the Git service sends an HTTPS POST request to the HTTPS endpoint. The endpoint is a URL the Quick Start creates that you use to link:#configuring_git_services[configure a Git webhook]. The HTTPS POST request contains JavaScript Object Notation (JSON) data about the push that invoked the webhook action. After the request is accepted by Amazon API Gateway, it is passed to an AWS Lambda function that triggers an AWS CodeBuild project. The CodeBuild project retrieves the latest version of your repository, zips it, and uploads it to an Amazon S3 bucket. +For more information about the components that this Quick Start deploys, see the link:#architecture[Architecture] section later in this guide. \ No newline at end of file From ed4988032cd3ed44c8095802d054472dcca2345b Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Wed, 23 Dec 2020 13:55:15 -0500 Subject: [PATCH 28/37] edits part 5 122320 --- .../overview_target_and_usage.adoc | 2 +- templates/git2s3.template.yaml | 17 ++++++++++++++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/docs/partner_editable/overview_target_and_usage.adoc b/docs/partner_editable/overview_target_and_usage.adoc index 65c3a4d..1472c6b 100644 --- a/docs/partner_editable/overview_target_and_usage.adoc +++ b/docs/partner_editable/overview_target_and_usage.adoc @@ -1,4 +1,4 @@ -Git webhooks enable event-driven integration between Git services and external applications. This Quick Start deploys the HTTPS endpoints and code you can use to link your AWS and Git services with webhooks. After deploying the Quick Start, you can configure a webhook in your Git repository using these endpoints. With this integration in place, each time a Git user pushes a commit, your repository is automatically retrieved, zipped, and uploaded to an Amazon Simple Storage Service (Amazon S3) bucket. You can then configure AWS services such as AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy to use the S3 bucket as a source. In this way, you can build a continuous integration and continuous delivery (CI/CD) pipeline on the foundation this Quick Start deploys. +Git webhooks enable event-driven integration between Git services and external applications. This Quick Start deploys the HTTPS endpoint and code you can use to configure webhooks linking your AWS and Git services. With this integration in place, each time a Git user pushes a commit, your repository is automatically retrieved, zipped, and uploaded to an Amazon Simple Storage Service (Amazon S3) bucket. You can then configure AWS services such as AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy to use the S3 bucket as a source. In this way, you can build a continuous integration and continuous delivery (CI/CD) pipeline on the foundation this Quick Start deploys. This guide describes the components that are deployed by the Quick Start, and contains links to launch the AWS CloudFormation template that automates the deployment. diff --git a/templates/git2s3.template.yaml b/templates/git2s3.template.yaml index 20f327b..cc81125 100644 --- a/templates/git2s3.template.yaml +++ b/templates/git2s3.template.yaml @@ -23,6 +23,13 @@ Metadata: - QSS3BucketName - QSS3BucketRegion - QSS3KeyPrefix + - Label: + default: VPC configuration + Parameters: + - VPCId + - VPCCidrRange + - SubnetIds + - ScmHostnameOverride ParameterLabels: AllowedIps: default: Allowed IP addresses @@ -38,6 +45,14 @@ Metadata: default: Quick Start S3 bucket Region QSS3KeyPrefix: default: Quick Start S3 key prefix + VPCId: + default: VPC ID + VPCCidrRange: + default: VPC CIDR + SubnetIds: + default: Subnet IDs + ScmHostnameOverride: + default: Hostname override ExcludeGit: default: Exclude .git directory Parameters: @@ -88,7 +103,7 @@ Parameters: Type: CommaDelimitedList Default: '' ScmHostnameOverride: - Description: Host name to override the incoming JSON request. + Description: Name to override the hostname in the header of a webhook JSON payload. Type: String Default: '' ExcludeGit: From 89eea9c8298bbab1b66e45b292fd4dfe35ba45d2 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Wed, 23 Dec 2020 15:03:11 -0500 Subject: [PATCH 29/37] edits part 6 122320 --- .../generated/parameters/git2s3.template.adoc | 37 +++++++++++------- docs/generated/parameters/index.adoc | 2 +- docs/partner_editable/additional_info.adoc | 31 ++++++++++++++- docs/partner_editable/deploy_steps.adoc | 39 +------------------ .../partner_editable/faq_troubleshooting.adoc | 2 +- .../partner_editable/product_description.adoc | 4 +- templates/git2s3.template.yaml | 2 +- 7 files changed, 59 insertions(+), 58 deletions(-) diff --git a/docs/generated/parameters/git2s3.template.adoc b/docs/generated/parameters/git2s3.template.adoc index af7d3cf..8c0399d 100644 --- a/docs/generated/parameters/git2s3.template.adoc +++ b/docs/generated/parameters/git2s3.template.adoc @@ -1,24 +1,33 @@ -.General Settings +.General settings [width="100%",cols="16%,11%,73%",options="header",] |=== -|Parameter label (name) |Default value|Description|Output S3 Bucket Name -(`OutputBucketName`)|`**__Blank string__**`|OPTIONAL: Bucket Name where the zip file output should be placed, if left blank a bucket name will be automatically generated.|Custom Domain Name -(`CustomDomainName`)|`**__Blank string__**`|Use a custom domain name for the webhook endpoint, if left blank API Gateway will create a domain name for you +|Parameter label (name) |Default value|Description|Output S3 bucket name +(`OutputBucketName`)|`**__Blank string__**`|(Optional) Name for the S3 bucket where the Git repository .zip file is stored. If left blank, the Quick Start creates one for you.|Custom domain name +(`CustomDomainName`)|`**__Blank string__**`|Domain name for the webhook endpoint. If left blank, API Gateway creates a domain name for you. |=== -.Git Pull Settings +.Git pull settings [width="100%",cols="16%,11%,73%",options="header",] |=== -|Parameter label (name) |Default value|Description|API Secret -(`ApiSecret`)|`**__Blank string__**`|gitpull method only. WebHook Secrets for use with GitHub Enterprise and GitLab. If a secret is matched IP range authentication is bypassed. Cannot contain: , \ "|Allowed IPs -(`AllowedIps`)|`18.205.93.0/25,18.234.32.128/25,13.52.5.0/25`|gitpull method only. Comma seperated list of IP CIDR blocks for source IP authentication. The BitBucket Cloud IP ranges are provided as defaults.|Exclude Git -(`ExcludeGit`)|`True`|Choose True to include the .git directory in the zip file or false to not include +|Parameter label (name) |Default value|Description|API secret +(`ApiSecret`)|`**__Blank string__**`|API secret used to authenticate access to webhooks in GitHub Enterprise, GitLab, and other Git services. If a webhook payload header contains a matching secret, IP address authentication is bypassed. API secrets cannot contain commas (,), backward slashes (\), or quotes (").|Allowed IP addresses +(`AllowedIps`)|`18.205.93.0/25,18.234.32.128/25,13.52.5.0/25`|Comma-separated list of allowed IP CIDR blocks. The default addresses listed are BitBucket Cloud IP ranges.|Exclude .git directory +(`ExcludeGit`)|`True`|Choose False to omit the .git directory from the Git repository .zip file. |=== -.AWS Quick Start Configuration +.AWS Quick Start configuration [width="100%",cols="16%,11%,73%",options="header",] |=== -|Parameter label (name) |Default value|Description|Quick Start S3 Bucket Name -(`QSS3BucketName`)|`aws-quickstart`|S3 bucket name for the Quick Start assets. Quick Start bucket name can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-).|Quick Start S3 bucket region -(`QSS3BucketRegion`)|`us-east-1`|The AWS Region where the Quick Start S3 bucket (QSS3BucketName) is hosted. When using your own bucket, you must specify this value.|Quick Start S3 Key Prefix -(`QSS3KeyPrefix`)|`quickstart-git2s3/`|S3 key prefix for the Quick Start assets. Quick Start key prefix can include numbers, lowercase letters, uppercase letters, hyphens (-), and forward slash (/). +|Parameter label (name) |Default value|Description|Quick Start S3 bucket name +(`QSS3BucketName`)|`aws-quickstart`|S3 bucket name for Quick Start assets. It can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-).|Quick Start S3 bucket Region +(`QSS3BucketRegion`)|`us-east-1`|AWS Region where the Quick Start assets S3 bucket (QSS3BucketName) is hosted. Required when using your own S3 bucket.|Quick Start S3 key prefix +(`QSS3KeyPrefix`)|`quickstart-git2s3/`|Key prefix for the Quick Start assets S3 bucket. A key prefix is similar to a directory name that enables you to store similar data under the same directory in an S3 bucket. It can include numbers, lowercase letters, uppercase letters, hyphens (-), and forward slashes (/). +|=== +.VPC configuration +[width="100%",cols="16%,11%,73%",options="header",] +|=== +|Parameter label (name) |Default value|Description|VPC ID +(`VPCId`)|`**__Blank string__**`|ID of the VPC in which the Lambda function runs.|VPC CIDR +(`VPCCidrRange`)|`**__Blank string__**`|CIDR range of the VPC.|Subnet IDs +(`SubnetIds`)|`**__Blank string__**`|SubnetIDs in which the Lambda function runs.|Hostname override +(`ScmHostnameOverride`)|`**__Blank string__**`|Name to override the hostname in the header of a webhook JSON payload. |=== \ No newline at end of file diff --git a/docs/generated/parameters/index.adoc b/docs/generated/parameters/index.adoc index e59999e..fc1c39f 100644 --- a/docs/generated/parameters/index.adoc +++ b/docs/generated/parameters/index.adoc @@ -1,3 +1,3 @@ -=== Deploying into your selected Region +=== Parameters for deploying into your selected Region. include::git2s3.template.adoc[] diff --git a/docs/partner_editable/additional_info.adoc b/docs/partner_editable/additional_info.adoc index ad3e8d1..8667065 100644 --- a/docs/partner_editable/additional_info.adoc +++ b/docs/partner_editable/additional_info.adoc @@ -1,3 +1,32 @@ +=== Configuring Git services + +After deploying the Quick Start, set up a webhook in your Git repository. + +To configure a webhook, you need *GitPullWebHookApi* and *PublicSSHKey*. You can find these on the *Outputs* tab on the AWS CloudFormation console after deploying the Quick Start. + +[#outputs_tab] +.Outputs tab on the AWS CloudFormation console +[link=images/outputs_tab.png] +image::../images/outputs_tab.png[outputs_tab,width=701,height=222] + +* *GitPullWebHookApi* is the URL endpoint that receives the HTTP POST request from the Git service. +* *PublicSSHKey* is the public SSH key used to connect to your Git repository. This key can be configured as a read-only machine user or as a deployment key in your Git repository. + +The instructions for setting up webhooks and deployment keys vary by Git service. For more information, see your Git service documentation. + +=== Configuring AWS services + +After deploying the Quick Start, configure the AWS services in your workload to use the Git repository S3 bucket as a source. + +As shown in <>, the *Outputs* tab in the AWS CloudFormation console includes *OutputBucketName*. This output is an S3 key that forms the base of the path to the .zip file of your repository code. The S3 key is in the following format: + +``` +S3://output-bucket-name/git-user/git-repository/git-user_git-repository.zip +``` +Here, `git-user` is the owner or path prefix of the repository. In some Git services, this may be an organization name. However, some Git services do not return a Git user or organization for a repository. In these cases, you can omit the `git-user` parts of the path. + +The instructions for linking an AWS service to an S3 object vary. For links to AWS service documentation, see link:#_aws_services[AWS services] later in this guide. + == Adding an API secret after deployment You can launch this Quick Start without an *API Secret* parameter. If your Git service provides an API secret when you create a webhook, you can update the stack with the API secret later. @@ -40,4 +69,4 @@ We don’t recommend sharing SSH keys among multiple services, or launching anot Git services provide different ways to authenticate against an endpoint, such as webhook secrets, source IP address whitelisting, personal access tokens, and OAuth2. We recommend that you set up at least one of these security mechanisms to protect your webhook API endpoint. -For more information about how this Quick Start utilizes endpoint security mechanisms, see the link:#parameter_reference[Parameter reference] section of this guide. For specific guidance on how to configure security mechanisms for your Git service, refer to your Git service documentation. +For more information about how this Quick Start utilizes endpoint security mechanisms, see the link:#_parameter_reference[Parameter reference] section of this guide. For specific guidance on how to configure security mechanisms for your Git service, refer to your Git service documentation. diff --git a/docs/partner_editable/deploy_steps.adoc b/docs/partner_editable/deploy_steps.adoc index d11615e..13a16f7 100644 --- a/docs/partner_editable/deploy_steps.adoc +++ b/docs/partner_editable/deploy_steps.adoc @@ -14,41 +14,4 @@ NOTE: You are responsible for the cost of the AWS services used while running th [start=2] . Check the Region that’s displayed in the upper-right corner of the navigation bar, and change it if necessary. This Region is where the Quick Start infrastructure is built. The template for this Quick Start is launched in the US East (Ohio) Region by default. . On the *Select Template* page, keep the default setting for the template URL, and then choose *Next*. -. On the *Specify Details* page, change the stack name if needed. Review the parameters for the template. Provide values for the parameters that require input. For all other parameters, review the default settings and customize them as necessary. After reviewing and customizing the parameters, choose *Next*. -. On the *Options* page, you can https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html[specify tags] (key-value pairs) for resources in your stack and https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-add-tags.html[set advanced options]. When you’re done, choose *Next*. -. On the *Review* page, review and confirm the template settings. Under *Capabilities*, select the check box to acknowledge that the template creates IAM resources. -. Choose *Create* to deploy the stack. The stack takes approximately 15 minutes to create. -. Monitor the status of the stack. When the status is *CREATE_COMPLETE*, the webhook resources are ready. -. The *Outputs* tab for the stack contain the endpoint URL, the output S3 bucket name, and the public SSH key, as shown in <>. - -NOTE: You can also https://fwd.aws/wr8Gg[download the template] to use it as a starting point for your own implementation. - -=== Configuring Git services - -After deploying the Quick Start, set up a webhook in your Git repository. - -To configure a webhook, you need *GitPullWebHookApi* and *PublicSSHKey*. You can find these on the *Outputs* tab on the AWS CloudFormation console after deploying the Quick Start. - - -[#outputs_tab] -.Outputs tab on the AWS CloudFormation console -[link=images/outputs_tab.png] -image::../images/outputs_tab.png[outputs_tab,width=701,height=222] - -* *GitPullWebHookApi* is the URL endpoint that receives the HTTP POST request from the Git service. -* *PublicSSHKey* is the public SSH key used to connect to your Git repository. This key can be configured as a read-only machine user or as a deployment key in your Git repository. - -The instructions for setting up webhooks and deployment keys vary by Git service. For more information, see your Git service documentation. - -=== Configuring AWS services - -After deploying the Quick Start, configure the AWS services in your workload to use the Git repository S3 bucket as a source. - -As shown in <>, the *Outputs* tab in the AWS CloudFormation console includes *OutputBucketName*. This output is an S3 key that forms the base of the path to the .zip file of your repository code. The S3 key is in the following format: - -``` -S3://output-bucket-name/git-user/git-repository/git-user_git-repository.zip -``` -Here, `git-user` is the owner or path prefix of the repository. In some Git services, this may be an organization name. However, some Git services do not return a Git user or organization for a repository. In these cases, you can omit the `git-user` parts of the path. - -The instructions for linking an AWS service to an S3 object vary. For links to AWS service documentation, see link:#aws-services[AWS Services] later in this guide. \ No newline at end of file +. On the *Specify Details* page, change the stack name if needed. Review the parameters for the template. Provide values for the parameters that require input. For all other parameters, review the default settings and customize them as necessary. For details on each parameter, see the link:#_parameter_reference[Parameter reference] section of this guide. After reviewing and customizing the parameters, choose *Next*. \ No newline at end of file diff --git a/docs/partner_editable/faq_troubleshooting.adoc b/docs/partner_editable/faq_troubleshooting.adoc index cceba63..0d3e57e 100644 --- a/docs/partner_editable/faq_troubleshooting.adoc +++ b/docs/partner_editable/faq_troubleshooting.adoc @@ -14,7 +14,7 @@ For additional information, see https://docs.aws.amazon.com/AWSCloudFormation/la If commits to your repository do not show up in Amazon S3, do the following: -* Check the security parameters and endpoint in your Git webhook configuration. See link:#configuring_git_services[Configuring Git services] earlier in this guide and consult your Git service documentation for help configuring webhooks. +* Check the security parameters and endpoint in your Git webhook configuration. See link:#_configuring_git_services[Configuring Git services] earlier in this guide and consult your Git service documentation for help configuring webhooks. * Check the Lambda logs for errors. These are stored in Amazon CloudWatch Logs. For help accessing them, see https://docs.aws.amazon.com/lambda/latest/dg/monitoring-cloudwatchlogs.html[Accessing Amazon CloudWatch logs for AWS Lambda]. * Check the AWS CodeBuild project logs for errors. To access them, do the following: . Open the AWS CodeBuild console. diff --git a/docs/partner_editable/product_description.adoc b/docs/partner_editable/product_description.adoc index f9b4f0f..3ac518a 100644 --- a/docs/partner_editable/product_description.adoc +++ b/docs/partner_editable/product_description.adoc @@ -1,4 +1,4 @@ -After deploying this Quick Start and configuring a webhook in your Git service, when a Git user pushes changes to your repository, the Git service sends an HTTPS POST request to the HTTPS endpoint. The endpoint is a URL the Quick Start creates that you use to link:#configuring_git_services[configure a Git webhook]. The HTTPS POST request contains JavaScript Object Notation (JSON) data about the push that invoked the webhook action. After the request is accepted by Amazon API Gateway, it is passed to an AWS Lambda function that triggers an AWS CodeBuild project. The CodeBuild project retrieves the latest version of your repository, zips it, and uploads it to an Amazon S3 bucket. +After deploying this Quick Start and configuring a webhook in your Git service, when a Git user pushes changes to your repository, the Git service sends an HTTPS POST request to the HTTPS endpoint. The endpoint is a URL the Quick Start creates that you use to link:#_configuring_git_services[configure a webhook]. The HTTPS POST request contains JavaScript Object Notation (JSON) data about the push that invoked the webhook action. After the request is accepted by Amazon API Gateway, it is passed to an AWS Lambda function that triggers an AWS CodeBuild project. The CodeBuild project retrieves the latest version of your repository, zips it, and uploads it to an Amazon S3 bucket. -For more information about the components that this Quick Start deploys, see the link:#architecture[Architecture] section later in this guide. \ No newline at end of file +For more information about the components that this Quick Start deploys, see the link:#_architecture[Architecture] section later in this guide. \ No newline at end of file diff --git a/templates/git2s3.template.yaml b/templates/git2s3.template.yaml index cc81125..6057d65 100644 --- a/templates/git2s3.template.yaml +++ b/templates/git2s3.template.yaml @@ -107,7 +107,7 @@ Parameters: Type: String Default: '' ExcludeGit: - Description: Choose false to omit the .git directory from the Git repository .zip file. + Description: Choose False to omit the .git directory from the Git repository .zip file. Type: String Default: 'True' AllowedValues: ['True', 'False'] From 72142775ce374d3065ee1b735775faf5bdb5a4d8 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Tue, 29 Dec 2020 15:41:29 -0500 Subject: [PATCH 30/37] edits part 1 122920 --- docs/partner_editable/additional_info.adoc | 2 +- docs/partner_editable/architecture.adoc | 8 ++++---- docs/partner_editable/overview_target_and_usage.adoc | 2 +- docs/partner_editable/product_description.adoc | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/docs/partner_editable/additional_info.adoc b/docs/partner_editable/additional_info.adoc index 8667065..2f73a85 100644 --- a/docs/partner_editable/additional_info.adoc +++ b/docs/partner_editable/additional_info.adoc @@ -61,7 +61,7 @@ The architecture built by this Quick Start supports AWS best practices for secur === SSH Keys -This Quick Start deploys a private SSH key pair which is encrypted with an AWS KMS key and uploaded to Amazon S3. When invoked by the Lambda function, AWS CodeBuild decrypts the private SSH key and uses it to authenticate your Git service before cloning the repository. +This Quick Start deploys a private SSH key pair which is encrypted with an AWS KMS key and uploaded to Amazon S3. When invoked by the Lambda function, CodeBuild decrypts the private SSH key and uses it to authenticate your Git service before cloning the repository. We don’t recommend sharing SSH keys among multiple services, or launching another instance of this Quick Start for to clone and store another repository in Amazon S3. Each repository should use unique SSH keys. diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index 67195c9..8389e64 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -13,10 +13,10 @@ As shown in <>, this Quick Start sets up a serverless AWS * Amazon API Gateway to receive Git webhook requests and forward them to AWS Lambda. * An AWS Lambda function to process Git webhook requests from API Gateway and invoke an AWS CodeBuild project. * AWS Identity and Access Management (IAM) roles required by Lambda and API Gateway (not pictured). -* A CodeBuild project to connect to your Git service, then retrieve, zip, and upload Git repository code to Amazon Simple Storage Service (Amazon S3). -* An AWS Key Management Service (AWS KMS) key to encrypt and decrypt the SSH keys used by CodeBuild to connect to your Git repository using SSH (Secure Shell). -* Two Amazon Simple Storage Service (S3) buckets: one for Git repository contents, and another for encrypted SSH keys. -* Two Lambda-backed AWS CloudFormation custom resources (not pictured). One generates an SSH key pair, encrypts it using AWS KMS, and uploads it to Amazon S3. The second deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you need backups, ensure that you copy S3 bucket contents before deleting the stack. +* A CodeBuild project to connect to your Git service, then retrieve, zip, and upload the latest version of your Git repository to Amazon S3. +* An AWS Key Management Service (AWS KMS) key to encrypt/decrypt the SSH (Secure Shell) keys used by CodeBuild to connect to your Git repository using SSH. +* Two Amazon S3 buckets: one for Git repository contents, and another for encrypted SSH keys. +* Two Lambda-backed AWS CloudFormation custom resources (not pictured). One generates an SSH key pair, encrypts it using AWS KMS, and uploads it to Amazon S3. The second deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you need backups, ensure that you copy the S3 buckets before deleting the stack. [NOTE] ======== diff --git a/docs/partner_editable/overview_target_and_usage.adoc b/docs/partner_editable/overview_target_and_usage.adoc index 1472c6b..736f359 100644 --- a/docs/partner_editable/overview_target_and_usage.adoc +++ b/docs/partner_editable/overview_target_and_usage.adoc @@ -1,4 +1,4 @@ -Git webhooks enable event-driven integration between Git services and external applications. This Quick Start deploys the HTTPS endpoint and code you can use to configure webhooks linking your AWS and Git services. With this integration in place, each time a Git user pushes a commit, your repository is automatically retrieved, zipped, and uploaded to an Amazon Simple Storage Service (Amazon S3) bucket. You can then configure AWS services such as AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy to use the S3 bucket as a source. In this way, you can build a continuous integration and continuous delivery (CI/CD) pipeline on the foundation this Quick Start deploys. +This Quick Start deploys the HTTPS endpoint and code you can use to configure webhooks linking your Git and AWS services. With this integration in place, each time a Git user pushes a commit, your repository is automatically retrieved, zipped, and uploaded to an Amazon Simple Storage Service (Amazon S3) bucket. You can then configure AWS services such as AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy to use the S3 bucket as a source. In this way, you can build a continuous integration and continuous delivery (CI/CD) pipeline on the foundation this Quick Start deploys. This guide describes the components that are deployed by the Quick Start, and contains links to launch the AWS CloudFormation template that automates the deployment. diff --git a/docs/partner_editable/product_description.adoc b/docs/partner_editable/product_description.adoc index 3ac518a..179be25 100644 --- a/docs/partner_editable/product_description.adoc +++ b/docs/partner_editable/product_description.adoc @@ -1,4 +1,4 @@ -After deploying this Quick Start and configuring a webhook in your Git service, when a Git user pushes changes to your repository, the Git service sends an HTTPS POST request to the HTTPS endpoint. The endpoint is a URL the Quick Start creates that you use to link:#_configuring_git_services[configure a webhook]. The HTTPS POST request contains JavaScript Object Notation (JSON) data about the push that invoked the webhook action. After the request is accepted by Amazon API Gateway, it is passed to an AWS Lambda function that triggers an AWS CodeBuild project. The CodeBuild project retrieves the latest version of your repository, zips it, and uploads it to an Amazon S3 bucket. +After deploying this Quick Start and configuring a webhook in your Git service, when a Git user pushes changes to your repository, the Git service sends an HTTPS POST request to the HTTPS endpoint. The HTTPS POST request contains JavaScript Object Notation (JSON) data about the push that invoked the webhook action. After the request is accepted by Amazon API Gateway, it is passed to an AWS Lambda function that triggers an AWS CodeBuild project. The CodeBuild project retrieves the latest version of your repository, zips it, and uploads it to an Amazon S3 bucket. For more information about the components that this Quick Start deploys, see the link:#_architecture[Architecture] section later in this guide. \ No newline at end of file From df379953035acc1b2906d2c71d37686bcb110215 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Mon, 4 Jan 2021 10:01:23 -0500 Subject: [PATCH 31/37] edits part 1 010421 --- docs/partner_editable/additional_info.adoc | 6 +++--- docs/partner_editable/architecture.adoc | 10 ++++------ docs/partner_editable/overview_target_and_usage.adoc | 2 +- docs/partner_editable/product_description.adoc | 3 +-- 4 files changed, 9 insertions(+), 12 deletions(-) diff --git a/docs/partner_editable/additional_info.adoc b/docs/partner_editable/additional_info.adoc index 2f73a85..41ec7db 100644 --- a/docs/partner_editable/additional_info.adoc +++ b/docs/partner_editable/additional_info.adoc @@ -33,7 +33,7 @@ You can launch this Quick Start without an *API Secret* parameter. If your Git s To update the stack with an API secret, do the following: -. In the https://console.aws.amazon.com/cloudformation[AWS Cloudformation console], select the stack you want to update. +. In the https://console.aws.amazon.com/cloudformation[AWS CloudFormation console], select the stack you want to update. . In the stack details pane, choose *Update*. . Choose *Use current template*. . On the *Specify stack details* page, change the *API Secret* parameter setting, then choose *Next*. @@ -61,9 +61,9 @@ The architecture built by this Quick Start supports AWS best practices for secur === SSH Keys -This Quick Start deploys a private SSH key pair which is encrypted with an AWS KMS key and uploaded to Amazon S3. When invoked by the Lambda function, CodeBuild decrypts the private SSH key and uses it to authenticate your Git service before cloning the repository. +This Quick Start deploys a private SSH key pair which is encrypted with an AWS KMS key and uploaded to Amazon S3. CodeBuild decrypts the private SSH key and uses it to authenticate your Git service before cloning the repository. -We don’t recommend sharing SSH keys among multiple services, or launching another instance of this Quick Start for to clone and store another repository in Amazon S3. Each repository should use unique SSH keys. +We don’t recommend sharing SSH keys among multiple services, or launching another instance of this Quick Start to clone and store another repository in Amazon S3. Each repository should use unique SSH keys. === Webhook security diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index 8389e64..b82f170 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -12,15 +12,13 @@ As shown in <>, this Quick Start sets up a serverless AWS * Amazon API Gateway to receive Git webhook requests and forward them to AWS Lambda. * An AWS Lambda function to process Git webhook requests from API Gateway and invoke an AWS CodeBuild project. -* AWS Identity and Access Management (IAM) roles required by Lambda and API Gateway (not pictured). * A CodeBuild project to connect to your Git service, then retrieve, zip, and upload the latest version of your Git repository to Amazon S3. -* An AWS Key Management Service (AWS KMS) key to encrypt/decrypt the SSH (Secure Shell) keys used by CodeBuild to connect to your Git repository using SSH. -* Two Amazon S3 buckets: one for Git repository contents, and another for encrypted SSH keys. -* Two Lambda-backed AWS CloudFormation custom resources (not pictured). One generates an SSH key pair, encrypts it using AWS KMS, and uploads it to Amazon S3. The second deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you need backups, ensure that you copy the S3 buckets before deleting the stack. +* An AWS Key Management Service (AWS KMS) key to encrypt/decrypt the SSH (Secure Shell) keys used by CodeBuild to connect to your Git repository using SSH. The SSH key pair is generated by a Lambda-backed AWS CloudFormation custom resource when the stack is deployed. +* Two Amazon S3 buckets: one for Git repository contents, and another for encrypted SSH keys. A Lambda-backed AWS CloudFormation custom resource deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you need backups, ensure that you copy the S3 buckets before deleting the stack. [NOTE] ======== -* The inline permissions attached to the IAM roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. +* The Quick Start deploys AWS Identity and Access Management (IAM) roles required by Lambda and API Gateway. The inline permissions attached to the roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. * The CodeBuild project must be able to communicate with your Git repository. For example, you can employ a SaaS-based Git service like GitHub to which CodeBuild can connect over the internet. -* The Git repository S3 bucket this Quick Start deploys has versioning enabled, and all previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?]. +* The Git repository S3 bucket this Quick Start deploys has versioning enabled, and all previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?] ======== diff --git a/docs/partner_editable/overview_target_and_usage.adoc b/docs/partner_editable/overview_target_and_usage.adoc index 736f359..15805b5 100644 --- a/docs/partner_editable/overview_target_and_usage.adoc +++ b/docs/partner_editable/overview_target_and_usage.adoc @@ -1,4 +1,4 @@ -This Quick Start deploys the HTTPS endpoint and code you can use to configure webhooks linking your Git and AWS services. With this integration in place, each time a Git user pushes a commit, your repository is automatically retrieved, zipped, and uploaded to an Amazon Simple Storage Service (Amazon S3) bucket. You can then configure AWS services such as AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy to use the S3 bucket as a source. In this way, you can build a continuous integration and continuous delivery (CI/CD) pipeline on the foundation this Quick Start deploys. +This Quick Start deploys the HTTPS endpoint and code you can use to configure webhooks linking your Git and AWS services. With this integration in place, each time a Git user pushes a commit, your repository is automatically retrieved, zipped, and uploaded to an Amazon Simple Storage Service (Amazon S3) bucket. You can then configure AWS services such as AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy to use the S3 bucket as a source. This guide describes the components that are deployed by the Quick Start, and contains links to launch the AWS CloudFormation template that automates the deployment. diff --git a/docs/partner_editable/product_description.adoc b/docs/partner_editable/product_description.adoc index 179be25..06db81d 100644 --- a/docs/partner_editable/product_description.adoc +++ b/docs/partner_editable/product_description.adoc @@ -1,4 +1,3 @@ - -After deploying this Quick Start and configuring a webhook in your Git service, when a Git user pushes changes to your repository, the Git service sends an HTTPS POST request to the HTTPS endpoint. The HTTPS POST request contains JavaScript Object Notation (JSON) data about the push that invoked the webhook action. After the request is accepted by Amazon API Gateway, it is passed to an AWS Lambda function that triggers an AWS CodeBuild project. The CodeBuild project retrieves the latest version of your repository, zips it, and uploads it to an Amazon S3 bucket. +After deploying this Quick Start and configuring a webhook in your Git service, when a Git user pushes changes to your repository, the Git service sends an HTTPS POST request to the HTTPS endpoint. The HTTPS POST request contains JavaScript Object Notation (JSON) data about the push operation and repository. After the request is accepted by Amazon API Gateway, it is passed to an AWS Lambda function that triggers an AWS CodeBuild project. The CodeBuild project retrieves the latest version of your repository, zips it, and uploads it to an Amazon S3 bucket. For more information about the components that this Quick Start deploys, see the link:#_architecture[Architecture] section later in this guide. \ No newline at end of file From 861036301e1b9730f91160ec100d2603223ab162 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Mon, 4 Jan 2021 16:25:54 -0500 Subject: [PATCH 32/37] Update README.md --- README.md | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index 3f735c9..758e8cd 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,7 @@ -# quickstart-git2s3 -## Git webhooks with AWS services -### Linking your Git repository to Amazon S3 and AWS services for continuous code integration, testing, and deployment +## Git webhooks with AWS services - Quick Start -This Quick Start deploys HTTPS endpoints. AWS Lambda functions and AWS CodeBuild project for implementing webhooks, to enable event-driven integration between Git services and Amazon Web Services (AWS) on the AWS Cloud. +For architectural details, step-by-step instructions, and customization options, see the [deployment guide](https://fwd.aws/6e9Rd). -After you deploy the Quick Start, you can set up a webhook that uses the endpoints to create a bridge between your Git repository and AWS services like AWS CodePipeline and AWS CodeBuild. With this setup, builds and pipeline executions occur automatically when you commit your code to a Git repository, and your code can be continuously integrated, tested, built, and deployed on AWS with each change. +To post feedback, submit feature ideas, or report bugs, use the **Issues** section of this GitHub repo. -The Quick Start includes an AWS CloudFormation template that automates the deployment. You can also use the AWS CloudFormation template as a starting point for your own implementation. - - - -![Quick Start architecture for implementing webhooks on AWS](./docs/images/image3.png) - -For implementation details, deployment instructions, and customization options, see the [deployment guide](https://fwd.aws/QQBRr). - -To post feedback, submit feature ideas, or report bugs, use the **Issues** section of this GitHub repo. -If you'd like to submit code for this Quick Start, please review the [AWS Quick Start Contributor's Kit](https://aws-quickstart.github.io/). +To submit code for this Quick Start, see the [AWS Quick Start Contributor's Kit](https://aws-quickstart.github.io/). \ No newline at end of file From 3195e23f9c3bad37ed5a37faf89be25e6cf19350 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Tue, 5 Jan 2021 11:23:10 -0500 Subject: [PATCH 33/37] edits part 1 010521 --- docs/partner_editable/_settings.adoc | 2 +- docs/partner_editable/additional_info.adoc | 16 ++++++++-------- docs/partner_editable/architecture.adoc | 6 +++--- docs/partner_editable/faq_troubleshooting.adoc | 14 +++++++------- docs/partner_editable/product_description.adoc | 2 +- 5 files changed, 20 insertions(+), 20 deletions(-) diff --git a/docs/partner_editable/_settings.adoc b/docs/partner_editable/_settings.adoc index a684a92..241186a 100644 --- a/docs/partner_editable/_settings.adoc +++ b/docs/partner_editable/_settings.adoc @@ -14,7 +14,7 @@ // and "{quickstart-team-name}". Use commas as shown in the placeholder text. // Use the comma before "and" only when three or more names. // :partner-contributors: Shuai Ye, Michael McConnell, and John Smith, {partner-company-name} -:quickstart-contributors: Kirankumar Chandrashekar and Jay McConnell, Amazon Web Services +:quickstart-contributors: Kirankumar Chandrashekar and Jay McConnell, AWS Quick Start team // For deployment_time, use minutes if deployment takes an hour or less, // for example, 30 minutes or 60 minutes. // Use hours for deployment times greater than 60 minutes (rounded to a quarter hour), diff --git a/docs/partner_editable/additional_info.adoc b/docs/partner_editable/additional_info.adoc index 41ec7db..bbe8b8b 100644 --- a/docs/partner_editable/additional_info.adoc +++ b/docs/partner_editable/additional_info.adoc @@ -18,14 +18,14 @@ The instructions for setting up webhooks and deployment keys vary by Git service After deploying the Quick Start, configure the AWS services in your workload to use the Git repository S3 bucket as a source. -As shown in <>, the *Outputs* tab in the AWS CloudFormation console includes *OutputBucketName*. This output is an S3 key that forms the base of the path to the .zip file of your repository code. The S3 key is in the following format: +As shown in <>, the *Outputs* tab in the AWS CloudFormation console includes *OutputBucketName*. This output is an Amazon S3 key that forms the base of the path to the .zip file of your repository code. The S3 key has the following format: ``` S3://output-bucket-name/git-user/git-repository/git-user_git-repository.zip ``` Here, `git-user` is the owner or path prefix of the repository. In some Git services, this may be an organization name. However, some Git services do not return a Git user or organization for a repository. In these cases, you can omit the `git-user` parts of the path. -The instructions for linking an AWS service to an S3 object vary. For links to AWS service documentation, see link:#_aws_services[AWS services] later in this guide. +The instructions vary for linking an AWS service to an Amazon S3 object. For links to AWS service documentation, see link:#_aws_services[AWS services], later in this guide. == Adding an API secret after deployment @@ -38,7 +38,7 @@ To update the stack with an API secret, do the following: . Choose *Use current template*. . On the *Specify stack details* page, change the *API Secret* parameter setting, then choose *Next*. . On the *Configure stack options* page, choose *Next*. -. Choose *I acknowledge that this template may create IAM resources*. +. Select *I acknowledge that this template may create IAM resources*. . Choose *Update stack*. When the status is *UPDATE_COMPLETE*, the stack is updated with the API secret. == Test the deployment @@ -47,7 +47,7 @@ Before putting a webhook into production, test your deployment by doing the foll . Modify a file in your repository. . Commit and push the changes. -. Wait a few minutes, then check the Git repository S3 bucket this Quick Start deploys for a new (or updated) object with a key that matches your repository path. +. Wait a few minutes, and then check the Git repository S3 bucket for a new (or updated) object with a key that matches your repository path. :xrefstyle: short [#S3_new_object] @@ -59,14 +59,14 @@ image::../images/S3_new_object.png[S3_new_object,width=646,height=348] The architecture built by this Quick Start supports AWS best practices for security. -=== SSH Keys +=== SSH keys -This Quick Start deploys a private SSH key pair which is encrypted with an AWS KMS key and uploaded to Amazon S3. CodeBuild decrypts the private SSH key and uses it to authenticate your Git service before cloning the repository. +This Quick Start deploys a private SSH key pair that is encrypted with an AWS KMS key and uploaded to Amazon S3. AWS CodeBuild decrypts the private SSH key and uses it to authenticate your Git service before cloning the repository. We don’t recommend sharing SSH keys among multiple services, or launching another instance of this Quick Start to clone and store another repository in Amazon S3. Each repository should use unique SSH keys. === Webhook security -Git services provide different ways to authenticate against an endpoint, such as webhook secrets, source IP address whitelisting, personal access tokens, and OAuth2. We recommend that you set up at least one of these security mechanisms to protect your webhook API endpoint. +Git services provide different ways to authenticate an endpoint, such as webhook secrets, source-IP-address allow listing, personal access tokens, and OAuth2. We recommend that you set up at least one of these security mechanisms to protect your webhook API endpoint. -For more information about how this Quick Start utilizes endpoint security mechanisms, see the link:#_parameter_reference[Parameter reference] section of this guide. For specific guidance on how to configure security mechanisms for your Git service, refer to your Git service documentation. +For more information about how this Quick Start uses endpoint security mechanisms, see the link:#_parameter_reference[Parameter reference] section of this guide. For specific guidance on how to configure security mechanisms for your Git service, refer to your Git service documentation. diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index b82f170..a385994 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -12,13 +12,13 @@ As shown in <>, this Quick Start sets up a serverless AWS * Amazon API Gateway to receive Git webhook requests and forward them to AWS Lambda. * An AWS Lambda function to process Git webhook requests from API Gateway and invoke an AWS CodeBuild project. -* A CodeBuild project to connect to your Git service, then retrieve, zip, and upload the latest version of your Git repository to Amazon S3. -* An AWS Key Management Service (AWS KMS) key to encrypt/decrypt the SSH (Secure Shell) keys used by CodeBuild to connect to your Git repository using SSH. The SSH key pair is generated by a Lambda-backed AWS CloudFormation custom resource when the stack is deployed. +* A AWS CodeBuild project to connect to your Git service, then retrieve, zip, and upload the latest version of your Git repository to Amazon S3. +* An AWS Key Management Service (AWS KMS) key to encrypt/decrypt the SSH (Secure Shell) keys used by AWS CodeBuild to connect to your Git repository using SSH. The SSH key pair is generated by a Lambda-backed AWS CloudFormation custom resource when the stack is deployed. * Two Amazon S3 buckets: one for Git repository contents, and another for encrypted SSH keys. A Lambda-backed AWS CloudFormation custom resource deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you need backups, ensure that you copy the S3 buckets before deleting the stack. [NOTE] ======== * The Quick Start deploys AWS Identity and Access Management (IAM) roles required by Lambda and API Gateway. The inline permissions attached to the roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. -* The CodeBuild project must be able to communicate with your Git repository. For example, you can employ a SaaS-based Git service like GitHub to which CodeBuild can connect over the internet. +* The AWS CodeBuild project must be able to communicate with your Git repository. For example, you can employ a SaaS-based Git service like GitHub to which CodeBuild can connect over the internet. * The Git repository S3 bucket this Quick Start deploys has versioning enabled, and all previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?] ======== diff --git a/docs/partner_editable/faq_troubleshooting.adoc b/docs/partner_editable/faq_troubleshooting.adoc index 0d3e57e..7330d30 100644 --- a/docs/partner_editable/faq_troubleshooting.adoc +++ b/docs/partner_editable/faq_troubleshooting.adoc @@ -8,17 +8,17 @@ WARNING: When you set *Rollback on failure* to *Disabled*, you continue to incur AWS charges for this stack. Ensure that you delete the stack after troubleshooting. -For additional information, see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html[Troubleshooting AWS CloudFormation^] on the AWS website. +For more information, see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html[Troubleshooting AWS CloudFormation^]. == Troubleshooting If commits to your repository do not show up in Amazon S3, do the following: -* Check the security parameters and endpoint in your Git webhook configuration. See link:#_configuring_git_services[Configuring Git services] earlier in this guide and consult your Git service documentation for help configuring webhooks. -* Check the Lambda logs for errors. These are stored in Amazon CloudWatch Logs. For help accessing them, see https://docs.aws.amazon.com/lambda/latest/dg/monitoring-cloudwatchlogs.html[Accessing Amazon CloudWatch logs for AWS Lambda]. +* Check the security parameters and endpoint in your Git webhook configuration. See link:#_configuring_git_services[Configuring Git services] earlier in this guide and consult your Git service documentation for help with configuring webhooks. +* Check the AWS Lambda logs for errors. These are stored in Amazon CloudWatch Logs. For help with accessing them, see https://docs.aws.amazon.com/lambda/latest/dg/monitoring-cloudwatchlogs.html[Accessing Amazon CloudWatch logs for AWS Lambda]. * Check the AWS CodeBuild project logs for errors. To access them, do the following: . Open the AWS CodeBuild console. -. On the *Build history* page, click the *Build run* link for the project. +. On the *Build history* page, choose the *Build run* link for the project. . On the *Build status* page, see the *Build logs* tab. == Additional resources @@ -38,6 +38,6 @@ If commits to your repository do not show up in Amazon S3, do the following: === Webhooks -* https://developer.github.com/v3/repos/hooks/[Webhooks on GitHub Developer blog] -* https://confluence.atlassian.com/bitbucket/manage-webhooks-735643732.html[Manage webhooks on Atlassian Bitbucket Support] -* https://docs.gitlab.com/ce/user/project/integrations/webhooks.html[Webhooks on GitLab Docs] \ No newline at end of file +* https://developer.github.com/v3/repos/hooks/[GitHub Docs: Webhooks] +* https://confluence.atlassian.com/bitbucket/manage-webhooks-735643732.html[BitBucket Support: Manage webhooks] +* https://docs.gitlab.com/ce/user/project/integrations/webhooks.html[GitLab Docs: Webhooks] \ No newline at end of file diff --git a/docs/partner_editable/product_description.adoc b/docs/partner_editable/product_description.adoc index 06db81d..f8e30cc 100644 --- a/docs/partner_editable/product_description.adoc +++ b/docs/partner_editable/product_description.adoc @@ -1,3 +1,3 @@ -After deploying this Quick Start and configuring a webhook in your Git service, when a Git user pushes changes to your repository, the Git service sends an HTTPS POST request to the HTTPS endpoint. The HTTPS POST request contains JavaScript Object Notation (JSON) data about the push operation and repository. After the request is accepted by Amazon API Gateway, it is passed to an AWS Lambda function that triggers an AWS CodeBuild project. The CodeBuild project retrieves the latest version of your repository, zips it, and uploads it to an Amazon S3 bucket. +After deploying the Quick Start, you use the link:#_configuring_git_services[endpoint information] it provides to configure a webhook in your Git service. A webhook sends an HTTPS POST request to the endpoint in response to a push action. The HTTPS POST request contains JavaScript Object Notation (JSON) data about the push and repository. After the request is accepted by Amazon API Gateway, it is passed to an AWS Lambda function that triggers an AWS CodeBuild project. The AWS CodeBuild project uses the information in the HTTPS POST request to retrieve the latest version of your repository. For more information about the components that this Quick Start deploys, see the link:#_architecture[Architecture] section later in this guide. \ No newline at end of file From 2598a75c8dcbd7023cd9479ac80eb0e26bd38042 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Tue, 5 Jan 2021 11:26:51 -0500 Subject: [PATCH 34/37] Update boilerplate --- docs/boilerplate | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/boilerplate b/docs/boilerplate index 6dad7ef..da2f08d 160000 --- a/docs/boilerplate +++ b/docs/boilerplate @@ -1 +1 @@ -Subproject commit 6dad7efceb9734dadee99b88ea55b95aeb8afc18 +Subproject commit da2f08d7a202c14815e67ad5bddb3c6c01c4bbbb From 0aba138eb758e4b73066278ccf52d1dd669ed16d Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Tue, 5 Jan 2021 12:31:57 -0500 Subject: [PATCH 35/37] edits part 2 010521 --- docs/partner_editable/architecture.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index a385994..b51a9b9 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -12,7 +12,7 @@ As shown in <>, this Quick Start sets up a serverless AWS * Amazon API Gateway to receive Git webhook requests and forward them to AWS Lambda. * An AWS Lambda function to process Git webhook requests from API Gateway and invoke an AWS CodeBuild project. -* A AWS CodeBuild project to connect to your Git service, then retrieve, zip, and upload the latest version of your Git repository to Amazon S3. +* An AWS CodeBuild project to connect to your Git service, then retrieve, zip, and upload the latest version of your Git repository to Amazon S3. * An AWS Key Management Service (AWS KMS) key to encrypt/decrypt the SSH (Secure Shell) keys used by AWS CodeBuild to connect to your Git repository using SSH. The SSH key pair is generated by a Lambda-backed AWS CloudFormation custom resource when the stack is deployed. * Two Amazon S3 buckets: one for Git repository contents, and another for encrypted SSH keys. A Lambda-backed AWS CloudFormation custom resource deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you need backups, ensure that you copy the S3 buckets before deleting the stack. From e64341106e56eef87594eb58462ea9c4b55e91a3 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Wed, 6 Jan 2021 10:34:07 -0500 Subject: [PATCH 36/37] Update git2s3.template.yaml --- templates/git2s3.template.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/git2s3.template.yaml b/templates/git2s3.template.yaml index 6057d65..e7e7212 100644 --- a/templates/git2s3.template.yaml +++ b/templates/git2s3.template.yaml @@ -3,7 +3,7 @@ Description: Git webhooks to clone and store a Git repository in S3. Used to int with AWS services like AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy. (qs-1nfhrd9bh) Metadata: QuickStartDocumentation: - EntrypointName: Parameters for deploying into your selected Region. + EntrypointName: Parameters for deploying into your selected Region AWS::CloudFormation::Interface: ParameterGroups: - Label: From 61b881988d3b226c1f3103d62b93bc5dfb5dc7d5 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Wed, 6 Jan 2021 17:22:46 -0500 Subject: [PATCH 37/37] edits part 2 010621 --- docs/images/architecture_diagram.png | Bin 65530 -> 62201 bytes docs/partner_editable/architecture.adoc | 2 +- .../overview_target_and_usage.adoc | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/images/architecture_diagram.png b/docs/images/architecture_diagram.png index 8b388ed9a058cf2e7fbf5afaa6ef4527354d47b8..459938af1f76d2d4994a4973e7077b88c510d706 100644 GIT binary patch literal 62201 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 literal 65530 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, this Quick Start sets up a serverless AWS * An AWS Lambda function to process Git webhook requests from API Gateway and invoke an AWS CodeBuild project. * An AWS CodeBuild project to connect to your Git service, then retrieve, zip, and upload the latest version of your Git repository to Amazon S3. * An AWS Key Management Service (AWS KMS) key to encrypt/decrypt the SSH (Secure Shell) keys used by AWS CodeBuild to connect to your Git repository using SSH. The SSH key pair is generated by a Lambda-backed AWS CloudFormation custom resource when the stack is deployed. -* Two Amazon S3 buckets: one for Git repository contents, and another for encrypted SSH keys. A Lambda-backed AWS CloudFormation custom resource deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you need backups, ensure that you copy the S3 buckets before deleting the stack. +* Two Amazon S3 buckets: one for Git repository contents, and another for encrypted SSH keys. A Lambda-backed AWS CloudFormation custom resource deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you need backups, copy the S3 buckets before deleting the stack. [NOTE] ======== diff --git a/docs/partner_editable/overview_target_and_usage.adoc b/docs/partner_editable/overview_target_and_usage.adoc index 15805b5..7f6ed60 100644 --- a/docs/partner_editable/overview_target_and_usage.adoc +++ b/docs/partner_editable/overview_target_and_usage.adoc @@ -1,4 +1,4 @@ -This Quick Start deploys the HTTPS endpoint and code you can use to configure webhooks linking your Git and AWS services. With this integration in place, each time a Git user pushes a commit, your repository is automatically retrieved, zipped, and uploaded to an Amazon Simple Storage Service (Amazon S3) bucket. You can then configure AWS services such as AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy to use the S3 bucket as a source. +This Quick Start deploys the HTTPS endpoint you can use to configure a webhook to link your Git and AWS services. With a webhook in place, each time a Git user pushes a commit, your repository is automatically retrieved, zipped, and uploaded to an Amazon Simple Storage Service (Amazon S3) bucket. You can then configure AWS services such as AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy to use the S3 bucket as a source. This guide describes the components that are deployed by the Quick Start, and contains links to launch the AWS CloudFormation template that automates the deployment.

E9fN**tr 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 literal 68175 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 diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index 86cc212..63f7a97 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -12,11 +12,11 @@ The Quick Start deployment sets up a serverless AWS Cloud environment that inclu * Amazon API Gateway to receive Git webhook requests and forward requests to AWS Lambda. * An AWS Lambda function to process Git webhook requests and invoke AWS CodeBuild. -* AWS Identity and Access Management (IAM) roles required by Lambda and API Gateway. The inline permissions attached to these roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. -* A CodeBuild project to work with AWS Lambda to connect to the Git service, then retrieve, zip, and upload Git repository code to Amazon Simple Storage Service (Amazon S3). -* AWS Key Management Service (AWS KMS) to encrypt private keys used by AWS CodeBuild to connect to the Git repository using SSH (Secure Shell). -* Two Amazon Simple Storage Service (S3) buckets, one for Git repository contents, and another for the private SSH keys encrypted by AWS KMS. -* Two Lambda-backed AWS CloudFormation custom resources. One generates an SSH key pair, encrypts it using AWS KMS, and uploads it to Amazon S3. The second deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you need backups, ensure that you copy S3 bucket contents before deleting the stack. +* AWS Identity and Access Management (IAM) roles required by Lambda and API Gateway (not pictured). The inline permissions attached to these roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. +* A CodeBuild project to connect to the Git service, then retrieve, zip, and upload Git repository code to Amazon Simple Storage Service (Amazon S3). +* AWS Key Management Service (AWS KMS) to create and encrypt a private key used by AWS CodeBuild to connect to the Git repository using SSH (Secure Shell). +* Two Amazon Simple Storage Service (S3) buckets: one for Git repository contents, and another for the AWS KMS key. +* Two Lambda-backed AWS CloudFormation custom resources (not pictured). One generates an SSH key pair, encrypts it using AWS KMS, and uploads it to Amazon S3. The second deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you want backups, ensure that you copy S3 bucket contents before deleting the stack. The S3 bucket for Git contents that this Quick Start deploys has versioning enabled, and all previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?]. @@ -43,4 +43,4 @@ Endpoint | Description | Benefits |=== -NOTE: When configuring a webhook using the Git pull endpoint, you need the the *GitPullWebHookApi* and *PublicSSHKey*. For more information, see link:#_configure_git_services[Configuring Git services] later in this guide. +NOTE: When configuring a webhook using the Git pull endpoint, you need *GitPullWebHookApi* and *PublicSSHKey*. For more information, see link:#_configure_git_services[Configuring Git services] later in this guide. From 345199af7d3a703431bd28b98f661c46d60865a3 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Tue, 22 Dec 2020 13:38:12 -0500 Subject: [PATCH 22/37] edits part 2 122220 --- docs/partner_editable/architecture.adoc | 42 +++++-------------- docs/partner_editable/deploy_steps.adoc | 6 +-- .../partner_editable/faq_troubleshooting.adoc | 18 ++++---- .../overview_target_and_usage.adoc | 2 +- 4 files changed, 26 insertions(+), 42 deletions(-) diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index 63f7a97..dd917ac 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -8,39 +8,19 @@ Deploying this Quick Start builds the following environment in the AWS Cloud. [link=images/architecture_diagram.png] image::../images/architecture_diagram.png[architecture_diagram,width=100%,height=100%] -The Quick Start deployment sets up a serverless AWS Cloud environment that includes the following components: +As shown in <>, this Quick Start sets up a serverless AWS Cloud environment that includes the following components: * Amazon API Gateway to receive Git webhook requests and forward requests to AWS Lambda. * An AWS Lambda function to process Git webhook requests and invoke AWS CodeBuild. -* AWS Identity and Access Management (IAM) roles required by Lambda and API Gateway (not pictured). The inline permissions attached to these roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. +* AWS Identity and Access Management (IAM) roles required by Lambda and API Gateway (not pictured). * A CodeBuild project to connect to the Git service, then retrieve, zip, and upload Git repository code to Amazon Simple Storage Service (Amazon S3). -* AWS Key Management Service (AWS KMS) to create and encrypt a private key used by AWS CodeBuild to connect to the Git repository using SSH (Secure Shell). +* An AWS Key Management Service (AWS KMS) private key to encrypt the SSH key used by AWS CodeBuild to connect to the Git repository using SSH (Secure Shell). * Two Amazon Simple Storage Service (S3) buckets: one for Git repository contents, and another for the AWS KMS key. -* Two Lambda-backed AWS CloudFormation custom resources (not pictured). One generates an SSH key pair, encrypts it using AWS KMS, and uploads it to Amazon S3. The second deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you want backups, ensure that you copy S3 bucket contents before deleting the stack. - -The S3 bucket for Git contents that this Quick Start deploys has versioning enabled, and all previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?]. - -== Webhook endpoints -A webhook endpoint is the URL to which your Git service sends HTTP POST requests when commits are pushed to your Git repository. - -The following table compares the benefits of the two endpoints deployed by this Quick Start. Use the endpoint that best fits your use case, repository size, and Git workflow. - -[cols="1,2,3a"] -|=== -Endpoint | Description | Benefits - -| Zip download | Use your Git service's HTTP API to download a .zip file of the current version of the entire repository. | - -* No need for external libraries. -* Smaller Lambda function code. -* Large repository size limit (500 MB). - -| Git pull | Use SSH to pull, zip, and upload changed files from your Git repository to Amazon S3. | - -* Efficient for repositories with a high volume of commits, because each time the API is triggered, it downloads only changed files. -* Suitable for any Git server that supports webhooks and SSH. Does not depend on personal access tokens or OAuth2. -* More extensible because it uses a standard Git library. - -|=== - -NOTE: When configuring a webhook using the Git pull endpoint, you need *GitPullWebHookApi* and *PublicSSHKey*. For more information, see link:#_configure_git_services[Configuring Git services] later in this guide. +* Two Lambda-backed AWS CloudFormation custom resources (not pictured). One generates an SSH key pair, encrypts it using AWS KMS, and uploads it to Amazon S3. The second deletes the contents of the S3 buckets when you delete the CloudFormation stack. If you need backups, ensure that you copy S3 bucket contents before deleting the stack. + +[NOTE] +======== +* The inline permissions attached to the IAM roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. +* The CodeBuild project must be able to communicate with your Git repository. For example, you can employ a SaaS-based Git service to which CodeBuild can connect to over the internet. +* The Git repository S3 bucket this Quick Start deploys has versioning enabled, and all previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?]. +======== diff --git a/docs/partner_editable/deploy_steps.adoc b/docs/partner_editable/deploy_steps.adoc index 53d5abd..eab09dd 100644 --- a/docs/partner_editable/deploy_steps.adoc +++ b/docs/partner_editable/deploy_steps.adoc @@ -26,7 +26,7 @@ NOTE: You can also https://fwd.aws/wr8Gg[download the template] to use it as a s After deploying the Quick Start, set up a webhook in the Git repository. -To configure a link:#webhook-endpoints[git pull endpoint], you need the *GitPullWebHookApi* and *PublicSSHKey*, which display on the *Outputs* tab on the AWS CloudFormation console. +To configure a webhook, you need *GitPullWebHookApi* and *PublicSSHKey*. You can find these on the *Outputs* tab on the AWS CloudFormation console after deploying the Quick Start. :xrefstyle: short [#outputs_tab] @@ -37,13 +37,13 @@ image::../images/outputs_tab.png[outputs_tab,width=701,height=222] * *GitPullWebHookApi* is the URL endpoint that receives the HTTP POST request from the Git service. * *PublicSSHKey* is the public SSH key used to connect to your Git repository. This key can be configured as a read-only machine user or as a deployment key in your Git repository. -The instructions for setting up webhooks and deploy keys vary by Git service. For more information, see your Git service documentation. +The instructions for setting up webhooks and deployment keys vary by Git service. For more information, see your Git service documentation. === Configuring AWS services After deploying the Quick Start, configure the AWS services in your workload to use the S3 object as a source. -As previously illustrated in <>, the *Outputs* tab in the AWS CloudFormation console includes the *OutputBucketName*. This output is an S3 key that forms the base of the path to your code .zip file. The S3 key is in the following format: +As shown in <>, the *Outputs* tab in the AWS CloudFormation console includes *OutputBucketName*. This output is an S3 key that forms the base of the path to the .zip file of your repository code. The S3 key is in the following format: ``` S3://output-bucket-name/git-user/git-repository/git-user_git-repository.zip diff --git a/docs/partner_editable/faq_troubleshooting.adoc b/docs/partner_editable/faq_troubleshooting.adoc index 0494b78..a50c60f 100644 --- a/docs/partner_editable/faq_troubleshooting.adoc +++ b/docs/partner_editable/faq_troubleshooting.adoc @@ -4,20 +4,22 @@ *Q.* I encountered a *CREATE_FAILED* error when I launched the Quick Start. -*A.* If AWS CloudFormation fails to create the stack, we recommend that you relaunch the template with *Rollback on failure* set to *Disabled*. (This setting is under *Advanced* in the AWS CloudFormation console, *Options* page.) With this setting, the stack’s state is retained and the instance is left running, so you can troubleshoot the issue.) +*A.* If AWS CloudFormation fails to create the stack, we recommend that you relaunch the template with *Rollback on failure* set to *Disabled*. (This setting is under *Advanced* on the *Options* page of the AWS CloudFormation console.) With this setting, the stack’s state is retained and the instance remains running so you can troubleshoot the issue. -WARNING: When you set *Rollback on failure* to *Disabled*, you continue to incur AWS charges for this stack. Please make sure to delete the stack when you finish troubleshooting. +WARNING: When you set *Rollback on failure* to *Disabled*, you continue to incur AWS charges for this stack. Ensure that you delete the stack when after troubleshooting. For additional information, see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html[Troubleshooting AWS CloudFormation^] on the AWS website. == Troubleshooting -If your commits are not being pushed through to Amazon S3, check the following: +If your commits are not being pushed through to Amazon S3, do the following: -* In your Git service’s webhooks configuration, check that your configured security parameters and the endpoint are correct. Consult the Git service documentation for detailed guidance on configuration. -* Check the Lambda logs for errors. These are stored in Amazon CloudWatch Logs. To access the logs, open the endpoint’s Lambda function in the AWS console, navigate to the *Monitoring* tab, and then choose *View logs in CloudWatch*. For more information, see https://docs.aws.amazon.com/lambda/latest/dg/lambda-troubleshooting.html[Troubleshooting issues in AWS Lambda^] on the AWS website. - -* Check the AWS CodeBuild project logs for errors. These are stored in Amazon CloudWatch Logs. To access the logs, open the endpoint’s CodeBuild Build Project in the AWS console, select a *Build run* and click on the hyperlink and navigate to the *Build logs* tab to see the build execution logs. For more information, see https://docs.aws.amazon.com/codebuild/latest/userguide/troubleshooting.html[Troubleshooting AWS CodeBuild^] on the AWS website. +* Check the security parameters and endpoint in your Git webhook configuration. See link:#configuring_git_services[Configuring Git services] earlier in this guide and consult your Git service documentation for help configuring webhooks. +* Check the Lambda logs for errors. These are stored in Amazon CloudWatch Logs. For help accessing them, see https://docs.aws.amazon.com/lambda/latest/dg/monitoring-cloudwatchlogs.html[Accessing Amazon CloudWatch logs for AWS Lambda]. +* Check the AWS CodeBuild project logs for errors. To access them, do the following: +. Open the AWS CodeBuild console. +. On the *Build history* page, click the *Build run* link for the project. +. On the *Build status* page, see the *Build logs* tab. == Additional resources @@ -25,11 +27,13 @@ If your commits are not being pushed through to Amazon S3, check the following: * https://aws.amazon.com/documentation/cloudformation/[AWS CloudFormation] * https://aws.amazon.com/documentation/lambda/[AWS Lambda] +** https://docs.aws.amazon.com/lambda/latest/dg/lambda-troubleshooting.html[Troubleshooting issues in AWS Lambda^] * https://aws.amazon.com/documentation/apigateway/[Amazon API Gateway] * https://aws.amazon.com/documentation/s3/[Amazon S3] * https://aws.amazon.com/documentation/codepipeline/[AWS CodePipeline] ** http://docs.aws.amazon.com/codepipeline/latest/userguide/tutorials-simple-s3.html[Tutorial: Create a simple pipeline (S3 bucket)] * https://aws.amazon.com/documentation/codebuild/[AWS CodeBuild] +** https://docs.aws.amazon.com/codebuild/latest/userguide/troubleshooting.html[Troubleshooting AWS CodeBuild^] ** http://docs.aws.amazon.com/codebuild/latest/userguide/getting-started.html[Getting started with AWS CodeBuild using the console] === Webhooks diff --git a/docs/partner_editable/overview_target_and_usage.adoc b/docs/partner_editable/overview_target_and_usage.adoc index 0b02f65..65c3a4d 100644 --- a/docs/partner_editable/overview_target_and_usage.adoc +++ b/docs/partner_editable/overview_target_and_usage.adoc @@ -1,4 +1,4 @@ -Git webhooks enable event-driven integration between Git services and external applications. This Quick Start deploys the HTTPS endpoints and code you can use to link your AWS and Git services with webhooks. After deploying the Quick Start, you can configure a webhook in your Git repository using these endpoints. With this integration in place, each time a developer pushes a commit, your repository is automatically retrieved, zipped, and uploaded to an Amazon Simple Storage Service (Amazon S3) bucket. You can then configure AWS services such as AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy to use the S3 bucket as a source. In this way, you can build a continuous integration and continuous delivery (CI/CD) pipeline on the foundation this Quick Start deploys. +Git webhooks enable event-driven integration between Git services and external applications. This Quick Start deploys the HTTPS endpoints and code you can use to link your AWS and Git services with webhooks. After deploying the Quick Start, you can configure a webhook in your Git repository using these endpoints. With this integration in place, each time a Git user pushes a commit, your repository is automatically retrieved, zipped, and uploaded to an Amazon Simple Storage Service (Amazon S3) bucket. You can then configure AWS services such as AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy to use the S3 bucket as a source. In this way, you can build a continuous integration and continuous delivery (CI/CD) pipeline on the foundation this Quick Start deploys. This guide describes the components that are deployed by the Quick Start, and contains links to launch the AWS CloudFormation template that automates the deployment. From 92867856d7a2b302dcae7595611071401f79304f Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Tue, 22 Dec 2020 15:58:06 -0500 Subject: [PATCH 23/37] edits part 3 122220 --- docs/partner_editable/additional_info.adoc | 10 ++++---- docs/partner_editable/architecture.adoc | 2 +- templates/git2s3.template.yaml | 27 +++++++++------------- 3 files changed, 16 insertions(+), 23 deletions(-) diff --git a/docs/partner_editable/additional_info.adoc b/docs/partner_editable/additional_info.adoc index be59df8..ad3e8d1 100644 --- a/docs/partner_editable/additional_info.adoc +++ b/docs/partner_editable/additional_info.adoc @@ -18,7 +18,7 @@ Before putting a webhook into production, test your deployment by doing the foll . Modify a file in your repository. . Commit and push the changes. -. Wait a few minutes, then check your S3 bucket for a new (or updated) object with a key that matches your repository path. +. Wait a few minutes, then check the Git repository S3 bucket this Quick Start deploys for a new (or updated) object with a key that matches your repository path. :xrefstyle: short [#S3_new_object] @@ -32,14 +32,12 @@ The architecture built by this Quick Start supports AWS best practices for secur === SSH Keys -This Quick Start creates SSH keys with AWS CloudFormation stack. AWS KMS encrypts the SSH keys and stores them in an S3 bucket. - -With the Git pull endpoint method, AWS CodeBuild retrieves and decrypts the private SSH key and uses it to authenticate your Git service before cloning the repository. +This Quick Start deploys a private SSH key pair which is encrypted with an AWS KMS key and uploaded to Amazon S3. When invoked by the Lambda function, AWS CodeBuild decrypts the private SSH key and uses it to authenticate your Git service before cloning the repository. We don’t recommend sharing SSH keys among multiple services, or launching another instance of this Quick Start for to clone and store another repository in Amazon S3. Each repository should use unique SSH keys. === Webhook security -Git services provide different ways to authenticate against an endpoint. The Git pull endpoint supports webhook secrets (used by GitHub Enterprise, GitLab, and other Git repository managers) and source IP address whitelisting. The .zip download endpoint supports personal access tokens (as used by GitHub Enterprise and GitLab) and OAuth2 (used by Bitbucket). We recommend that you set up at least one of these security mechanisms to protect your webhook API endpoint. +Git services provide different ways to authenticate against an endpoint, such as webhook secrets, source IP address whitelisting, personal access tokens, and OAuth2. We recommend that you set up at least one of these security mechanisms to protect your webhook API endpoint. -For more information about how this Quick Start utilizes endpoint security mechanisms, see the link:#parameter_reference[Parameter reference] section of this guide. For product-specific guidance on how to configure these security mechanisms, refer to your Git service documentation. +For more information about how this Quick Start utilizes endpoint security mechanisms, see the link:#parameter_reference[Parameter reference] section of this guide. For specific guidance on how to configure security mechanisms for your Git service, refer to your Git service documentation. diff --git a/docs/partner_editable/architecture.adoc b/docs/partner_editable/architecture.adoc index dd917ac..3313c44 100644 --- a/docs/partner_editable/architecture.adoc +++ b/docs/partner_editable/architecture.adoc @@ -21,6 +21,6 @@ As shown in <>, this Quick Start sets up a serverless AWS [NOTE] ======== * The inline permissions attached to the IAM roles are scoped using the http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege[least privilege] model. -* The CodeBuild project must be able to communicate with your Git repository. For example, you can employ a SaaS-based Git service to which CodeBuild can connect to over the internet. +* The CodeBuild project must be able to communicate with your Git repository. For example, you can employ a SaaS-based Git service to which CodeBuild can connect over the internet. * The Git repository S3 bucket this Quick Start deploys has versioning enabled, and all previous versions are retained indefinitely. To modify the retention period, see http://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html[How do I create a lifecycle rule for an S3 bucket?]. ======== diff --git a/templates/git2s3.template.yaml b/templates/git2s3.template.yaml index a72b18e..0202541 100644 --- a/templates/git2s3.template.yaml +++ b/templates/git2s3.template.yaml @@ -1,9 +1,9 @@ AWSTemplateFormatVersion: '2010-09-09' -Description: Git Webhooks to clone repository contents to S3. For integrating 3rd - party git products with AWS Services like CodePipeline/CodeBuild (qs-1nfhrd9bh) +Description: Git webhooks to clone and store a Git repository in S3. Used to integrate Git services + with AWS services like AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy. (qs-1nfhrd9bh) Metadata: QuickStartDocumentation: - EntrypointName: Deploy into your selected Region + EntrypointName: Deploy into your selected Region. AWS::CloudFormation::Interface: ParameterGroups: - Label: @@ -42,13 +42,11 @@ Metadata: default: Exclude Git Parameters: AllowedIps: - Description: Gitpull method only. Comma-separated list of IP CIDR blocks for source - IP authentication. BitBucket Cloud IP ranges are provided as defaults. + Description: Comma-separated list of IP CIDR blocks for source IP authentication. BitBucket Cloud IP ranges provided by default. Type: String Default: 18.205.93.0/25,18.234.32.128/25,13.52.5.0/25 ApiSecret: - Description: 'Gitpull method only. WebHook secrets for use with GitHub Enterprise - and GitLab. If a secret is matched, IP range authentication is bypassed. Cannot + Description: WebHook secrets for use with GitHub Enterprise and GitLab. If a secret is matched, IP range authentication is bypassed. Cannot contain commas (,), backward slashes (\), or quotes ("). Type: String Default: '' @@ -58,18 +56,15 @@ Parameters: Type: String Default: '' OutputBucketName: - Description: (Optional) Name for the S3 bucket where the .zip file is stored. If left blank, an S3 bucket name is created automatically. + Description: (Optional) Name for the S3 bucket where the Git repository .zip file is stored. If left blank, an S3 bucket name is created automatically. Type: String Default: '' QSS3BucketName: AllowedPattern: ^[0-9a-zA-Z]+([0-9a-zA-Z-]*[0-9a-zA-Z])*$ - ConstraintDescription: Quick Start S3 bucket name can include numbers, lowercase - letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen + ConstraintDescription: Quick Start S3 bucket name can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-). Default: aws-quickstart - Description: S3 bucket name for the Quick Start assets. Quick Start bucket name - can include numbers, lowercase letters, uppercase letters, and hyphens (-). - It cannot start or end with a hyphen (-). + Description: S3 bucket name for the Quick Start assets. Quick Start bucket name can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-). Type: String QSS3BucketRegion: Default: 'us-east-1' @@ -270,7 +265,7 @@ Resources: KMSKey: Type: AWS::KMS::Key Properties: - Description: Key used to encrypt and decrypt SSH keys stored in S3. + Description: AWS KWS key to encrypt and decrypt SSH keys stored in S3. KeyPolicy: Version: '2012-10-17' Statement: @@ -492,7 +487,7 @@ Resources: CodeBuildBasePolicy: Type: 'AWS::IAM::ManagedPolicy' Properties: - Description: Policy with base permissions for CodeBuild + Description: Policy with base permissions for CodeBuild. Path: / Roles: - !Ref CodeBuildServiceRole @@ -534,7 +529,7 @@ Resources: CodeBuildEndpointPolicy: Type: 'AWS::IAM::ManagedPolicy' Properties: - Description: Policy with permissions for codebuild to work with endpoints + Description: Policy with permissions enabling CodeBuild to work with endpoints. Path: / PolicyDocument: Version: "2012-10-17" From bf7ccb3ea0ba65f1a8a5d0377a890faa7c943a32 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Wed, 23 Dec 2020 10:29:29 -0500 Subject: [PATCH 24/37] edits part 1 122320 --- templates/git2s3.template.yaml | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/templates/git2s3.template.yaml b/templates/git2s3.template.yaml index 0202541..50d45a4 100644 --- a/templates/git2s3.template.yaml +++ b/templates/git2s3.template.yaml @@ -3,7 +3,7 @@ Description: Git webhooks to clone and store a Git repository in S3. Used to int with AWS services like AWS CodePipeline, AWS CodeBuild, and AWS CodeDeploy. (qs-1nfhrd9bh) Metadata: QuickStartDocumentation: - EntrypointName: Deploy into your selected Region. + EntrypointName: Parameters for deploying into your selected Region. AWS::CloudFormation::Interface: ParameterGroups: - Label: @@ -42,21 +42,20 @@ Metadata: default: Exclude Git Parameters: AllowedIps: - Description: Comma-separated list of IP CIDR blocks for source IP authentication. BitBucket Cloud IP ranges provided by default. + Description: Comma-separated list of allowed IP CIDR blocks. The default addresses listed are BitBucket Cloud IP ranges. Type: String Default: 18.205.93.0/25,18.234.32.128/25,13.52.5.0/25 ApiSecret: - Description: WebHook secrets for use with GitHub Enterprise and GitLab. If a secret is matched, IP range authentication is bypassed. Cannot - contain commas (,), backward slashes (\), or quotes ("). + Description: API secret used to authenticate access to webhooks in GitHub Enterprise, GitLab, and other Git services. If a webhook payload header contains a matching secret, IP address authentication is bypassed. API secrets cannot contain commas (,), backward slashes (\), or quotes ("). Type: String Default: '' NoEcho: 'true' CustomDomainName: - Description: Domain name for the webhook endpoint. If left blank, API Gateway will create a domain name for you. + Description: Domain name for the webhook endpoint. If left blank, API Gateway creates a domain name for you. Type: String Default: '' OutputBucketName: - Description: (Optional) Name for the S3 bucket where the Git repository .zip file is stored. If left blank, an S3 bucket name is created automatically. + Description: (Optional) Name for the S3 bucket where the Git repository .zip file is stored. If left blank, the Quick Start creates one for you. Type: String Default: '' QSS3BucketName: @@ -64,11 +63,11 @@ Parameters: ConstraintDescription: Quick Start S3 bucket name can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-). Default: aws-quickstart - Description: S3 bucket name for the Quick Start assets. Quick Start bucket name can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-). + Description: S3 bucket name for Quick Start assets. Quick Start bucket name can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-). Type: String QSS3BucketRegion: Default: 'us-east-1' - Description: AWS Region where the Quick Start S3 bucket (QSS3BucketName) is hosted. Required when using your own S3 bucket. + Description: AWS Region where the Quick Start asset S3 bucket (QSS3BucketName) is hosted. Required when using your own S3 bucket. Type: String QSS3KeyPrefix: AllowedPattern: ^[0-9a-zA-Z-/]*$ From 98ea5de97d9a43dcc622300d4211a892edb4e9b3 Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Wed, 23 Dec 2020 12:08:38 -0500 Subject: [PATCH 25/37] edits part 2 122320 --- templates/git2s3.template.yaml | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/templates/git2s3.template.yaml b/templates/git2s3.template.yaml index 50d45a4..20f327b 100644 --- a/templates/git2s3.template.yaml +++ b/templates/git2s3.template.yaml @@ -39,7 +39,7 @@ Metadata: QSS3KeyPrefix: default: Quick Start S3 key prefix ExcludeGit: - default: Exclude Git + default: Exclude .git directory Parameters: AllowedIps: Description: Comma-separated list of allowed IP CIDR blocks. The default addresses listed are BitBucket Cloud IP ranges. @@ -63,20 +63,17 @@ Parameters: ConstraintDescription: Quick Start S3 bucket name can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-). Default: aws-quickstart - Description: S3 bucket name for Quick Start assets. Quick Start bucket name can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-). + Description: S3 bucket name for Quick Start assets. It can include numbers, lowercase letters, uppercase letters, and hyphens (-). It cannot start or end with a hyphen (-). Type: String QSS3BucketRegion: Default: 'us-east-1' - Description: AWS Region where the Quick Start asset S3 bucket (QSS3BucketName) is hosted. Required when using your own S3 bucket. + Description: AWS Region where the Quick Start assets S3 bucket (QSS3BucketName) is hosted. Required when using your own S3 bucket. Type: String QSS3KeyPrefix: AllowedPattern: ^[0-9a-zA-Z-/]*$ - ConstraintDescription: Quick Start key prefix can include numbers, lowercase letters, - uppercase letters, hyphens (-), and forward slash (/). + ConstraintDescription: Quick Start key prefix can include numbers, lowercase letters, uppercase letters, hyphens (-), and forward slashes (/). Default: quickstart-git2s3/ - Description: S3 key prefix for the Quick Start assets. Quick Start key prefix - can include numbers, lowercase letters, uppercase letters, hyphens (-), and - forward slash (/). + Description: Key prefix for the Quick Start assets S3 bucket. A key prefix is similar to a directory name that enables you to store similar data under the same directory in an S3 bucket. It can include numbers, lowercase letters, uppercase letters, hyphens (-), and forward slashes (/). Type: String VPCId: Description: ID of the VPC in which the Lambda function runs. @@ -95,7 +92,7 @@ Parameters: Type: String Default: '' ExcludeGit: - Description: Include the .git directory in the .zip file (True), or do not include (False). + Description: Choose false to omit the .git directory from the Git repository .zip file. Type: String Default: 'True' AllowedValues: ['True', 'False'] From 0a27ae28c1f9a24998304159123997ffe39008df Mon Sep 17 00:00:00 2001 From: censullo <68856666+censullo@users.noreply.github.com> Date: Wed, 23 Dec 2020 12:13:50 -0500 Subject: [PATCH 26/37] edits part 3 122320 --- docs/images/architecture_diagram.png | Bin 65483 -> 65530 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/images/architecture_diagram.png b/docs/images/architecture_diagram.png index ee2e9d598a80656ebf9db8518a9027860b541875..8b388ed9a058cf2e7fbf5afaa6ef4527354d47b8 100644 GIT binary patch literal 65530 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