def __init__()

in cdk/pipeline/pipeline_stack.py [0:0]


    def __init__(self, scope: core.Construct, id: str, eks, redis, rds_cluster, **kwargs) -> None:
        
        super().__init__(scope, id, **kwargs)
        
        self.eks = eks
        self.redis = redis
        self.rds_cluster = rds_cluster
        

        # create ECR
        ecr_repo = ecr.Repository(self, "ECRRep", repository_name="springboot-multiarch")
        
        # create code repo
        code = codecommit.Repository(self, "CodeRep", repository_name="springboot-multiarch")
        core.CfnOutput(self,"CodeCommitOutput", value=code.repository_clone_url_http)

        # create code builds
        arm_build = codebuild.PipelineProject(self, "ARMBuild",
                        build_spec=codebuild.BuildSpec.from_source_filename("cdk/pipeline/armbuild.yml"),
                        environment=codebuild.BuildEnvironment(
                            build_image=codebuild.LinuxBuildImage.AMAZON_LINUX_2_ARM,
                            privileged=True),
                        environment_variables=self.get_build_env_vars(ecr_repo))
        self.add_role_access_to_build(arm_build)
            
        amd_build = codebuild.PipelineProject(self, "AMDBuild",
                        build_spec=codebuild.BuildSpec.from_source_filename("cdk/pipeline/amdbuild.yml"),
                        environment=codebuild.BuildEnvironment(
                            build_image=codebuild.LinuxBuildImage.AMAZON_LINUX_2_3,
                            privileged=True),
                        environment_variables=self.get_build_env_vars(ecr_repo))
        self.add_role_access_to_build(amd_build)
        
        post_build = codebuild.PipelineProject(self, "PostBuild",
                        build_spec=codebuild.BuildSpec.from_source_filename("cdk/pipeline/post_build.yml"),
                        environment=codebuild.BuildEnvironment(
                            build_image=codebuild.LinuxBuildImage.AMAZON_LINUX_2_3,
                            privileged=True),
                        environment_variables=self.get_build_env_vars(ecr_repo))
        self.add_role_access_to_build(post_build)


        # create pipeline
        source_output = codepipeline.Artifact()
        arm_build_output = codepipeline.Artifact("ARMBuildOutput")
        amd_build_output = codepipeline.Artifact("AMDBuildOutput")
        post_build_output = codepipeline.Artifact("PostBuildOutput")

        codepipeline.Pipeline(self, "Pipeline",
            stages=[
                codepipeline.StageProps(stage_name="Source",
                    actions=[
                        codepipeline_actions.CodeCommitSourceAction(
                            action_name="CodeCommit_Source",
                            repository=code,
                            output=source_output)]),
                codepipeline.StageProps(stage_name="Build",
                    actions=[
                        codepipeline_actions.CodeBuildAction(
                            action_name="ARM_Build",
                            project=arm_build,
                            input=source_output,
                            outputs=[arm_build_output]),
                        codepipeline_actions.CodeBuildAction(
                            action_name="AMD_Build",
                            project=amd_build,
                            input=source_output,
                            outputs=[amd_build_output]),
                            ]),
                codepipeline.StageProps(stage_name="PostBuild",
                    actions=[
                        codepipeline_actions.CodeBuildAction(
                            action_name="Post_Build",
                            project=post_build,
                            input=source_output,
                            outputs=[post_build_output])
                            ]),
            ])