def get_stage_actions()

in infra/src/stages/generic_stage_codebuild.py [0:0]


    def get_stage_actions(self, scope: core.Construct, stage_name: str,
                          source_artifacts: List[Artifact], buildspec_file, build_image) -> (
            StageActionList, VariableNamespace):
        code_build_project = aws_codebuild.PipelineProject(
            scope,
            "{}CodeBuild".format(stage_name),
            environment=aws_codebuild.BuildEnvironment(
                build_image=aws_codebuild.LinuxBuildImage.from_code_build_image_id(
                    build_image),
                privileged=True),
            build_spec=aws_codebuild.BuildSpec.from_source_filename(buildspec_file)
        )

        code_build_variables_namespace = "{}Variables".format(stage_name)

        build_artifact = aws_codepipeline.Artifact("{}Artifacts".format(stage_name))

        codebuild_action = actions.CodeBuildAction(outputs=[build_artifact],
                                                   action_name=f"{stage_name}",
                                                   project=code_build_project,
                                                   input=source_artifacts[0],
                                                   type=actions.CodeBuildActionType.BUILD,
                                                   run_order=1,
                                                   # role=build_project.role,
                                                   variables_namespace=code_build_variables_namespace)

        return [codebuild_action], code_build_variables_namespace