# WARNING ABOUT GENERATED CODE # # This file is generated. See the contributing guide for more information: # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md # # WARNING ABOUT GENERATED CODE require 'seahorse/client/plugins/content_length.rb' require 'aws-sdk-core/plugins/credentials_configuration.rb' require 'aws-sdk-core/plugins/logging.rb' require 'aws-sdk-core/plugins/param_converter.rb' require 'aws-sdk-core/plugins/param_validator.rb' require 'aws-sdk-core/plugins/user_agent.rb' require 'aws-sdk-core/plugins/helpful_socket_errors.rb' require 'aws-sdk-core/plugins/retry_errors.rb' require 'aws-sdk-core/plugins/global_configuration.rb' require 'aws-sdk-core/plugins/regional_endpoint.rb' require 'aws-sdk-core/plugins/response_paging.rb' require 'aws-sdk-core/plugins/stub_responses.rb' require 'aws-sdk-core/plugins/idempotency_token.rb' require 'aws-sdk-core/plugins/jsonvalue_converter.rb' require 'aws-sdk-core/plugins/signature_v4.rb' require 'aws-sdk-core/plugins/protocols/json_rpc.rb' Aws::Plugins::GlobalConfiguration.add_identifier(:codepipeline) module Aws::CodePipeline class Client < Seahorse::Client::Base include Aws::ClientStubs @identifier = :codepipeline set_api(ClientApi::API) add_plugin(Seahorse::Client::Plugins::ContentLength) add_plugin(Aws::Plugins::CredentialsConfiguration) add_plugin(Aws::Plugins::Logging) add_plugin(Aws::Plugins::ParamConverter) add_plugin(Aws::Plugins::ParamValidator) add_plugin(Aws::Plugins::UserAgent) add_plugin(Aws::Plugins::HelpfulSocketErrors) add_plugin(Aws::Plugins::RetryErrors) add_plugin(Aws::Plugins::GlobalConfiguration) add_plugin(Aws::Plugins::RegionalEndpoint) add_plugin(Aws::Plugins::ResponsePaging) add_plugin(Aws::Plugins::StubResponses) add_plugin(Aws::Plugins::IdempotencyToken) add_plugin(Aws::Plugins::JsonvalueConverter) add_plugin(Aws::Plugins::SignatureV4) add_plugin(Aws::Plugins::Protocols::JsonRpc) # @option options [required, Aws::CredentialProvider] :credentials # Your AWS credentials. This can be an instance of any one of the # following classes: # # * `Aws::Credentials` - Used for configuring static, non-refreshing # credentials. # # * `Aws::InstanceProfileCredentials` - Used for loading credentials # from an EC2 IMDS on an EC2 instance. # # * `Aws::SharedCredentials` - Used for loading credentials from a # shared file, such as `~/.aws/config`. # # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role. # # When `:credentials` are not configured directly, the following # locations will be searched for credentials: # # * `Aws.config[:credentials]` # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options. # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'] # * `~/.aws/credentials` # * `~/.aws/config` # * EC2 IMDS instance profile - When used by default, the timeouts are # very aggressive. Construct and pass an instance of # `Aws::InstanceProfileCredentails` to enable retries and extended # timeouts. # # @option options [required, String] :region # The AWS region to connect to. The configured `:region` is # used to determine the service `:endpoint`. When not passed, # a default `:region` is search for in the following locations: # # * `Aws.config[:region]` # * `ENV['AWS_REGION']` # * `ENV['AMAZON_REGION']` # * `ENV['AWS_DEFAULT_REGION']` # * `~/.aws/credentials` # * `~/.aws/config` # # @option options [String] :access_key_id # # @option options [Boolean] :convert_params (true) # When `true`, an attempt is made to coerce request parameters into # the required types. # # @option options [String] :endpoint # The client endpoint is normally constructed from the `:region` # option. You should only configure an `:endpoint` when connecting # to test endpoints. This should be avalid HTTP(S) URI. # # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default) # The log formatter. # # @option options [Symbol] :log_level (:info) # The log level to send messages to the `:logger` at. # # @option options [Logger] :logger # The Logger instance to send log messages to. If this option # is not set, logging will be disabled. # # @option options [String] :profile ("default") # Used when loading credentials from the shared credentials file # at HOME/.aws/credentials. When not specified, 'default' is used. # # @option options [Float] :retry_base_delay (0.3) # The base delay in seconds used by the default backoff function. # # @option options [Symbol] :retry_jitter (:none) # A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number. # # @see https://www.awsarchitectureblog.com/2015/03/backoff.html # # @option options [Integer] :retry_limit (3) # The maximum number of times to retry failed requests. Only # ~ 500 level server errors and certain ~ 400 level client errors # are retried. Generally, these are throttling errors, data # checksum errors, networking errors, timeout errors and auth # errors from expired credentials. # # @option options [Integer] :retry_max_delay (0) # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function. # # @option options [String] :secret_access_key # # @option options [String] :session_token # # @option options [Boolean] :simple_json (false) # Disables request parameter conversion, validation, and formatting. # Also disable response data type conversions. This option is useful # when you want to ensure the highest level of performance by # avoiding overhead of walking request parameters and response data # structures. # # When `:simple_json` is enabled, the request parameters hash must # be formatted exactly as the DynamoDB API expects. # # @option options [Boolean] :stub_responses (false) # Causes the client to return stubbed responses. By default # fake responses are generated and returned. You can specify # the response data to return or errors to raise by calling # {ClientStubs#stub_responses}. See {ClientStubs} for more information. # # ** Please note ** When response stubbing is enabled, no HTTP # requests are made, and retries are disabled. # # @option options [Boolean] :validate_params (true) # When `true`, request parameters are validated before # sending the request. # def initialize(*args) super end # @!group API Operations # Returns information about a specified job and whether that job has # been received by the job worker. Only used for custom actions. # # @option params [required, String] :job_id # The unique system-generated ID of the job for which you want to # confirm receipt. # # @option params [required, String] :nonce # A system-generated random number that AWS CodePipeline uses to ensure # that the job is being worked on by only one job worker. Get this # number from the response of the PollForJobs request that returned this # job. # # @return [Types::AcknowledgeJobOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::AcknowledgeJobOutput#status #status} => String # # @example Request syntax with placeholder values # # resp = client.acknowledge_job({ # job_id: "JobId", # required # nonce: "Nonce", # required # }) # # @example Response structure # # resp.status #=> String, one of "Created", "Queued", "Dispatched", "InProgress", "TimedOut", "Succeeded", "Failed" # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/AcknowledgeJob AWS API Documentation # # @overload acknowledge_job(params = {}) # @param [Hash] params ({}) def acknowledge_job(params = {}, options = {}) req = build_request(:acknowledge_job, params) req.send_request(options) end # Confirms a job worker has received the specified job. Only used for # partner actions. # # @option params [required, String] :job_id # The unique system-generated ID of the job. # # @option params [required, String] :nonce # A system-generated random number that AWS CodePipeline uses to ensure # that the job is being worked on by only one job worker. Get this # number from the response to a GetThirdPartyJobDetails request. # # @option params [required, String] :client_token # The clientToken portion of the clientId and clientToken pair used to # verify that the calling entity is allowed access to the job and its # details. # # @return [Types::AcknowledgeThirdPartyJobOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::AcknowledgeThirdPartyJobOutput#status #status} => String # # @example Request syntax with placeholder values # # resp = client.acknowledge_third_party_job({ # job_id: "ThirdPartyJobId", # required # nonce: "Nonce", # required # client_token: "ClientToken", # required # }) # # @example Response structure # # resp.status #=> String, one of "Created", "Queued", "Dispatched", "InProgress", "TimedOut", "Succeeded", "Failed" # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/AcknowledgeThirdPartyJob AWS API Documentation # # @overload acknowledge_third_party_job(params = {}) # @param [Hash] params ({}) def acknowledge_third_party_job(params = {}, options = {}) req = build_request(:acknowledge_third_party_job, params) req.send_request(options) end # Creates a new custom action that can be used in all pipelines # associated with the AWS account. Only used for custom actions. # # @option params [required, String] :category # The category of the custom action, such as a build action or a test # action. # # Although Source and Approval are listed as valid values, they are not # currently functional. These values are reserved for future use. # # # # @option params [required, String] :provider # The provider of the service used in the custom action, such as AWS # CodeDeploy. # # @option params [required, String] :version # The version identifier of the custom action. # # @option params [Types::ActionTypeSettings] :settings # Returns information about the settings for an action type. # # @option params [Array] :configuration_properties # The configuration properties for the custom action. # # You can refer to a name in the configuration properties of the custom # action within the URL templates by following the format of # \\\{Config:name\\}, as long as the configuration property is both # required and not secret. For more information, see [Create a Custom # Action for a Pipeline][1]. # # # # # # [1]: http://docs.aws.amazon.com/codepipeline/latest/userguide/how-to-create-custom-action.html # # @option params [required, Types::ArtifactDetails] :input_artifact_details # The details of the input artifact for the action, such as its commit # ID. # # @option params [required, Types::ArtifactDetails] :output_artifact_details # The details of the output artifact of the action, such as its commit # ID. # # @return [Types::CreateCustomActionTypeOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreateCustomActionTypeOutput#action_type #action_type} => Types::ActionType # # @example Request syntax with placeholder values # # resp = client.create_custom_action_type({ # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval # provider: "ActionProvider", # required # version: "Version", # required # settings: { # third_party_configuration_url: "Url", # entity_url_template: "UrlTemplate", # execution_url_template: "UrlTemplate", # revision_url_template: "UrlTemplate", # }, # configuration_properties: [ # { # name: "ActionConfigurationKey", # required # required: false, # required # key: false, # required # secret: false, # required # queryable: false, # description: "Description", # type: "String", # accepts String, Number, Boolean # }, # ], # input_artifact_details: { # required # minimum_count: 1, # required # maximum_count: 1, # required # }, # output_artifact_details: { # required # minimum_count: 1, # required # maximum_count: 1, # required # }, # }) # # @example Response structure # # resp.action_type.id.category #=> String, one of "Source", "Build", "Deploy", "Test", "Invoke", "Approval" # resp.action_type.id.owner #=> String, one of "AWS", "ThirdParty", "Custom" # resp.action_type.id.provider #=> String # resp.action_type.id.version #=> String # resp.action_type.settings.third_party_configuration_url #=> String # resp.action_type.settings.entity_url_template #=> String # resp.action_type.settings.execution_url_template #=> String # resp.action_type.settings.revision_url_template #=> String # resp.action_type.action_configuration_properties #=> Array # resp.action_type.action_configuration_properties[0].name #=> String # resp.action_type.action_configuration_properties[0].required #=> Boolean # resp.action_type.action_configuration_properties[0].key #=> Boolean # resp.action_type.action_configuration_properties[0].secret #=> Boolean # resp.action_type.action_configuration_properties[0].queryable #=> Boolean # resp.action_type.action_configuration_properties[0].description #=> String # resp.action_type.action_configuration_properties[0].type #=> String, one of "String", "Number", "Boolean" # resp.action_type.input_artifact_details.minimum_count #=> Integer # resp.action_type.input_artifact_details.maximum_count #=> Integer # resp.action_type.output_artifact_details.minimum_count #=> Integer # resp.action_type.output_artifact_details.maximum_count #=> Integer # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/CreateCustomActionType AWS API Documentation # # @overload create_custom_action_type(params = {}) # @param [Hash] params ({}) def create_custom_action_type(params = {}, options = {}) req = build_request(:create_custom_action_type, params) req.send_request(options) end # Creates a pipeline. # # @option params [required, Types::PipelineDeclaration] :pipeline # Represents the structure of actions and stages to be performed in the # pipeline. # # @return [Types::CreatePipelineOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreatePipelineOutput#pipeline #pipeline} => Types::PipelineDeclaration # # @example Request syntax with placeholder values # # resp = client.create_pipeline({ # pipeline: { # required # name: "PipelineName", # required # role_arn: "RoleArn", # required # artifact_store: { # required # type: "S3", # required, accepts S3 # location: "ArtifactStoreLocation", # required # encryption_key: { # id: "EncryptionKeyId", # required # type: "KMS", # required, accepts KMS # }, # }, # stages: [ # required # { # name: "StageName", # required # blockers: [ # { # name: "BlockerName", # required # type: "Schedule", # required, accepts Schedule # }, # ], # actions: [ # required # { # name: "ActionName", # required # action_type_id: { # required # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval # owner: "AWS", # required, accepts AWS, ThirdParty, Custom # provider: "ActionProvider", # required # version: "Version", # required # }, # run_order: 1, # configuration: { # "ActionConfigurationKey" => "ActionConfigurationValue", # }, # output_artifacts: [ # { # name: "ArtifactName", # required # }, # ], # input_artifacts: [ # { # name: "ArtifactName", # required # }, # ], # role_arn: "RoleArn", # }, # ], # }, # ], # version: 1, # }, # }) # # @example Response structure # # resp.pipeline.name #=> String # resp.pipeline.role_arn #=> String # resp.pipeline.artifact_store.type #=> String, one of "S3" # resp.pipeline.artifact_store.location #=> String # resp.pipeline.artifact_store.encryption_key.id #=> String # resp.pipeline.artifact_store.encryption_key.type #=> String, one of "KMS" # resp.pipeline.stages #=> Array # resp.pipeline.stages[0].name #=> String # resp.pipeline.stages[0].blockers #=> Array # resp.pipeline.stages[0].blockers[0].name #=> String # resp.pipeline.stages[0].blockers[0].type #=> String, one of "Schedule" # resp.pipeline.stages[0].actions #=> Array # resp.pipeline.stages[0].actions[0].name #=> String # resp.pipeline.stages[0].actions[0].action_type_id.category #=> String, one of "Source", "Build", "Deploy", "Test", "Invoke", "Approval" # resp.pipeline.stages[0].actions[0].action_type_id.owner #=> String, one of "AWS", "ThirdParty", "Custom" # resp.pipeline.stages[0].actions[0].action_type_id.provider #=> String # resp.pipeline.stages[0].actions[0].action_type_id.version #=> String # resp.pipeline.stages[0].actions[0].run_order #=> Integer # resp.pipeline.stages[0].actions[0].configuration #=> Hash # resp.pipeline.stages[0].actions[0].configuration["ActionConfigurationKey"] #=> String # resp.pipeline.stages[0].actions[0].output_artifacts #=> Array # resp.pipeline.stages[0].actions[0].output_artifacts[0].name #=> String # resp.pipeline.stages[0].actions[0].input_artifacts #=> Array # resp.pipeline.stages[0].actions[0].input_artifacts[0].name #=> String # resp.pipeline.stages[0].actions[0].role_arn #=> String # resp.pipeline.version #=> Integer # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/CreatePipeline AWS API Documentation # # @overload create_pipeline(params = {}) # @param [Hash] params ({}) def create_pipeline(params = {}, options = {}) req = build_request(:create_pipeline, params) req.send_request(options) end # Marks a custom action as deleted. PollForJobs for the custom action # will fail after the action is marked for deletion. Only used for # custom actions. # # To re-create a custom action after it has been deleted you must use a # string in the version field that has never been used before. This # string can be an incremented version number, for example. To restore a # deleted custom action, use a JSON file that is identical to the # deleted action, including the original string in the version field. # # @option params [required, String] :category # The category of the custom action that you want to delete, such as # source or deploy. # # @option params [required, String] :provider # The provider of the service used in the custom action, such as AWS # CodeDeploy. # # @option params [required, String] :version # The version of the custom action to delete. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_custom_action_type({ # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval # provider: "ActionProvider", # required # version: "Version", # required # }) # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeleteCustomActionType AWS API Documentation # # @overload delete_custom_action_type(params = {}) # @param [Hash] params ({}) def delete_custom_action_type(params = {}, options = {}) req = build_request(:delete_custom_action_type, params) req.send_request(options) end # Deletes the specified pipeline. # # @option params [required, String] :name # The name of the pipeline to be deleted. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_pipeline({ # name: "PipelineName", # required # }) # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeletePipeline AWS API Documentation # # @overload delete_pipeline(params = {}) # @param [Hash] params ({}) def delete_pipeline(params = {}, options = {}) req = build_request(:delete_pipeline, params) req.send_request(options) end # Deletes a previously created webhook by name. Deleting the webhook # stops AWS CodePipeline from starting a pipeline every time an external # event occurs. The API will return successfully when trying to delete a # webhook that is already deleted. If a deleted webhook is re-created by # calling PutWebhook with the same name, it will have a different URL. # # @option params [required, String] :name # The name of the webhook you want to delete. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.delete_webhook({ # name: "WebhookName", # required # }) # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeleteWebhook AWS API Documentation # # @overload delete_webhook(params = {}) # @param [Hash] params ({}) def delete_webhook(params = {}, options = {}) req = build_request(:delete_webhook, params) req.send_request(options) end # Removes the connection between the webhook that was created by # CodePipeline and the external tool with events to be detected. # Currently only supported for webhooks that target an action type of # GitHub. # # @option params [String] :webhook_name # The name of the webhook you want to deregister. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.deregister_webhook_with_third_party({ # webhook_name: "WebhookName", # }) # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeregisterWebhookWithThirdParty AWS API Documentation # # @overload deregister_webhook_with_third_party(params = {}) # @param [Hash] params ({}) def deregister_webhook_with_third_party(params = {}, options = {}) req = build_request(:deregister_webhook_with_third_party, params) req.send_request(options) end # Prevents artifacts in a pipeline from transitioning to the next stage # in the pipeline. # # @option params [required, String] :pipeline_name # The name of the pipeline in which you want to disable the flow of # artifacts from one stage to another. # # @option params [required, String] :stage_name # The name of the stage where you want to disable the inbound or # outbound transition of artifacts. # # @option params [required, String] :transition_type # Specifies whether artifacts will be prevented from transitioning into # the stage and being processed by the actions in that stage (inbound), # or prevented from transitioning from the stage after they have been # processed by the actions in that stage (outbound). # # @option params [required, String] :reason # The reason given to the user why a stage is disabled, such as waiting # for manual approval or manual tests. This message is displayed in the # pipeline console UI. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.disable_stage_transition({ # pipeline_name: "PipelineName", # required # stage_name: "StageName", # required # transition_type: "Inbound", # required, accepts Inbound, Outbound # reason: "DisabledReason", # required # }) # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DisableStageTransition AWS API Documentation # # @overload disable_stage_transition(params = {}) # @param [Hash] params ({}) def disable_stage_transition(params = {}, options = {}) req = build_request(:disable_stage_transition, params) req.send_request(options) end # Enables artifacts in a pipeline to transition to a stage in a # pipeline. # # @option params [required, String] :pipeline_name # The name of the pipeline in which you want to enable the flow of # artifacts from one stage to another. # # @option params [required, String] :stage_name # The name of the stage where you want to enable the transition of # artifacts, either into the stage (inbound) or from that stage to the # next stage (outbound). # # @option params [required, String] :transition_type # Specifies whether artifacts will be allowed to enter the stage and be # processed by the actions in that stage (inbound) or whether # already-processed artifacts will be allowed to transition to the next # stage (outbound). # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.enable_stage_transition({ # pipeline_name: "PipelineName", # required # stage_name: "StageName", # required # transition_type: "Inbound", # required, accepts Inbound, Outbound # }) # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/EnableStageTransition AWS API Documentation # # @overload enable_stage_transition(params = {}) # @param [Hash] params ({}) def enable_stage_transition(params = {}, options = {}) req = build_request(:enable_stage_transition, params) req.send_request(options) end # Returns information about a job. Only used for custom actions. # # When this API is called, AWS CodePipeline returns temporary # credentials for the Amazon S3 bucket used to store artifacts for the # pipeline, if the action requires access to that Amazon S3 bucket for # input or output artifacts. Additionally, this API returns any secret # values defined for the action. # # @option params [required, String] :job_id # The unique system-generated ID for the job. # # @return [Types::GetJobDetailsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetJobDetailsOutput#job_details #job_details} => Types::JobDetails # # @example Request syntax with placeholder values # # resp = client.get_job_details({ # job_id: "JobId", # required # }) # # @example Response structure # # resp.job_details.id #=> String # resp.job_details.data.action_type_id.category #=> String, one of "Source", "Build", "Deploy", "Test", "Invoke", "Approval" # resp.job_details.data.action_type_id.owner #=> String, one of "AWS", "ThirdParty", "Custom" # resp.job_details.data.action_type_id.provider #=> String # resp.job_details.data.action_type_id.version #=> String # resp.job_details.data.action_configuration.configuration #=> Hash # resp.job_details.data.action_configuration.configuration["ActionConfigurationKey"] #=> String # resp.job_details.data.pipeline_context.pipeline_name #=> String # resp.job_details.data.pipeline_context.stage.name #=> String # resp.job_details.data.pipeline_context.action.name #=> String # resp.job_details.data.input_artifacts #=> Array # resp.job_details.data.input_artifacts[0].name #=> String # resp.job_details.data.input_artifacts[0].revision #=> String # resp.job_details.data.input_artifacts[0].location.type #=> String, one of "S3" # resp.job_details.data.input_artifacts[0].location.s3_location.bucket_name #=> String # resp.job_details.data.input_artifacts[0].location.s3_location.object_key #=> String # resp.job_details.data.output_artifacts #=> Array # resp.job_details.data.output_artifacts[0].name #=> String # resp.job_details.data.output_artifacts[0].revision #=> String # resp.job_details.data.output_artifacts[0].location.type #=> String, one of "S3" # resp.job_details.data.output_artifacts[0].location.s3_location.bucket_name #=> String # resp.job_details.data.output_artifacts[0].location.s3_location.object_key #=> String # resp.job_details.data.artifact_credentials.access_key_id #=> String # resp.job_details.data.artifact_credentials.secret_access_key #=> String # resp.job_details.data.artifact_credentials.session_token #=> String # resp.job_details.data.continuation_token #=> String # resp.job_details.data.encryption_key.id #=> String # resp.job_details.data.encryption_key.type #=> String, one of "KMS" # resp.job_details.account_id #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetJobDetails AWS API Documentation # # @overload get_job_details(params = {}) # @param [Hash] params ({}) def get_job_details(params = {}, options = {}) req = build_request(:get_job_details, params) req.send_request(options) end # Returns the metadata, structure, stages, and actions of a pipeline. # Can be used to return the entire structure of a pipeline in JSON # format, which can then be modified and used to update the pipeline # structure with UpdatePipeline. # # @option params [required, String] :name # The name of the pipeline for which you want to get information. # Pipeline names must be unique under an Amazon Web Services (AWS) user # account. # # @option params [Integer] :version # The version number of the pipeline. If you do not specify a version, # defaults to the most current version. # # @return [Types::GetPipelineOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetPipelineOutput#pipeline #pipeline} => Types::PipelineDeclaration # * {Types::GetPipelineOutput#metadata #metadata} => Types::PipelineMetadata # # @example Request syntax with placeholder values # # resp = client.get_pipeline({ # name: "PipelineName", # required # version: 1, # }) # # @example Response structure # # resp.pipeline.name #=> String # resp.pipeline.role_arn #=> String # resp.pipeline.artifact_store.type #=> String, one of "S3" # resp.pipeline.artifact_store.location #=> String # resp.pipeline.artifact_store.encryption_key.id #=> String # resp.pipeline.artifact_store.encryption_key.type #=> String, one of "KMS" # resp.pipeline.stages #=> Array # resp.pipeline.stages[0].name #=> String # resp.pipeline.stages[0].blockers #=> Array # resp.pipeline.stages[0].blockers[0].name #=> String # resp.pipeline.stages[0].blockers[0].type #=> String, one of "Schedule" # resp.pipeline.stages[0].actions #=> Array # resp.pipeline.stages[0].actions[0].name #=> String # resp.pipeline.stages[0].actions[0].action_type_id.category #=> String, one of "Source", "Build", "Deploy", "Test", "Invoke", "Approval" # resp.pipeline.stages[0].actions[0].action_type_id.owner #=> String, one of "AWS", "ThirdParty", "Custom" # resp.pipeline.stages[0].actions[0].action_type_id.provider #=> String # resp.pipeline.stages[0].actions[0].action_type_id.version #=> String # resp.pipeline.stages[0].actions[0].run_order #=> Integer # resp.pipeline.stages[0].actions[0].configuration #=> Hash # resp.pipeline.stages[0].actions[0].configuration["ActionConfigurationKey"] #=> String # resp.pipeline.stages[0].actions[0].output_artifacts #=> Array # resp.pipeline.stages[0].actions[0].output_artifacts[0].name #=> String # resp.pipeline.stages[0].actions[0].input_artifacts #=> Array # resp.pipeline.stages[0].actions[0].input_artifacts[0].name #=> String # resp.pipeline.stages[0].actions[0].role_arn #=> String # resp.pipeline.version #=> Integer # resp.metadata.pipeline_arn #=> String # resp.metadata.created #=> Time # resp.metadata.updated #=> Time # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetPipeline AWS API Documentation # # @overload get_pipeline(params = {}) # @param [Hash] params ({}) def get_pipeline(params = {}, options = {}) req = build_request(:get_pipeline, params) req.send_request(options) end # Returns information about an execution of a pipeline, including # details about artifacts, the pipeline execution ID, and the name, # version, and status of the pipeline. # # @option params [required, String] :pipeline_name # The name of the pipeline about which you want to get execution # details. # # @option params [required, String] :pipeline_execution_id # The ID of the pipeline execution about which you want to get execution # details. # # @return [Types::GetPipelineExecutionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetPipelineExecutionOutput#pipeline_execution #pipeline_execution} => Types::PipelineExecution # # @example Request syntax with placeholder values # # resp = client.get_pipeline_execution({ # pipeline_name: "PipelineName", # required # pipeline_execution_id: "PipelineExecutionId", # required # }) # # @example Response structure # # resp.pipeline_execution.pipeline_name #=> String # resp.pipeline_execution.pipeline_version #=> Integer # resp.pipeline_execution.pipeline_execution_id #=> String # resp.pipeline_execution.status #=> String, one of "InProgress", "Succeeded", "Superseded", "Failed" # resp.pipeline_execution.artifact_revisions #=> Array # resp.pipeline_execution.artifact_revisions[0].name #=> String # resp.pipeline_execution.artifact_revisions[0].revision_id #=> String # resp.pipeline_execution.artifact_revisions[0].revision_change_identifier #=> String # resp.pipeline_execution.artifact_revisions[0].revision_summary #=> String # resp.pipeline_execution.artifact_revisions[0].created #=> Time # resp.pipeline_execution.artifact_revisions[0].revision_url #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetPipelineExecution AWS API Documentation # # @overload get_pipeline_execution(params = {}) # @param [Hash] params ({}) def get_pipeline_execution(params = {}, options = {}) req = build_request(:get_pipeline_execution, params) req.send_request(options) end # Returns information about the state of a pipeline, including the # stages and actions. # # @option params [required, String] :name # The name of the pipeline about which you want to get information. # # @return [Types::GetPipelineStateOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetPipelineStateOutput#pipeline_name #pipeline_name} => String # * {Types::GetPipelineStateOutput#pipeline_version #pipeline_version} => Integer # * {Types::GetPipelineStateOutput#stage_states #stage_states} => Array<Types::StageState> # * {Types::GetPipelineStateOutput#created #created} => Time # * {Types::GetPipelineStateOutput#updated #updated} => Time # # @example Request syntax with placeholder values # # resp = client.get_pipeline_state({ # name: "PipelineName", # required # }) # # @example Response structure # # resp.pipeline_name #=> String # resp.pipeline_version #=> Integer # resp.stage_states #=> Array # resp.stage_states[0].stage_name #=> String # resp.stage_states[0].inbound_transition_state.enabled #=> Boolean # resp.stage_states[0].inbound_transition_state.last_changed_by #=> String # resp.stage_states[0].inbound_transition_state.last_changed_at #=> Time # resp.stage_states[0].inbound_transition_state.disabled_reason #=> String # resp.stage_states[0].action_states #=> Array # resp.stage_states[0].action_states[0].action_name #=> String # resp.stage_states[0].action_states[0].current_revision.revision_id #=> String # resp.stage_states[0].action_states[0].current_revision.revision_change_id #=> String # resp.stage_states[0].action_states[0].current_revision.created #=> Time # resp.stage_states[0].action_states[0].latest_execution.status #=> String, one of "InProgress", "Succeeded", "Failed" # resp.stage_states[0].action_states[0].latest_execution.summary #=> String # resp.stage_states[0].action_states[0].latest_execution.last_status_change #=> Time # resp.stage_states[0].action_states[0].latest_execution.token #=> String # resp.stage_states[0].action_states[0].latest_execution.last_updated_by #=> String # resp.stage_states[0].action_states[0].latest_execution.external_execution_id #=> String # resp.stage_states[0].action_states[0].latest_execution.external_execution_url #=> String # resp.stage_states[0].action_states[0].latest_execution.percent_complete #=> Integer # resp.stage_states[0].action_states[0].latest_execution.error_details.code #=> String # resp.stage_states[0].action_states[0].latest_execution.error_details.message #=> String # resp.stage_states[0].action_states[0].entity_url #=> String # resp.stage_states[0].action_states[0].revision_url #=> String # resp.stage_states[0].latest_execution.pipeline_execution_id #=> String # resp.stage_states[0].latest_execution.status #=> String, one of "InProgress", "Failed", "Succeeded" # resp.created #=> Time # resp.updated #=> Time # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetPipelineState AWS API Documentation # # @overload get_pipeline_state(params = {}) # @param [Hash] params ({}) def get_pipeline_state(params = {}, options = {}) req = build_request(:get_pipeline_state, params) req.send_request(options) end # Requests the details of a job for a third party action. Only used for # partner actions. # # When this API is called, AWS CodePipeline returns temporary # credentials for the Amazon S3 bucket used to store artifacts for the # pipeline, if the action requires access to that Amazon S3 bucket for # input or output artifacts. Additionally, this API returns any secret # values defined for the action. # # @option params [required, String] :job_id # The unique system-generated ID used for identifying the job. # # @option params [required, String] :client_token # The clientToken portion of the clientId and clientToken pair used to # verify that the calling entity is allowed access to the job and its # details. # # @return [Types::GetThirdPartyJobDetailsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::GetThirdPartyJobDetailsOutput#job_details #job_details} => Types::ThirdPartyJobDetails # # @example Request syntax with placeholder values # # resp = client.get_third_party_job_details({ # job_id: "ThirdPartyJobId", # required # client_token: "ClientToken", # required # }) # # @example Response structure # # resp.job_details.id #=> String # resp.job_details.data.action_type_id.category #=> String, one of "Source", "Build", "Deploy", "Test", "Invoke", "Approval" # resp.job_details.data.action_type_id.owner #=> String, one of "AWS", "ThirdParty", "Custom" # resp.job_details.data.action_type_id.provider #=> String # resp.job_details.data.action_type_id.version #=> String # resp.job_details.data.action_configuration.configuration #=> Hash # resp.job_details.data.action_configuration.configuration["ActionConfigurationKey"] #=> String # resp.job_details.data.pipeline_context.pipeline_name #=> String # resp.job_details.data.pipeline_context.stage.name #=> String # resp.job_details.data.pipeline_context.action.name #=> String # resp.job_details.data.input_artifacts #=> Array # resp.job_details.data.input_artifacts[0].name #=> String # resp.job_details.data.input_artifacts[0].revision #=> String # resp.job_details.data.input_artifacts[0].location.type #=> String, one of "S3" # resp.job_details.data.input_artifacts[0].location.s3_location.bucket_name #=> String # resp.job_details.data.input_artifacts[0].location.s3_location.object_key #=> String # resp.job_details.data.output_artifacts #=> Array # resp.job_details.data.output_artifacts[0].name #=> String # resp.job_details.data.output_artifacts[0].revision #=> String # resp.job_details.data.output_artifacts[0].location.type #=> String, one of "S3" # resp.job_details.data.output_artifacts[0].location.s3_location.bucket_name #=> String # resp.job_details.data.output_artifacts[0].location.s3_location.object_key #=> String # resp.job_details.data.artifact_credentials.access_key_id #=> String # resp.job_details.data.artifact_credentials.secret_access_key #=> String # resp.job_details.data.artifact_credentials.session_token #=> String # resp.job_details.data.continuation_token #=> String # resp.job_details.data.encryption_key.id #=> String # resp.job_details.data.encryption_key.type #=> String, one of "KMS" # resp.job_details.nonce #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetThirdPartyJobDetails AWS API Documentation # # @overload get_third_party_job_details(params = {}) # @param [Hash] params ({}) def get_third_party_job_details(params = {}, options = {}) req = build_request(:get_third_party_job_details, params) req.send_request(options) end # Gets a summary of all AWS CodePipeline action types associated with # your account. # # @option params [String] :action_owner_filter # Filters the list of action types to those created by a specified # entity. # # @option params [String] :next_token # An identifier that was returned from the previous list action types # call, which can be used to return the next set of action types in the # list. # # @return [Types::ListActionTypesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListActionTypesOutput#action_types #action_types} => Array<Types::ActionType> # * {Types::ListActionTypesOutput#next_token #next_token} => String # # @example Request syntax with placeholder values # # resp = client.list_action_types({ # action_owner_filter: "AWS", # accepts AWS, ThirdParty, Custom # next_token: "NextToken", # }) # # @example Response structure # # resp.action_types #=> Array # resp.action_types[0].id.category #=> String, one of "Source", "Build", "Deploy", "Test", "Invoke", "Approval" # resp.action_types[0].id.owner #=> String, one of "AWS", "ThirdParty", "Custom" # resp.action_types[0].id.provider #=> String # resp.action_types[0].id.version #=> String # resp.action_types[0].settings.third_party_configuration_url #=> String # resp.action_types[0].settings.entity_url_template #=> String # resp.action_types[0].settings.execution_url_template #=> String # resp.action_types[0].settings.revision_url_template #=> String # resp.action_types[0].action_configuration_properties #=> Array # resp.action_types[0].action_configuration_properties[0].name #=> String # resp.action_types[0].action_configuration_properties[0].required #=> Boolean # resp.action_types[0].action_configuration_properties[0].key #=> Boolean # resp.action_types[0].action_configuration_properties[0].secret #=> Boolean # resp.action_types[0].action_configuration_properties[0].queryable #=> Boolean # resp.action_types[0].action_configuration_properties[0].description #=> String # resp.action_types[0].action_configuration_properties[0].type #=> String, one of "String", "Number", "Boolean" # resp.action_types[0].input_artifact_details.minimum_count #=> Integer # resp.action_types[0].input_artifact_details.maximum_count #=> Integer # resp.action_types[0].output_artifact_details.minimum_count #=> Integer # resp.action_types[0].output_artifact_details.maximum_count #=> Integer # resp.next_token #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListActionTypes AWS API Documentation # # @overload list_action_types(params = {}) # @param [Hash] params ({}) def list_action_types(params = {}, options = {}) req = build_request(:list_action_types, params) req.send_request(options) end # Gets a summary of the most recent executions for a pipeline. # # @option params [required, String] :pipeline_name # The name of the pipeline for which you want to get execution summary # information. # # @option params [Integer] :max_results # The maximum number of results to return in a single call. To retrieve # the remaining results, make another call with the returned nextToken # value. The available pipeline execution history is limited to the most # recent 12 months, based on pipeline execution start times. Default # value is 100. # # @option params [String] :next_token # The token that was returned from the previous ListPipelineExecutions # call, which can be used to return the next set of pipeline executions # in the list. # # @return [Types::ListPipelineExecutionsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListPipelineExecutionsOutput#pipeline_execution_summaries #pipeline_execution_summaries} => Array<Types::PipelineExecutionSummary> # * {Types::ListPipelineExecutionsOutput#next_token #next_token} => String # # @example Request syntax with placeholder values # # resp = client.list_pipeline_executions({ # pipeline_name: "PipelineName", # required # max_results: 1, # next_token: "NextToken", # }) # # @example Response structure # # resp.pipeline_execution_summaries #=> Array # resp.pipeline_execution_summaries[0].pipeline_execution_id #=> String # resp.pipeline_execution_summaries[0].status #=> String, one of "InProgress", "Succeeded", "Superseded", "Failed" # resp.pipeline_execution_summaries[0].start_time #=> Time # resp.pipeline_execution_summaries[0].last_update_time #=> Time # resp.pipeline_execution_summaries[0].source_revisions #=> Array # resp.pipeline_execution_summaries[0].source_revisions[0].action_name #=> String # resp.pipeline_execution_summaries[0].source_revisions[0].revision_id #=> String # resp.pipeline_execution_summaries[0].source_revisions[0].revision_summary #=> String # resp.pipeline_execution_summaries[0].source_revisions[0].revision_url #=> String # resp.next_token #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListPipelineExecutions AWS API Documentation # # @overload list_pipeline_executions(params = {}) # @param [Hash] params ({}) def list_pipeline_executions(params = {}, options = {}) req = build_request(:list_pipeline_executions, params) req.send_request(options) end # Gets a summary of all of the pipelines associated with your account. # # @option params [String] :next_token # An identifier that was returned from the previous list pipelines call, # which can be used to return the next set of pipelines in the list. # # @return [Types::ListPipelinesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListPipelinesOutput#pipelines #pipelines} => Array<Types::PipelineSummary> # * {Types::ListPipelinesOutput#next_token #next_token} => String # # @example Request syntax with placeholder values # # resp = client.list_pipelines({ # next_token: "NextToken", # }) # # @example Response structure # # resp.pipelines #=> Array # resp.pipelines[0].name #=> String # resp.pipelines[0].version #=> Integer # resp.pipelines[0].created #=> Time # resp.pipelines[0].updated #=> Time # resp.next_token #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListPipelines AWS API Documentation # # @overload list_pipelines(params = {}) # @param [Hash] params ({}) def list_pipelines(params = {}, options = {}) req = build_request(:list_pipelines, params) req.send_request(options) end # Gets a listing of all the webhooks in this region for this account. # The output lists all webhooks and includes the webhook URL and ARN, as # well the configuration for each webhook. # # @option params [String] :next_token # The token that was returned from the previous ListWebhooks call, which # can be used to return the next set of webhooks in the list. # # @option params [Integer] :max_results # The maximum number of results to return in a single call. To retrieve # the remaining results, make another call with the returned nextToken # value. # # @return [Types::ListWebhooksOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListWebhooksOutput#webhooks #webhooks} => Array<Types::ListWebhookItem> # * {Types::ListWebhooksOutput#next_token #next_token} => String # # @example Request syntax with placeholder values # # resp = client.list_webhooks({ # next_token: "NextToken", # max_results: 1, # }) # # @example Response structure # # resp.webhooks #=> Array # resp.webhooks[0].definition.name #=> String # resp.webhooks[0].definition.target_pipeline #=> String # resp.webhooks[0].definition.target_action #=> String # resp.webhooks[0].definition.filters #=> Array # resp.webhooks[0].definition.filters[0].json_path #=> String # resp.webhooks[0].definition.filters[0].match_equals #=> String # resp.webhooks[0].definition.authentication #=> String, one of "GITHUB_HMAC", "IP", "UNAUTHENTICATED" # resp.webhooks[0].definition.authentication_configuration.allowed_ip_range #=> String # resp.webhooks[0].definition.authentication_configuration.secret_token #=> String # resp.webhooks[0].url #=> String # resp.webhooks[0].error_message #=> String # resp.webhooks[0].error_code #=> String # resp.webhooks[0].last_triggered #=> Time # resp.webhooks[0].arn #=> String # resp.next_token #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListWebhooks AWS API Documentation # # @overload list_webhooks(params = {}) # @param [Hash] params ({}) def list_webhooks(params = {}, options = {}) req = build_request(:list_webhooks, params) req.send_request(options) end # Returns information about any jobs for AWS CodePipeline to act upon. # PollForJobs is only valid for action types with "Custom" in the # owner field. If the action type contains "AWS" or "ThirdParty" in # the owner field, the PollForJobs action returns an error. # # When this API is called, AWS CodePipeline returns temporary # credentials for the Amazon S3 bucket used to store artifacts for the # pipeline, if the action requires access to that Amazon S3 bucket for # input or output artifacts. Additionally, this API returns any secret # values defined for the action. # # @option params [required, Types::ActionTypeId] :action_type_id # Represents information about an action type. # # @option params [Integer] :max_batch_size # The maximum number of jobs to return in a poll for jobs call. # # @option params [Hash] :query_param # A map of property names and values. For an action type with no # queryable properties, this value must be null or an empty map. For an # action type with a queryable property, you must supply that property # as a key in the map. Only jobs whose action configuration matches the # mapped value will be returned. # # @return [Types::PollForJobsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::PollForJobsOutput#jobs #jobs} => Array<Types::Job> # # @example Request syntax with placeholder values # # resp = client.poll_for_jobs({ # action_type_id: { # required # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval # owner: "AWS", # required, accepts AWS, ThirdParty, Custom # provider: "ActionProvider", # required # version: "Version", # required # }, # max_batch_size: 1, # query_param: { # "ActionConfigurationKey" => "ActionConfigurationQueryableValue", # }, # }) # # @example Response structure # # resp.jobs #=> Array # resp.jobs[0].id #=> String # resp.jobs[0].data.action_type_id.category #=> String, one of "Source", "Build", "Deploy", "Test", "Invoke", "Approval" # resp.jobs[0].data.action_type_id.owner #=> String, one of "AWS", "ThirdParty", "Custom" # resp.jobs[0].data.action_type_id.provider #=> String # resp.jobs[0].data.action_type_id.version #=> String # resp.jobs[0].data.action_configuration.configuration #=> Hash # resp.jobs[0].data.action_configuration.configuration["ActionConfigurationKey"] #=> String # resp.jobs[0].data.pipeline_context.pipeline_name #=> String # resp.jobs[0].data.pipeline_context.stage.name #=> String # resp.jobs[0].data.pipeline_context.action.name #=> String # resp.jobs[0].data.input_artifacts #=> Array # resp.jobs[0].data.input_artifacts[0].name #=> String # resp.jobs[0].data.input_artifacts[0].revision #=> String # resp.jobs[0].data.input_artifacts[0].location.type #=> String, one of "S3" # resp.jobs[0].data.input_artifacts[0].location.s3_location.bucket_name #=> String # resp.jobs[0].data.input_artifacts[0].location.s3_location.object_key #=> String # resp.jobs[0].data.output_artifacts #=> Array # resp.jobs[0].data.output_artifacts[0].name #=> String # resp.jobs[0].data.output_artifacts[0].revision #=> String # resp.jobs[0].data.output_artifacts[0].location.type #=> String, one of "S3" # resp.jobs[0].data.output_artifacts[0].location.s3_location.bucket_name #=> String # resp.jobs[0].data.output_artifacts[0].location.s3_location.object_key #=> String # resp.jobs[0].data.artifact_credentials.access_key_id #=> String # resp.jobs[0].data.artifact_credentials.secret_access_key #=> String # resp.jobs[0].data.artifact_credentials.session_token #=> String # resp.jobs[0].data.continuation_token #=> String # resp.jobs[0].data.encryption_key.id #=> String # resp.jobs[0].data.encryption_key.type #=> String, one of "KMS" # resp.jobs[0].nonce #=> String # resp.jobs[0].account_id #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PollForJobs AWS API Documentation # # @overload poll_for_jobs(params = {}) # @param [Hash] params ({}) def poll_for_jobs(params = {}, options = {}) req = build_request(:poll_for_jobs, params) req.send_request(options) end # Determines whether there are any third party jobs for a job worker to # act on. Only used for partner actions. # # When this API is called, AWS CodePipeline returns temporary # credentials for the Amazon S3 bucket used to store artifacts for the # pipeline, if the action requires access to that Amazon S3 bucket for # input or output artifacts. # # @option params [required, Types::ActionTypeId] :action_type_id # Represents information about an action type. # # @option params [Integer] :max_batch_size # The maximum number of jobs to return in a poll for jobs call. # # @return [Types::PollForThirdPartyJobsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::PollForThirdPartyJobsOutput#jobs #jobs} => Array<Types::ThirdPartyJob> # # @example Request syntax with placeholder values # # resp = client.poll_for_third_party_jobs({ # action_type_id: { # required # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval # owner: "AWS", # required, accepts AWS, ThirdParty, Custom # provider: "ActionProvider", # required # version: "Version", # required # }, # max_batch_size: 1, # }) # # @example Response structure # # resp.jobs #=> Array # resp.jobs[0].client_id #=> String # resp.jobs[0].job_id #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PollForThirdPartyJobs AWS API Documentation # # @overload poll_for_third_party_jobs(params = {}) # @param [Hash] params ({}) def poll_for_third_party_jobs(params = {}, options = {}) req = build_request(:poll_for_third_party_jobs, params) req.send_request(options) end # Provides information to AWS CodePipeline about new revisions to a # source. # # @option params [required, String] :pipeline_name # The name of the pipeline that will start processing the revision to # the source. # # @option params [required, String] :stage_name # The name of the stage that contains the action that will act upon the # revision. # # @option params [required, String] :action_name # The name of the action that will process the revision. # # @option params [required, Types::ActionRevision] :action_revision # Represents information about the version (or revision) of an action. # # @return [Types::PutActionRevisionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::PutActionRevisionOutput#new_revision #new_revision} => Boolean # * {Types::PutActionRevisionOutput#pipeline_execution_id #pipeline_execution_id} => String # # @example Request syntax with placeholder values # # resp = client.put_action_revision({ # pipeline_name: "PipelineName", # required # stage_name: "StageName", # required # action_name: "ActionName", # required # action_revision: { # required # revision_id: "Revision", # required # revision_change_id: "RevisionChangeIdentifier", # required # created: Time.now, # required # }, # }) # # @example Response structure # # resp.new_revision #=> Boolean # resp.pipeline_execution_id #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutActionRevision AWS API Documentation # # @overload put_action_revision(params = {}) # @param [Hash] params ({}) def put_action_revision(params = {}, options = {}) req = build_request(:put_action_revision, params) req.send_request(options) end # Provides the response to a manual approval request to AWS # CodePipeline. Valid responses include Approved and Rejected. # # @option params [required, String] :pipeline_name # The name of the pipeline that contains the action. # # @option params [required, String] :stage_name # The name of the stage that contains the action. # # @option params [required, String] :action_name # The name of the action for which approval is requested. # # @option params [required, Types::ApprovalResult] :result # Represents information about the result of the approval request. # # @option params [required, String] :token # The system-generated token used to identify a unique approval request. # The token for each open approval request can be obtained using the # GetPipelineState action and is used to validate that the approval # request corresponding to this token is still valid. # # @return [Types::PutApprovalResultOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::PutApprovalResultOutput#approved_at #approved_at} => Time # # @example Request syntax with placeholder values # # resp = client.put_approval_result({ # pipeline_name: "PipelineName", # required # stage_name: "StageName", # required # action_name: "ActionName", # required # result: { # required # summary: "ApprovalSummary", # required # status: "Approved", # required, accepts Approved, Rejected # }, # token: "ApprovalToken", # required # }) # # @example Response structure # # resp.approved_at #=> Time # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutApprovalResult AWS API Documentation # # @overload put_approval_result(params = {}) # @param [Hash] params ({}) def put_approval_result(params = {}, options = {}) req = build_request(:put_approval_result, params) req.send_request(options) end # Represents the failure of a job as returned to the pipeline by a job # worker. Only used for custom actions. # # @option params [required, String] :job_id # The unique system-generated ID of the job that failed. This is the # same ID returned from PollForJobs. # # @option params [required, Types::FailureDetails] :failure_details # The details about the failure of a job. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.put_job_failure_result({ # job_id: "JobId", # required # failure_details: { # required # type: "JobFailed", # required, accepts JobFailed, ConfigurationError, PermissionError, RevisionOutOfSync, RevisionUnavailable, SystemUnavailable # message: "Message", # required # external_execution_id: "ExecutionId", # }, # }) # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutJobFailureResult AWS API Documentation # # @overload put_job_failure_result(params = {}) # @param [Hash] params ({}) def put_job_failure_result(params = {}, options = {}) req = build_request(:put_job_failure_result, params) req.send_request(options) end # Represents the success of a job as returned to the pipeline by a job # worker. Only used for custom actions. # # @option params [required, String] :job_id # The unique system-generated ID of the job that succeeded. This is the # same ID returned from PollForJobs. # # @option params [Types::CurrentRevision] :current_revision # The ID of the current revision of the artifact successfully worked # upon by the job. # # @option params [String] :continuation_token # A token generated by a job worker, such as an AWS CodeDeploy # deployment ID, that a successful job provides to identify a custom # action in progress. Future jobs will use this token in order to # identify the running instance of the action. It can be reused to # return additional information about the progress of the custom action. # When the action is complete, no continuation token should be supplied. # # @option params [Types::ExecutionDetails] :execution_details # The execution details of the successful job, such as the actions taken # by the job worker. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.put_job_success_result({ # job_id: "JobId", # required # current_revision: { # revision: "Revision", # required # change_identifier: "RevisionChangeIdentifier", # required # created: Time.now, # revision_summary: "RevisionSummary", # }, # continuation_token: "ContinuationToken", # execution_details: { # summary: "ExecutionSummary", # external_execution_id: "ExecutionId", # percent_complete: 1, # }, # }) # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutJobSuccessResult AWS API Documentation # # @overload put_job_success_result(params = {}) # @param [Hash] params ({}) def put_job_success_result(params = {}, options = {}) req = build_request(:put_job_success_result, params) req.send_request(options) end # Represents the failure of a third party job as returned to the # pipeline by a job worker. Only used for partner actions. # # @option params [required, String] :job_id # The ID of the job that failed. This is the same ID returned from # PollForThirdPartyJobs. # # @option params [required, String] :client_token # The clientToken portion of the clientId and clientToken pair used to # verify that the calling entity is allowed access to the job and its # details. # # @option params [required, Types::FailureDetails] :failure_details # Represents information about failure details. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.put_third_party_job_failure_result({ # job_id: "ThirdPartyJobId", # required # client_token: "ClientToken", # required # failure_details: { # required # type: "JobFailed", # required, accepts JobFailed, ConfigurationError, PermissionError, RevisionOutOfSync, RevisionUnavailable, SystemUnavailable # message: "Message", # required # external_execution_id: "ExecutionId", # }, # }) # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutThirdPartyJobFailureResult AWS API Documentation # # @overload put_third_party_job_failure_result(params = {}) # @param [Hash] params ({}) def put_third_party_job_failure_result(params = {}, options = {}) req = build_request(:put_third_party_job_failure_result, params) req.send_request(options) end # Represents the success of a third party job as returned to the # pipeline by a job worker. Only used for partner actions. # # @option params [required, String] :job_id # The ID of the job that successfully completed. This is the same ID # returned from PollForThirdPartyJobs. # # @option params [required, String] :client_token # The clientToken portion of the clientId and clientToken pair used to # verify that the calling entity is allowed access to the job and its # details. # # @option params [Types::CurrentRevision] :current_revision # Represents information about a current revision. # # @option params [String] :continuation_token # A token generated by a job worker, such as an AWS CodeDeploy # deployment ID, that a successful job provides to identify a partner # action in progress. Future jobs will use this token in order to # identify the running instance of the action. It can be reused to # return additional information about the progress of the partner # action. When the action is complete, no continuation token should be # supplied. # # @option params [Types::ExecutionDetails] :execution_details # The details of the actions taken and results produced on an artifact # as it passes through stages in the pipeline. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.put_third_party_job_success_result({ # job_id: "ThirdPartyJobId", # required # client_token: "ClientToken", # required # current_revision: { # revision: "Revision", # required # change_identifier: "RevisionChangeIdentifier", # required # created: Time.now, # revision_summary: "RevisionSummary", # }, # continuation_token: "ContinuationToken", # execution_details: { # summary: "ExecutionSummary", # external_execution_id: "ExecutionId", # percent_complete: 1, # }, # }) # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutThirdPartyJobSuccessResult AWS API Documentation # # @overload put_third_party_job_success_result(params = {}) # @param [Hash] params ({}) def put_third_party_job_success_result(params = {}, options = {}) req = build_request(:put_third_party_job_success_result, params) req.send_request(options) end # Defines a webhook and returns a unique webhook URL generated by # CodePipeline. This URL can be supplied to third party source hosting # providers to call every time there's a code change. When CodePipeline # receives a POST request on this URL, the pipeline defined in the # webhook is started as long as the POST request satisfied the # authentication and filtering requirements supplied when defining the # webhook. RegisterWebhookWithThirdParty and # DeregisterWebhookWithThirdParty APIs can be used to automatically # configure supported third parties to call the generated webhook URL. # # @option params [required, Types::WebhookDefinition] :webhook # The detail provided in an input file to create the webhook, such as # the webhook name, the pipeline name, and the action name. Give the # webhook a unique name which identifies the webhook being defined. You # may choose to name the webhook after the pipeline and action it # targets so that you can easily recognize what it's used for later. # # @return [Types::PutWebhookOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::PutWebhookOutput#webhook #webhook} => Types::ListWebhookItem # # @example Request syntax with placeholder values # # resp = client.put_webhook({ # webhook: { # required # name: "WebhookName", # required # target_pipeline: "PipelineName", # required # target_action: "ActionName", # required # filters: [ # required # { # json_path: "JsonPath", # required # match_equals: "MatchEquals", # }, # ], # authentication: "GITHUB_HMAC", # required, accepts GITHUB_HMAC, IP, UNAUTHENTICATED # authentication_configuration: { # required # allowed_ip_range: "WebhookAuthConfigurationAllowedIPRange", # secret_token: "WebhookAuthConfigurationSecretToken", # }, # }, # }) # # @example Response structure # # resp.webhook.definition.name #=> String # resp.webhook.definition.target_pipeline #=> String # resp.webhook.definition.target_action #=> String # resp.webhook.definition.filters #=> Array # resp.webhook.definition.filters[0].json_path #=> String # resp.webhook.definition.filters[0].match_equals #=> String # resp.webhook.definition.authentication #=> String, one of "GITHUB_HMAC", "IP", "UNAUTHENTICATED" # resp.webhook.definition.authentication_configuration.allowed_ip_range #=> String # resp.webhook.definition.authentication_configuration.secret_token #=> String # resp.webhook.url #=> String # resp.webhook.error_message #=> String # resp.webhook.error_code #=> String # resp.webhook.last_triggered #=> Time # resp.webhook.arn #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutWebhook AWS API Documentation # # @overload put_webhook(params = {}) # @param [Hash] params ({}) def put_webhook(params = {}, options = {}) req = build_request(:put_webhook, params) req.send_request(options) end # Configures a connection between the webhook that was created and the # external tool with events to be detected. # # @option params [String] :webhook_name # The name of an existing webhook created with PutWebhook to register # with a supported third party. # # @return [Struct] Returns an empty {Seahorse::Client::Response response}. # # @example Request syntax with placeholder values # # resp = client.register_webhook_with_third_party({ # webhook_name: "WebhookName", # }) # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/RegisterWebhookWithThirdParty AWS API Documentation # # @overload register_webhook_with_third_party(params = {}) # @param [Hash] params ({}) def register_webhook_with_third_party(params = {}, options = {}) req = build_request(:register_webhook_with_third_party, params) req.send_request(options) end # Resumes the pipeline execution by retrying the last failed actions in # a stage. # # @option params [required, String] :pipeline_name # The name of the pipeline that contains the failed stage. # # @option params [required, String] :stage_name # The name of the failed stage to be retried. # # @option params [required, String] :pipeline_execution_id # The ID of the pipeline execution in the failed stage to be retried. # Use the GetPipelineState action to retrieve the current # pipelineExecutionId of the failed stage # # @option params [required, String] :retry_mode # The scope of the retry attempt. Currently, the only supported value is # FAILED\_ACTIONS. # # @return [Types::RetryStageExecutionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::RetryStageExecutionOutput#pipeline_execution_id #pipeline_execution_id} => String # # @example Request syntax with placeholder values # # resp = client.retry_stage_execution({ # pipeline_name: "PipelineName", # required # stage_name: "StageName", # required # pipeline_execution_id: "PipelineExecutionId", # required # retry_mode: "FAILED_ACTIONS", # required, accepts FAILED_ACTIONS # }) # # @example Response structure # # resp.pipeline_execution_id #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/RetryStageExecution AWS API Documentation # # @overload retry_stage_execution(params = {}) # @param [Hash] params ({}) def retry_stage_execution(params = {}, options = {}) req = build_request(:retry_stage_execution, params) req.send_request(options) end # Starts the specified pipeline. Specifically, it begins processing the # latest commit to the source location specified as part of the # pipeline. # # @option params [required, String] :name # The name of the pipeline to start. # # @return [Types::StartPipelineExecutionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::StartPipelineExecutionOutput#pipeline_execution_id #pipeline_execution_id} => String # # @example Request syntax with placeholder values # # resp = client.start_pipeline_execution({ # name: "PipelineName", # required # }) # # @example Response structure # # resp.pipeline_execution_id #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/StartPipelineExecution AWS API Documentation # # @overload start_pipeline_execution(params = {}) # @param [Hash] params ({}) def start_pipeline_execution(params = {}, options = {}) req = build_request(:start_pipeline_execution, params) req.send_request(options) end # Updates a specified pipeline with edits or changes to its structure. # Use a JSON file with the pipeline structure in conjunction with # UpdatePipeline to provide the full structure of the pipeline. Updating # the pipeline increases the version number of the pipeline by 1. # # @option params [required, Types::PipelineDeclaration] :pipeline # The name of the pipeline to be updated. # # @return [Types::UpdatePipelineOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::UpdatePipelineOutput#pipeline #pipeline} => Types::PipelineDeclaration # # @example Request syntax with placeholder values # # resp = client.update_pipeline({ # pipeline: { # required # name: "PipelineName", # required # role_arn: "RoleArn", # required # artifact_store: { # required # type: "S3", # required, accepts S3 # location: "ArtifactStoreLocation", # required # encryption_key: { # id: "EncryptionKeyId", # required # type: "KMS", # required, accepts KMS # }, # }, # stages: [ # required # { # name: "StageName", # required # blockers: [ # { # name: "BlockerName", # required # type: "Schedule", # required, accepts Schedule # }, # ], # actions: [ # required # { # name: "ActionName", # required # action_type_id: { # required # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval # owner: "AWS", # required, accepts AWS, ThirdParty, Custom # provider: "ActionProvider", # required # version: "Version", # required # }, # run_order: 1, # configuration: { # "ActionConfigurationKey" => "ActionConfigurationValue", # }, # output_artifacts: [ # { # name: "ArtifactName", # required # }, # ], # input_artifacts: [ # { # name: "ArtifactName", # required # }, # ], # role_arn: "RoleArn", # }, # ], # }, # ], # version: 1, # }, # }) # # @example Response structure # # resp.pipeline.name #=> String # resp.pipeline.role_arn #=> String # resp.pipeline.artifact_store.type #=> String, one of "S3" # resp.pipeline.artifact_store.location #=> String # resp.pipeline.artifact_store.encryption_key.id #=> String # resp.pipeline.artifact_store.encryption_key.type #=> String, one of "KMS" # resp.pipeline.stages #=> Array # resp.pipeline.stages[0].name #=> String # resp.pipeline.stages[0].blockers #=> Array # resp.pipeline.stages[0].blockers[0].name #=> String # resp.pipeline.stages[0].blockers[0].type #=> String, one of "Schedule" # resp.pipeline.stages[0].actions #=> Array # resp.pipeline.stages[0].actions[0].name #=> String # resp.pipeline.stages[0].actions[0].action_type_id.category #=> String, one of "Source", "Build", "Deploy", "Test", "Invoke", "Approval" # resp.pipeline.stages[0].actions[0].action_type_id.owner #=> String, one of "AWS", "ThirdParty", "Custom" # resp.pipeline.stages[0].actions[0].action_type_id.provider #=> String # resp.pipeline.stages[0].actions[0].action_type_id.version #=> String # resp.pipeline.stages[0].actions[0].run_order #=> Integer # resp.pipeline.stages[0].actions[0].configuration #=> Hash # resp.pipeline.stages[0].actions[0].configuration["ActionConfigurationKey"] #=> String # resp.pipeline.stages[0].actions[0].output_artifacts #=> Array # resp.pipeline.stages[0].actions[0].output_artifacts[0].name #=> String # resp.pipeline.stages[0].actions[0].input_artifacts #=> Array # resp.pipeline.stages[0].actions[0].input_artifacts[0].name #=> String # resp.pipeline.stages[0].actions[0].role_arn #=> String # resp.pipeline.version #=> Integer # # @see http://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/UpdatePipeline AWS API Documentation # # @overload update_pipeline(params = {}) # @param [Hash] params ({}) def update_pipeline(params = {}, options = {}) req = build_request(:update_pipeline, params) req.send_request(options) end # @!endgroup # @param params ({}) # @api private def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config) context[:gem_name] = 'aws-sdk-codepipeline' context[:gem_version] = '1.4.0' Seahorse::Client::Request.new(handlers, context) end # @api private # @deprecated def waiter_names [] end class << self # @api private attr_reader :identifier # @api private def errors_module Errors end end end end