AWSCDK中的aws-codepipeline/Pipeline与pipelines/CodePipelines有什么区别?
创始人
2024-09-24 03:01:31
0

aws-codepipeline/Pipeline是AWS CDK中的高级抽象类,用于创建AWS CodePipeline管道。而pipelines/CodePipelines是AWS CDK中的低级抽象类,可用于构建与自定义AWS CodePipeline管道。

下面是使用aws-codepipeline/Pipeline创建AWS CodePipeline管道的示例代码:

from aws_cdk import (
    aws_codepipeline as codepipeline,
    aws_codepipeline_actions as actions,
    aws_s3 as s3,
    core,
)


class MyStack(core.Stack):
    def __init__(self, scope: core.Construct, id: str, **kwargs) -> None:
        super().__init__(scope, id, **kwargs)

        source_artifact = codepipeline.Artifact()
        output_artifact = codepipeline.Artifact()

        # Create an S3 bucket to hold the source code
        source_bucket = s3.Bucket(
            self, "SourceBucket",
            versioned=True
        )

        # Create the CodePipeline pipeline
        pipeline = codepipeline.Pipeline(
            self, "Pipeline",
            pipeline_name="MyPipeline"
        )

        # Define pipeline stages
        source_stage = pipeline.add_stage(
            stage_name="Source",
            actions=[
                actions.S3SourceAction(
                    action_name="S3Source",
                    bucket=source_bucket,
                    bucket_key="src.zip",
                    output=source_artifact
                )
            ]
        )

        build_stage = pipeline.add_stage(
            stage_name="Build",
            actions=[
                actions.CodeBuildAction(
                    action_name="CodeBuild",
                    project=codebuild_project,
                    input=source_artifact,
                    outputs=[output_artifact]
                )
            ]
        )

        # Add a manual approval action
        approval_stage = pipeline.add_stage(
            stage_name="Approval",
            actions=[
                actions.ManualApprovalAction(
                    action_name="Approval"
                )
            ]
        )

        # Define the pipeline's deployment stage
        deploy_stage = pipeline.add_stage(
            stage_name="Deploy",
            actions=[
                actions.CloudFormationCreateUpdateStackAction(
                    action_name="Deploy",
                    stack_name="MyStack",
                    template_path=output_artifact.at_path("template.yaml"),
                    admin_permissions=True
                )
            ]
        )

下面是使用pipelines/CodePipelines创建AWS CodePipeline管道的示例代码:

from aws_cdk import (
    aws_cloudformation as cfn,
    aws_lambda as lambda_,
    aws_events as events,
    aws_events_targets as targets,
    aws_codepipeline as codepipeline,
    aws_codepipeline_actions as actions,
    aws_iam as iam,
    aws_codebuild as codebuild,
    aws_s3_assets as s3_assets,
    aws_s3 as s3,
    core,
)


class MyStack(core.Stack):
    def __init__(self, scope: core.Construct, id: str, **kwargs) -> None:
        super().__init__(scope, id, **kwargs)

        source_artifact = codepipeline.Artifact()
        output_artifact = codepipeline.Artifact()

        pipeline = codepipeline.Pipeline(
            self, "Pipeline",
            pipeline_name="MyPipeline"
        )

        # Add a source stage to the pipeline
        source_stage = pipeline.add_stage(
            stage_name="Source"
        )

        # Create an S3 bucket to hold the source code
        source_bucket = s3.Bucket(
            self, "SourceBucket",
            versioned=True
        )

        # Add an S3 source action to the pipeline
        source_action = actions.S3SourceAction(
            action_name="S

相关内容

热门资讯

五分钟绝活!潮友会鱼虾蟹怎么发... 五分钟绝活!潮友会鱼虾蟹怎么发现软件控制,四川家园游戏辅助,教你攻略(有挂解密)-哔哩哔哩1、操作简...
第九分钟策略!广西友乐app辅... 第九分钟策略!广西友乐app辅助工具,湖北卡五星技能,普及教程(有挂讲解)-哔哩哔哩1、全新机制【广...
4分钟要领!八闽掌上辅助软件,... 4分钟要领!八闽掌上辅助软件,对战互娱有辅助吗,揭秘攻略(有挂方针)-哔哩哔哩1、完成八闽掌上辅助软...
3分钟机巧!财神十三章辅助软件... 3分钟机巧!财神十三章辅助软件,指尖捕鱼bgm,可靠教程(有挂助手)-哔哩哔哩;1、财神十三章辅助软...
七分钟模块!胡易决胜麻架辅助,... 七分钟模块!胡易决胜麻架辅助,情怀宜春辅助挂定制交易平台,玩家教你(有挂秘籍)-哔哩哔哩1、玩家可以...
3分钟烘培!牵手辅助神器下载,... 3分钟烘培!牵手辅助神器下载,新海贝之城app破解,教你教程(有挂总结)-哔哩哔哩新海贝之城app破...
第七分钟课程!悠闲游戏辅助,牛... 第七分钟课程!悠闲游戏辅助,牛总管手游辅助,爆料教程(有挂存在)-哔哩哔哩亲,关键说明,牛总管手游辅...
3分钟演示!麻雀智能辅助软件,... 3分钟演示!麻雀智能辅助软件,传送屋激k有挂吗,力荐教程(今日头条)-哔哩哔哩1、每一步都需要思考,...
第8分钟经验!好友赣南辅助是真... 第8分钟经验!好友赣南辅助是真的吗,蛮王大厅辅助教程,分享教程(有挂教学)-哔哩哔哩1、起透看视 好...
九分钟法门!中至赣牌圈五十k黑... 九分钟法门!中至赣牌圈五十k黑科技,开心泉州小程序有挂吗,力荐教程(有挂解密)-哔哩哔哩小薇(透视辅...