AWS CodePipeline is disabling polling in inactive pipelines

2

"Hello,

You are receiving this message because you have one or more polling pipelines in your account. A polling pipeline is defined as a pipeline that has at least one source action configured to poll for changes. The AWS CodePipeline team will be disabling polling in inactive pipelines effective May 25, 2023. An inactive pipeline is defined as one that has not had a pipeline execution started in the last 30 days. Inactive pipelines that only use Amazon EventBridge rule, or AWS CodeStar Connections, or webhooks to trigger the pipeline will not be affected. Additionally, any active pipeline will also not be affected.

We recommend that you update to use Amazon EventBridge, or AWS CodeStar Connections, or webhooks as the trigger mechanism for your source. Follow the instructions in the documentation[1] for making this change. Changing your pipeline from polling to event based will improve performance for pipeline executions by ensuring they respond to source changes quicker.

If you have questions about this change, the AWS Support Team is available on re:Post [2] and via Premium Support [3]."

Questions about this Change:

  1. Does this impact only codepipelines with polling as default that are inactive?
  2. If the inactive codepipelines are made active within the next 30 days before May 25, 2023 and subsequently within 30 days thereafter, would that prevent deactivation of the default polling?
  3. Does the default polling use more of AWS resources from AWS perspective/side for the default method to warrant this change to event driven method on the customer side now?
asked a year ago6603 views
3 Answers
3

Please find the answers of your question.

  1. Yes, this change only impacts inactive pipelines that have at least one source action configured to poll for changes. If you have an active pipeline, or if your inactive pipeline only uses Amazon EventBridge rule, AWS CodeStar Connections, or webhooks to trigger the pipeline, then it will not be affected by this change.
  2. Yes, if an inactive pipeline is made active within the next 30 days before May 25, 2023 and has a pipeline execution started, then it will not be considered inactive and will not have its polling disabled. However, if the pipeline remains inactive for 30 days after the last pipeline execution, then its polling will be disabled.
  3. The change is primarily driven by the need to improve performance for pipeline executions by ensuring they respond to source changes quicker. Polling is a resource-intensive operation that can impact the performance of the pipeline, especially when multiple pipelines are polling for changes on the same repository or source location. By moving to event-driven triggers, pipeline executions can be triggered more quickly and efficiently, without the need for polling. This can improve the overall performance of AWS resources and benefit both AWS and customers.
hash
answered a year ago
0

In the CDK you can add trigger in codepipeline_actions.S3SourceAction to resolve it.

P.S.: Do not forget setting CloudTrail for dataEvents [4] source: [1] https://github.com/aws/aws-cdk/blob/5bdb0128e8181cd3a33a118a1f121f67b0f78b20/packages/aws-cdk-lib/aws-codepipeline-actions/lib/s3/source-action.ts#LL135C76-L135C85 [2] https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#action-requirements [3] https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_codepipeline_actions.S3SourceAction.html [4] Do not forget setting CloudTrail for dataEvents : https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/log-s3-data-events.html

import * as cloudtrail from 'aws-cdk-lib/aws-cloudtrail';

declare const sourceBucket: s3.Bucket;
const sourceOutput = new codepipeline.Artifact();
const key = 'some/key.zip';
const trail = new cloudtrail.Trail(this, 'CloudTrail');
trail.addS3EventSelector([{
  bucket: sourceBucket,
  objectPrefix: key,
}], {
  readWriteType: cloudtrail.ReadWriteType.WRITE_ONLY,
});
const sourceAction = new codepipeline_actions.S3SourceAction({
  actionName: 'S3Source',
  bucketKey: key,
  bucket: sourceBucket,
  output: sourceOutput,
  trigger: codepipeline_actions.S3Trigger.EVENTS, // default: S3Trigger.POLL <----
});
answered a year ago
0

I have doubts about this because I used the script to verify if my pipelines are polling pipelines and the script return that YES, but all my pipelines are using s3 as source and in the Change detection options Amazon cloudwatch events and the AWS support told me that this kind of pipelines won't be affected, so the script said yes but aws support said no

profile picture
answered a year ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions