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