Skip to content

Does CodePipeline support manual approvals per wave (using the cdk or in general)?

0

I have a pipeline that uses waves in the deployment. There are times when I want to control one deployment over another manually. I've set up the waves to have their stages, which are independent according to the docs. However, adding an approval process to one of the waves takes precedence over all stages. I wish I could upload a screenshot of the Wave in CodePipeline

def __add_deployment_wave(self, deployment: Deployment):
        """
        Set up a new stage in the deployment wave.  Each stage should be independent
        , but this is a bust.  The entire wave is held up if I add approval at one stage.
        """
        # get the app stage
        stage = self.__get_deployment_application_stage(deployment=deployment)
        # add the app stage to a deployment stage
        ds = self.deploy_wave.add_stage(stage)

        # do we manually approve it
        if deployment.manual_approval:
            # This should be linked only to this stage, but it seems
            # to be top-level
            approval_id = f"approval-{deployment.name}"
            ds.add_pre(pipelines.ManualApprovalStep(approval_id))

        # setup the post-deployment commands in the deployment stage in the wave
        # todo: phase 2
        ds.add_post(self.__get_mock_shell(f"post-deployments-{deployment.name}"))
1 Answer
0

You can Implement conditional logic to add manual approval steps only when necessary, reducing the impact on the entire deployment wave.

answered a year ago
EXPERT
reviewed 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.