community / community.aws / 1.1.0 / module / aws_codepipeline Create or delete AWS CodePipelines | "added in version" 1.0.0 of community.aws" Authors: Stefan Horning (@stefanhorning) <horning@mediapeers.com>community.aws.aws_codepipeline (1.1.0) — module
Install with ansible-galaxy collection install community.aws:==1.1.0
collections: - name: community.aws version: 1.1.0
Create or delete a CodePipeline on AWS.
# Note: These examples do not set authentication details, see the AWS Guide for details. # Example for creating a pipeline for continuous deploy of Github code to an ECS cluster (container) - community.aws.aws_codepipeline: name: my_deploy_pipeline role_arn: arn:aws:iam::123456:role/AWS-CodePipeline-Service artifact_store: type: S3 location: my_s3_codepipline_bucket stages: - name: Get_source actions: - name: Git_pull actionTypeId: category: Source owner: ThirdParty provider: GitHub version: '1' outputArtifacts: - { name: my-app-source } configuration: Owner: mediapeers Repo: my_gh_repo PollForSourceChanges: 'true' Branch: master # Generate token like this: # https://docs.aws.amazon.com/codepipeline/latest/userguide/GitHub-rotate-personal-token-CLI.html # GH Link: https://github.com/settings/tokens OAuthToken: 'abc123def456' runOrder: 1 - name: Build actions: - name: CodeBuild actionTypeId: category: Build owner: AWS provider: CodeBuild version: '1' inputArtifacts: - { name: my-app-source } outputArtifacts: - { name: my-app-build } configuration: # A project with that name needs to be setup on AWS CodeBuild already (use code_build module). ProjectName: codebuild-project-name runOrder: 1 - name: ECS_deploy actions: - name: ECS_deploy actionTypeId: category: Deploy owner: AWS provider: ECS version: '1' inputArtifacts: - { name: vod-api-app-build } configuration: # an ECS cluster with that name needs to be setup on AWS ECS already (use ecs_cluster and ecs_service module) ClusterName: ecs-cluster-name ServiceName: ecs-cluster-service-name FileName: imagedefinitions.json region: us-east-1 state: present
name: description: - Name of the pipeline required: true type: str state: choices: - present - absent default: present description: - Create or remove code pipeline type: str region: aliases: - aws_region - ec2_region description: - The AWS region to use. - For global services such as IAM, Route53 and CloudFront, I(region) is ignored. - The C(AWS_REGION) or C(EC2_REGION) environment variables may also be used. - See the Amazon AWS documentation for more information U(http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region). - The C(ec2_region) alias has been deprecated and will be removed in a release after 2024-12-01 - Support for the C(EC2_REGION) environment variable has been deprecated and will be removed in a release after 2024-12-01. type: str stages: description: - List of stages to perform in the CodePipeline. List of dictionaries containing name and actions for each stage. elements: dict required: true suboptions: actions: description: - List of action configurations for that stage. - 'See the boto3 documentation for full documentation of suboptions:' - U(https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/codepipeline.html#CodePipeline.Client.create_pipeline) elements: dict type: list name: description: - Name of the stage (step) in the codepipeline type: str type: list profile: aliases: - aws_profile description: - A named AWS profile to use for authentication. - See the AWS documentation for more information about named profiles U(https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html). - The C(AWS_PROFILE) environment variable may also be used. - The I(profile) option is mutually exclusive with the I(aws_access_key), I(aws_secret_key) and I(security_token) options. type: str version: description: - Version number of the pipeline. This number is automatically incremented when a pipeline is updated. required: false type: int role_arn: description: - ARN of the IAM role to use when executing the pipeline required: true type: str access_key: aliases: - aws_access_key_id - aws_access_key - ec2_access_key description: - AWS access key ID. - See the AWS documentation for more information about access tokens U(https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys). - The C(AWS_ACCESS_KEY_ID), C(AWS_ACCESS_KEY) or C(EC2_ACCESS_KEY) environment variables may also be used in decreasing order of preference. - The I(aws_access_key) and I(profile) options are mutually exclusive. - The I(aws_access_key_id) alias was added in release 5.1.0 for consistency with the AWS botocore SDK. - The I(ec2_access_key) alias has been deprecated and will be removed in a release after 2024-12-01. - Support for the C(EC2_ACCESS_KEY) environment variable has been deprecated and will be removed in a release after 2024-12-01. type: str aws_config: description: - A dictionary to modify the botocore configuration. - Parameters can be found in the AWS documentation U(https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config). type: dict secret_key: aliases: - aws_secret_access_key - aws_secret_key - ec2_secret_key description: - AWS secret access key. - See the AWS documentation for more information about access tokens U(https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys). - The C(AWS_SECRET_ACCESS_KEY), C(AWS_SECRET_KEY), or C(EC2_SECRET_KEY) environment variables may also be used in decreasing order of preference. - The I(secret_key) and I(profile) options are mutually exclusive. - The I(aws_secret_access_key) alias was added in release 5.1.0 for consistency with the AWS botocore SDK. - The I(ec2_secret_key) alias has been deprecated and will be removed in a release after 2024-12-01. - Support for the C(EC2_SECRET_KEY) environment variable has been deprecated and will be removed in a release after 2024-12-01. type: str endpoint_url: aliases: - ec2_url - aws_endpoint_url - s3_url description: - URL to connect to instead of the default AWS endpoints. While this can be used to connection to other AWS-compatible services the amazon.aws and community.aws collections are only tested against AWS. - The C(AWS_URL) or C(EC2_URL) environment variables may also be used, in decreasing order of preference. - The I(ec2_url) and I(s3_url) aliases have been deprecated and will be removed in a release after 2024-12-01. - Support for the C(EC2_URL) environment variable has been deprecated and will be removed in a release after 2024-12-01. type: str aws_ca_bundle: description: - The location of a CA Bundle to use when validating SSL certificates. - The C(AWS_CA_BUNDLE) environment variable may also be used. type: path session_token: aliases: - aws_session_token - security_token - aws_security_token - access_token description: - AWS STS session token for use with temporary credentials. - See the AWS documentation for more information about access tokens U(https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys). - The C(AWS_SESSION_TOKEN), C(AWS_SECURITY_TOKEN) or C(EC2_SECURITY_TOKEN) environment variables may also be used in decreasing order of preference. - The I(security_token) and I(profile) options are mutually exclusive. - Aliases I(aws_session_token) and I(session_token) were added in release 3.2.0, with the parameter being renamed from I(security_token) to I(session_token) in release 6.0.0. - The I(security_token), I(aws_security_token), and I(access_token) aliases have been deprecated and will be removed in a release after 2024-12-01. - Support for the C(EC2_SECRET_KEY) and C(AWS_SECURITY_TOKEN) environment variables has been deprecated and will be removed in a release after 2024-12-01. type: str artifact_store: description: - Location information where artifacts are stored (on S3). Dictionary with fields type and location. required: true suboptions: location: description: - Bucket name for artifacts. type: str type: description: - Type of the artifacts storage (only 'S3' is currently supported). type: str type: dict validate_certs: default: true description: - When set to C(false), SSL certificates will not be validated for communication with the AWS APIs. - Setting I(validate_certs=false) is strongly discouraged, as an alternative, consider setting I(aws_ca_bundle) instead. type: bool debug_botocore_endpoint_logs: default: false description: - Use a C(botocore.endpoint) logger to parse the unique (rather than total) C("resource:action") API calls made during a task, outputing the set to the resource_actions key in the task results. Use the C(aws_resource_action) callback to output to total list made during a playbook. - The C(ANSIBLE_DEBUG_BOTOCORE_LOGS) environment variable may also be used. type: bool
pipeline: contains: artifact_store: contains: encryption_key: description: The encryption key used to encrypt the artifacts store, such as an AWS KMS key. returned: when configured type: str location: description: The location of the artifacts storage (s3 bucket name) returned: always sample: my_s3_codepipline_bucket type: str type: description: The type of the artifacts store, such as S3 returned: always sample: S3 type: str description: Information about where the build artifacts are stored returned: always type: complex name: description: Name of the CodePipeline returned: always sample: my_deploy_pipeline type: str role_arn: description: ARN of the IAM role attached to the code pipeline returned: always sample: arn:aws:iam::123123123:role/codepipeline-service-role type: str stages: description: List of stages configured for this pipeline returned: always type: list version: description: The version number of the pipeline. This number is auto incremented when pipeline params are changed. returned: always type: int description: Returns the dictionary describing the code pipeline configuration. returned: success type: complex