aws-sdk-codebuild 1.0.0.rc2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 74881935962411a2d86f37791d34a4ceb10e2bfa
4
+ data.tar.gz: a8a2197ab77418a3ee9c960fb9c16fdc57f4e82e
5
+ SHA512:
6
+ metadata.gz: e26d5554c42968b38f800c2eba790637ff2e3ec3f84de5343fd3236c65d06c57267737777a312853220d6f6cd7301ef67ddaedfc013d67780b568f53a89d4d50
7
+ data.tar.gz: 61d7a2e55875b817cf287f4bcc3a2c4eb730de36081cf2c953cd47483f4618ea982f86e15aec00cd7b58176e2f338f62bf258cac174ec92270d6b907c0f127d8
@@ -0,0 +1,47 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'aws-sdk-core'
9
+ require 'aws-sigv4'
10
+
11
+ require_relative 'aws-sdk-codebuild/types'
12
+ require_relative 'aws-sdk-codebuild/client_api'
13
+ require_relative 'aws-sdk-codebuild/client'
14
+ require_relative 'aws-sdk-codebuild/errors'
15
+ require_relative 'aws-sdk-codebuild/resource'
16
+ require_relative 'aws-sdk-codebuild/customizations'
17
+
18
+ # This module provides support for AWS CodeBuild. This module is available in the
19
+ # `aws-sdk-codebuild` gem.
20
+ #
21
+ # # Client
22
+ #
23
+ # The {Client} class provides one method for each API operation. Operation
24
+ # methods each accept a hash of request parameters and return a response
25
+ # structure.
26
+ #
27
+ # See {Client} for more information.
28
+ #
29
+ # # Errors
30
+ #
31
+ # Errors returned from AWS CodeBuild all
32
+ # extend {Errors::ServiceError}.
33
+ #
34
+ # begin
35
+ # # do stuff
36
+ # rescue Aws::CodeBuild::Errors::ServiceError
37
+ # # rescues all service API errors
38
+ # end
39
+ #
40
+ # See {Errors} for more information.
41
+ #
42
+ # @service
43
+ module Aws::CodeBuild
44
+
45
+ GEM_VERSION = '1.0.0.rc2'
46
+
47
+ end
@@ -0,0 +1,858 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'seahorse/client/plugins/content_length.rb'
9
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
10
+ require 'aws-sdk-core/plugins/logging.rb'
11
+ require 'aws-sdk-core/plugins/param_converter.rb'
12
+ require 'aws-sdk-core/plugins/param_validator.rb'
13
+ require 'aws-sdk-core/plugins/user_agent.rb'
14
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
+ require 'aws-sdk-core/plugins/retry_errors.rb'
16
+ require 'aws-sdk-core/plugins/global_configuration.rb'
17
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
+ require 'aws-sdk-core/plugins/response_paging.rb'
19
+ require 'aws-sdk-core/plugins/stub_responses.rb'
20
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
21
+ require 'aws-sdk-core/plugins/signature_v4.rb'
22
+ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
23
+
24
+ Aws::Plugins::GlobalConfiguration.add_identifier(:codebuild)
25
+
26
+ module Aws
27
+ module CodeBuild
28
+ class Client < Seahorse::Client::Base
29
+
30
+ include Aws::ClientStubs
31
+
32
+ @identifier = :codebuild
33
+
34
+ set_api(ClientApi::API)
35
+
36
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
37
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
38
+ add_plugin(Aws::Plugins::Logging)
39
+ add_plugin(Aws::Plugins::ParamConverter)
40
+ add_plugin(Aws::Plugins::ParamValidator)
41
+ add_plugin(Aws::Plugins::UserAgent)
42
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
+ add_plugin(Aws::Plugins::RetryErrors)
44
+ add_plugin(Aws::Plugins::GlobalConfiguration)
45
+ add_plugin(Aws::Plugins::RegionalEndpoint)
46
+ add_plugin(Aws::Plugins::ResponsePaging)
47
+ add_plugin(Aws::Plugins::StubResponses)
48
+ add_plugin(Aws::Plugins::IdempotencyToken)
49
+ add_plugin(Aws::Plugins::SignatureV4)
50
+ add_plugin(Aws::Plugins::Protocols::JsonRpc)
51
+
52
+ # @option options [required, Aws::CredentialProvider] :credentials
53
+ # Your AWS credentials. This can be an instance of any one of the
54
+ # following classes:
55
+ #
56
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
57
+ # credentials.
58
+ #
59
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
60
+ # from an EC2 IMDS on an EC2 instance.
61
+ #
62
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
63
+ # shared file, such as `~/.aws/config`.
64
+ #
65
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
66
+ #
67
+ # When `:credentials` are not configured directly, the following
68
+ # locations will be searched for credentials:
69
+ #
70
+ # * `Aws.config[:credentials]`
71
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
72
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
73
+ # * `~/.aws/credentials`
74
+ # * `~/.aws/config`
75
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
76
+ # very aggressive. Construct and pass an instance of
77
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
78
+ # timeouts.
79
+ # @option options [required, String] :region
80
+ # The AWS region to connect to. The configured `:region` is
81
+ # used to determine the service `:endpoint`. When not passed,
82
+ # a default `:region` is search for in the following locations:
83
+ #
84
+ # * `Aws.config[:region]`
85
+ # * `ENV['AWS_REGION']`
86
+ # * `ENV['AMAZON_REGION']`
87
+ # * `ENV['AWS_DEFAULT_REGION']`
88
+ # * `~/.aws/credentials`
89
+ # * `~/.aws/config`
90
+ # @option options [String] :access_key_id
91
+ # @option options [Boolean] :convert_params (true)
92
+ # When `true`, an attempt is made to coerce request parameters into
93
+ # the required types.
94
+ # @option options [String] :endpoint
95
+ # The client endpoint is normally constructed from the `:region`
96
+ # option. You should only configure an `:endpoint` when connecting
97
+ # to test endpoints. This should be avalid HTTP(S) URI.
98
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
99
+ # The log formatter.
100
+ # @option options [Symbol] :log_level (:info)
101
+ # The log level to send messages to the `:logger` at.
102
+ # @option options [Logger] :logger
103
+ # The Logger instance to send log messages to. If this option
104
+ # is not set, logging will be disabled.
105
+ # @option options [String] :profile ("default")
106
+ # Used when loading credentials from the shared credentials file
107
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
108
+ # @option options [Integer] :retry_limit (3)
109
+ # The maximum number of times to retry failed requests. Only
110
+ # ~ 500 level server errors and certain ~ 400 level client errors
111
+ # are retried. Generally, these are throttling errors, data
112
+ # checksum errors, networking errors, timeout errors and auth
113
+ # errors from expired credentials.
114
+ # @option options [String] :secret_access_key
115
+ # @option options [String] :session_token
116
+ # @option options [Boolean] :simple_json (false)
117
+ # Disables request parameter conversion, validation, and formatting.
118
+ # Also disable response data type conversions. This option is useful
119
+ # when you want to ensure the highest level of performance by
120
+ # avoiding overhead of walking request parameters and response data
121
+ # structures.
122
+ #
123
+ # When `:simple_json` is enabled, the request parameters hash must
124
+ # be formatted exactly as the DynamoDB API expects.
125
+ # @option options [Boolean] :stub_responses (false)
126
+ # Causes the client to return stubbed responses. By default
127
+ # fake responses are generated and returned. You can specify
128
+ # the response data to return or errors to raise by calling
129
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
130
+ #
131
+ # ** Please note ** When response stubbing is enabled, no HTTP
132
+ # requests are made, and retries are disabled.
133
+ # @option options [Boolean] :validate_params (true)
134
+ # When `true`, request parameters are validated before
135
+ # sending the request.
136
+ def initialize(*args)
137
+ super
138
+ end
139
+
140
+ # @!group API Operations
141
+
142
+ # Gets information about one or more builds.
143
+ # @option params [required, Array<String>] :ids
144
+ # The IDs of the builds to get information about.
145
+ # @return [Types::BatchGetBuildsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
146
+ #
147
+ # * {Types::BatchGetBuildsOutput#builds #builds} => Array&lt;Types::Build&gt;
148
+ # * {Types::BatchGetBuildsOutput#builds_not_found #buildsNotFound} => Array&lt;String&gt;
149
+ #
150
+ # @example Request syntax with placeholder values
151
+ # resp = client.batch_get_builds({
152
+ # ids: ["NonEmptyString"], # required
153
+ # })
154
+ #
155
+ # @example Response structure
156
+ # resp.builds #=> Array
157
+ # resp.builds[0].id #=> String
158
+ # resp.builds[0].arn #=> String
159
+ # resp.builds[0].start_time #=> Time
160
+ # resp.builds[0].end_time #=> Time
161
+ # resp.builds[0].current_phase #=> String
162
+ # resp.builds[0].build_status #=> String, one of "SUCCEEDED", "FAILED", "FAULT", "TIMED_OUT", "IN_PROGRESS", "STOPPED"
163
+ # resp.builds[0].source_version #=> String
164
+ # resp.builds[0].project_name #=> String
165
+ # resp.builds[0].phases #=> Array
166
+ # resp.builds[0].phases[0].phase_type #=> String, one of "SUBMITTED", "PROVISIONING", "DOWNLOAD_SOURCE", "INSTALL", "PRE_BUILD", "BUILD", "POST_BUILD", "UPLOAD_ARTIFACTS", "FINALIZING", "COMPLETED"
167
+ # resp.builds[0].phases[0].phase_status #=> String, one of "SUCCEEDED", "FAILED", "FAULT", "TIMED_OUT", "IN_PROGRESS", "STOPPED"
168
+ # resp.builds[0].phases[0].start_time #=> Time
169
+ # resp.builds[0].phases[0].end_time #=> Time
170
+ # resp.builds[0].phases[0].duration_in_seconds #=> Integer
171
+ # resp.builds[0].phases[0].contexts #=> Array
172
+ # resp.builds[0].phases[0].contexts[0].status_code #=> String
173
+ # resp.builds[0].phases[0].contexts[0].message #=> String
174
+ # resp.builds[0].source.type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3"
175
+ # resp.builds[0].source.location #=> String
176
+ # resp.builds[0].source.buildspec #=> String
177
+ # resp.builds[0].source.auth.type #=> String, one of "OAUTH"
178
+ # resp.builds[0].source.auth.resource #=> String
179
+ # resp.builds[0].artifacts.location #=> String
180
+ # resp.builds[0].artifacts.sha256sum #=> String
181
+ # resp.builds[0].artifacts.md5sum #=> String
182
+ # resp.builds[0].environment.type #=> String, one of "LINUX_CONTAINER"
183
+ # resp.builds[0].environment.image #=> String
184
+ # resp.builds[0].environment.compute_type #=> String, one of "BUILD_GENERAL1_SMALL", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_LARGE"
185
+ # resp.builds[0].environment.environment_variables #=> Array
186
+ # resp.builds[0].environment.environment_variables[0].name #=> String
187
+ # resp.builds[0].environment.environment_variables[0].value #=> String
188
+ # resp.builds[0].logs.group_name #=> String
189
+ # resp.builds[0].logs.stream_name #=> String
190
+ # resp.builds[0].logs.deep_link #=> String
191
+ # resp.builds[0].timeout_in_minutes #=> Integer
192
+ # resp.builds[0].build_complete #=> Boolean
193
+ # resp.builds[0].initiator #=> String
194
+ # resp.builds_not_found #=> Array
195
+ # resp.builds_not_found[0] #=> String
196
+ # @overload batch_get_builds(params = {})
197
+ # @param [Hash] params ({})
198
+ def batch_get_builds(params = {}, options = {})
199
+ req = build_request(:batch_get_builds, params)
200
+ req.send_request(options)
201
+ end
202
+
203
+ # Gets information about one or more build projects.
204
+ # @option params [required, Array<String>] :names
205
+ # The names of the build projects to get information about.
206
+ # @return [Types::BatchGetProjectsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
207
+ #
208
+ # * {Types::BatchGetProjectsOutput#projects #projects} => Array&lt;Types::Project&gt;
209
+ # * {Types::BatchGetProjectsOutput#projects_not_found #projectsNotFound} => Array&lt;String&gt;
210
+ #
211
+ # @example Request syntax with placeholder values
212
+ # resp = client.batch_get_projects({
213
+ # names: ["NonEmptyString"], # required
214
+ # })
215
+ #
216
+ # @example Response structure
217
+ # resp.projects #=> Array
218
+ # resp.projects[0].name #=> String
219
+ # resp.projects[0].arn #=> String
220
+ # resp.projects[0].description #=> String
221
+ # resp.projects[0].source.type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3"
222
+ # resp.projects[0].source.location #=> String
223
+ # resp.projects[0].source.buildspec #=> String
224
+ # resp.projects[0].source.auth.type #=> String, one of "OAUTH"
225
+ # resp.projects[0].source.auth.resource #=> String
226
+ # resp.projects[0].artifacts.type #=> String, one of "CODEPIPELINE", "S3", "NO_ARTIFACTS"
227
+ # resp.projects[0].artifacts.location #=> String
228
+ # resp.projects[0].artifacts.path #=> String
229
+ # resp.projects[0].artifacts.namespace_type #=> String, one of "NONE", "BUILD_ID"
230
+ # resp.projects[0].artifacts.name #=> String
231
+ # resp.projects[0].artifacts.packaging #=> String, one of "NONE", "ZIP"
232
+ # resp.projects[0].environment.type #=> String, one of "LINUX_CONTAINER"
233
+ # resp.projects[0].environment.image #=> String
234
+ # resp.projects[0].environment.compute_type #=> String, one of "BUILD_GENERAL1_SMALL", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_LARGE"
235
+ # resp.projects[0].environment.environment_variables #=> Array
236
+ # resp.projects[0].environment.environment_variables[0].name #=> String
237
+ # resp.projects[0].environment.environment_variables[0].value #=> String
238
+ # resp.projects[0].service_role #=> String
239
+ # resp.projects[0].timeout_in_minutes #=> Integer
240
+ # resp.projects[0].encryption_key #=> String
241
+ # resp.projects[0].tags #=> Array
242
+ # resp.projects[0].tags[0].key #=> String
243
+ # resp.projects[0].tags[0].value #=> String
244
+ # resp.projects[0].created #=> Time
245
+ # resp.projects[0].last_modified #=> Time
246
+ # resp.projects_not_found #=> Array
247
+ # resp.projects_not_found[0] #=> String
248
+ # @overload batch_get_projects(params = {})
249
+ # @param [Hash] params ({})
250
+ def batch_get_projects(params = {}, options = {})
251
+ req = build_request(:batch_get_projects, params)
252
+ req.send_request(options)
253
+ end
254
+
255
+ # Creates a build project.
256
+ # @option params [required, String] :name
257
+ # The build project's name.
258
+ # @option params [String] :description
259
+ # A meaningful description of the build project.
260
+ # @option params [required, Types::ProjectSource] :source
261
+ # Information about the build project's build input source code.
262
+ # @option params [required, Types::ProjectArtifacts] :artifacts
263
+ # Information about the build project's build output artifacts.
264
+ # @option params [required, Types::ProjectEnvironment] :environment
265
+ # Information about the build project's build environment.
266
+ # @option params [String] :service_role
267
+ # The Amazon Resource Name (ARN) of the AWS Identity and Access
268
+ # Management (IAM) role that enables AWS CodeBuild to interact with
269
+ # dependent AWS services on behalf of the AWS account.
270
+ # @option params [Integer] :timeout_in_minutes
271
+ # How long in minutes, from 5 to 480 (8 hours), for AWS CodeBuild to
272
+ # wait until timing out any related build that does not get marked as
273
+ # completed. The default is 60 minutes.
274
+ # @option params [String] :encryption_key
275
+ # The AWS Key Management Service (AWS KMS) customer master key (CMK) to
276
+ # be used for encrypting the build project's build output artifacts.
277
+ #
278
+ # You can specify either the CMK's Amazon Resource Name (ARN) or, if
279
+ # available, the CMK's alias (using the format `alias/alias-name `).
280
+ # @option params [Array<Types::Tag>] :tags
281
+ # A set of tags for this build project.
282
+ #
283
+ # These tags are available for use by AWS services that support AWS
284
+ # CodeBuild build project tags.
285
+ # @return [Types::CreateProjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
286
+ #
287
+ # * {Types::CreateProjectOutput#project #project} => Types::Project
288
+ #
289
+ # @example Request syntax with placeholder values
290
+ # resp = client.create_project({
291
+ # name: "ProjectName", # required
292
+ # description: "ProjectDescription",
293
+ # source: { # required
294
+ # type: "CODECOMMIT", # required, accepts CODECOMMIT, CODEPIPELINE, GITHUB, S3
295
+ # location: "String",
296
+ # buildspec: "String",
297
+ # auth: {
298
+ # type: "OAUTH", # required, accepts OAUTH
299
+ # resource: "String",
300
+ # },
301
+ # },
302
+ # artifacts: { # required
303
+ # type: "CODEPIPELINE", # required, accepts CODEPIPELINE, S3, NO_ARTIFACTS
304
+ # location: "String",
305
+ # path: "String",
306
+ # namespace_type: "NONE", # accepts NONE, BUILD_ID
307
+ # name: "String",
308
+ # packaging: "NONE", # accepts NONE, ZIP
309
+ # },
310
+ # environment: { # required
311
+ # type: "LINUX_CONTAINER", # required, accepts LINUX_CONTAINER
312
+ # image: "NonEmptyString", # required
313
+ # compute_type: "BUILD_GENERAL1_SMALL", # required, accepts BUILD_GENERAL1_SMALL, BUILD_GENERAL1_MEDIUM, BUILD_GENERAL1_LARGE
314
+ # environment_variables: [
315
+ # {
316
+ # name: "NonEmptyString", # required
317
+ # value: "String", # required
318
+ # },
319
+ # ],
320
+ # },
321
+ # service_role: "NonEmptyString",
322
+ # timeout_in_minutes: 1,
323
+ # encryption_key: "NonEmptyString",
324
+ # tags: [
325
+ # {
326
+ # key: "KeyInput",
327
+ # value: "ValueInput",
328
+ # },
329
+ # ],
330
+ # })
331
+ #
332
+ # @example Response structure
333
+ # resp.project.name #=> String
334
+ # resp.project.arn #=> String
335
+ # resp.project.description #=> String
336
+ # resp.project.source.type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3"
337
+ # resp.project.source.location #=> String
338
+ # resp.project.source.buildspec #=> String
339
+ # resp.project.source.auth.type #=> String, one of "OAUTH"
340
+ # resp.project.source.auth.resource #=> String
341
+ # resp.project.artifacts.type #=> String, one of "CODEPIPELINE", "S3", "NO_ARTIFACTS"
342
+ # resp.project.artifacts.location #=> String
343
+ # resp.project.artifacts.path #=> String
344
+ # resp.project.artifacts.namespace_type #=> String, one of "NONE", "BUILD_ID"
345
+ # resp.project.artifacts.name #=> String
346
+ # resp.project.artifacts.packaging #=> String, one of "NONE", "ZIP"
347
+ # resp.project.environment.type #=> String, one of "LINUX_CONTAINER"
348
+ # resp.project.environment.image #=> String
349
+ # resp.project.environment.compute_type #=> String, one of "BUILD_GENERAL1_SMALL", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_LARGE"
350
+ # resp.project.environment.environment_variables #=> Array
351
+ # resp.project.environment.environment_variables[0].name #=> String
352
+ # resp.project.environment.environment_variables[0].value #=> String
353
+ # resp.project.service_role #=> String
354
+ # resp.project.timeout_in_minutes #=> Integer
355
+ # resp.project.encryption_key #=> String
356
+ # resp.project.tags #=> Array
357
+ # resp.project.tags[0].key #=> String
358
+ # resp.project.tags[0].value #=> String
359
+ # resp.project.created #=> Time
360
+ # resp.project.last_modified #=> Time
361
+ # @overload create_project(params = {})
362
+ # @param [Hash] params ({})
363
+ def create_project(params = {}, options = {})
364
+ req = build_request(:create_project, params)
365
+ req.send_request(options)
366
+ end
367
+
368
+ # Deletes a build project.
369
+ # @option params [required, String] :name
370
+ # The name of the build project to delete.
371
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
372
+ #
373
+ # @example Request syntax with placeholder values
374
+ # resp = client.delete_project({
375
+ # name: "NonEmptyString", # required
376
+ # })
377
+ # @overload delete_project(params = {})
378
+ # @param [Hash] params ({})
379
+ def delete_project(params = {}, options = {})
380
+ req = build_request(:delete_project, params)
381
+ req.send_request(options)
382
+ end
383
+
384
+ # Gets a list of build IDs, with each build ID representing a single
385
+ # build.
386
+ # @option params [String] :sort_order
387
+ # The order to list build IDs. Valid values include:
388
+ #
389
+ # * `ASCENDING`\: List the build IDs in ascending order by build ID.
390
+ #
391
+ # * `DESCENDING`\: List the build IDs in descending order by build ID.
392
+ # @option params [String] :next_token
393
+ # During a previous call, if there are more than 100 items in the list,
394
+ # only the first 100 items are returned, along with a unique string
395
+ # called a *next token*. To get the next batch of items in the list,
396
+ # call this operation again, adding the next token to the call. To get
397
+ # all of the items in the list, keep calling this operation with each
398
+ # subsequent next token that is returned, until no more next tokens are
399
+ # returned.
400
+ # @return [Types::ListBuildsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
401
+ #
402
+ # * {Types::ListBuildsOutput#ids #ids} => Array&lt;String&gt;
403
+ # * {Types::ListBuildsOutput#next_token #nextToken} => String
404
+ #
405
+ # @example Request syntax with placeholder values
406
+ # resp = client.list_builds({
407
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
408
+ # next_token: "String",
409
+ # })
410
+ #
411
+ # @example Response structure
412
+ # resp.ids #=> Array
413
+ # resp.ids[0] #=> String
414
+ # resp.next_token #=> String
415
+ # @overload list_builds(params = {})
416
+ # @param [Hash] params ({})
417
+ def list_builds(params = {}, options = {})
418
+ req = build_request(:list_builds, params)
419
+ req.send_request(options)
420
+ end
421
+
422
+ # Gets a list of build IDs for the specified build project, with each
423
+ # build ID representing a single build.
424
+ # @option params [required, String] :project_name
425
+ # The name of the build project to get a list of build IDs for.
426
+ # @option params [String] :sort_order
427
+ # The order to list build IDs. Valid values include:
428
+ #
429
+ # * `ASCENDING`\: List the build IDs in ascending order by build ID.
430
+ #
431
+ # * `DESCENDING`\: List the build IDs in descending order by build ID.
432
+ # @option params [String] :next_token
433
+ # During a previous call, if there are more than 100 items in the list,
434
+ # only the first 100 items are returned, along with a unique string
435
+ # called a *next token*. To get the next batch of items in the list,
436
+ # call this operation again, adding the next token to the call. To get
437
+ # all of the items in the list, keep calling this operation with each
438
+ # subsequent next token that is returned, until no more next tokens are
439
+ # returned.
440
+ # @return [Types::ListBuildsForProjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
441
+ #
442
+ # * {Types::ListBuildsForProjectOutput#ids #ids} => Array&lt;String&gt;
443
+ # * {Types::ListBuildsForProjectOutput#next_token #nextToken} => String
444
+ #
445
+ # @example Request syntax with placeholder values
446
+ # resp = client.list_builds_for_project({
447
+ # project_name: "NonEmptyString", # required
448
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
449
+ # next_token: "String",
450
+ # })
451
+ #
452
+ # @example Response structure
453
+ # resp.ids #=> Array
454
+ # resp.ids[0] #=> String
455
+ # resp.next_token #=> String
456
+ # @overload list_builds_for_project(params = {})
457
+ # @param [Hash] params ({})
458
+ def list_builds_for_project(params = {}, options = {})
459
+ req = build_request(:list_builds_for_project, params)
460
+ req.send_request(options)
461
+ end
462
+
463
+ # Gets information about Docker images that are managed by AWS
464
+ # CodeBuild.
465
+ # @return [Types::ListCuratedEnvironmentImagesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
466
+ #
467
+ # * {Types::ListCuratedEnvironmentImagesOutput#platforms #platforms} => Array&lt;Types::EnvironmentPlatform&gt;
468
+ #
469
+ # @example Request syntax with placeholder values
470
+ # resp = client.list_curated_environment_images()
471
+ #
472
+ # @example Response structure
473
+ # resp.platforms #=> Array
474
+ # resp.platforms[0].platform #=> String, one of "DEBIAN", "AMAZON_LINUX", "UBUNTU"
475
+ # resp.platforms[0].languages #=> Array
476
+ # resp.platforms[0].languages[0].language #=> String, one of "JAVA", "PYTHON", "NODE_JS", "RUBY", "GOLANG", "DOCKER", "ANDROID", "BASE"
477
+ # resp.platforms[0].languages[0].images #=> Array
478
+ # resp.platforms[0].languages[0].images[0].name #=> String
479
+ # resp.platforms[0].languages[0].images[0].description #=> String
480
+ # @overload list_curated_environment_images(params = {})
481
+ # @param [Hash] params ({})
482
+ def list_curated_environment_images(params = {}, options = {})
483
+ req = build_request(:list_curated_environment_images, params)
484
+ req.send_request(options)
485
+ end
486
+
487
+ # Gets a list of build project names, with each build project name
488
+ # representing a single build project.
489
+ # @option params [String] :sort_by
490
+ # The criterion to be used to list build project names. Valid values
491
+ # include:
492
+ #
493
+ # * `CREATED_TIME`\: List the build project names based on when each
494
+ # build project was created.
495
+ #
496
+ # * `LAST_MODIFIED_TIME`\: List the build project names based on when
497
+ # information about each build project was last changed.
498
+ #
499
+ # * `NAME`\: List the build project names based on each build project's
500
+ # name.
501
+ #
502
+ # Use `sortOrder` to specify in what order to list the build project
503
+ # names based on the preceding criteria.
504
+ # @option params [String] :sort_order
505
+ # The order in which to list build projects. Valid values include:
506
+ #
507
+ # * `ASCENDING`\: List the build project names in ascending order.
508
+ #
509
+ # * `DESCENDING`\: List the build project names in descending order.
510
+ #
511
+ # Use `sortBy` to specify the criterion to be used to list build project
512
+ # names.
513
+ # @option params [String] :next_token
514
+ # During a previous call, if there are more than 100 items in the list,
515
+ # only the first 100 items are returned, along with a unique string
516
+ # called a *next token*. To get the next batch of items in the list,
517
+ # call this operation again, adding the next token to the call. To get
518
+ # all of the items in the list, keep calling this operation with each
519
+ # subsequent next token that is returned, until no more next tokens are
520
+ # returned.
521
+ # @return [Types::ListProjectsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
522
+ #
523
+ # * {Types::ListProjectsOutput#next_token #nextToken} => String
524
+ # * {Types::ListProjectsOutput#projects #projects} => Array&lt;String&gt;
525
+ #
526
+ # @example Request syntax with placeholder values
527
+ # resp = client.list_projects({
528
+ # sort_by: "NAME", # accepts NAME, CREATED_TIME, LAST_MODIFIED_TIME
529
+ # sort_order: "ASCENDING", # accepts ASCENDING, DESCENDING
530
+ # next_token: "NonEmptyString",
531
+ # })
532
+ #
533
+ # @example Response structure
534
+ # resp.next_token #=> String
535
+ # resp.projects #=> Array
536
+ # resp.projects[0] #=> String
537
+ # @overload list_projects(params = {})
538
+ # @param [Hash] params ({})
539
+ def list_projects(params = {}, options = {})
540
+ req = build_request(:list_projects, params)
541
+ req.send_request(options)
542
+ end
543
+
544
+ # Starts running a build.
545
+ # @option params [required, String] :project_name
546
+ # The name of the build project to start running a build.
547
+ # @option params [String] :source_version
548
+ # A version of the build input to be built, for this build only. If not
549
+ # specified, the latest version will be used. If specified, must be one
550
+ # of:
551
+ #
552
+ # * For AWS CodeCommit or GitHub: the commit ID to use.
553
+ #
554
+ # * For Amazon Simple Storage Service (Amazon S3): the version ID of the
555
+ # object representing the build input ZIP file to use.
556
+ # @option params [Types::ProjectArtifacts] :artifacts_override
557
+ # Build output artifact settings that override, for this build only, the
558
+ # latest ones already defined in the corresponding build project.
559
+ # @option params [Array<Types::EnvironmentVariable>] :environment_variables_override
560
+ # A set of environment variables that overrides, for this build only,
561
+ # the latest ones already defined in the corresponding build project.
562
+ # @option params [String] :buildspec_override
563
+ # A build spec declaration that overrides, for this build only, the
564
+ # latest one already defined in the corresponding build project.
565
+ # @option params [Integer] :timeout_in_minutes_override
566
+ # The number of build timeout minutes, from 5 to 480 (8 hours) that
567
+ # overrides, for this build only, the latest setting already defined in
568
+ # the corresponding build project.
569
+ # @return [Types::StartBuildOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
570
+ #
571
+ # * {Types::StartBuildOutput#build #build} => Types::Build
572
+ #
573
+ # @example Request syntax with placeholder values
574
+ # resp = client.start_build({
575
+ # project_name: "NonEmptyString", # required
576
+ # source_version: "String",
577
+ # artifacts_override: {
578
+ # type: "CODEPIPELINE", # required, accepts CODEPIPELINE, S3, NO_ARTIFACTS
579
+ # location: "String",
580
+ # path: "String",
581
+ # namespace_type: "NONE", # accepts NONE, BUILD_ID
582
+ # name: "String",
583
+ # packaging: "NONE", # accepts NONE, ZIP
584
+ # },
585
+ # environment_variables_override: [
586
+ # {
587
+ # name: "NonEmptyString", # required
588
+ # value: "String", # required
589
+ # },
590
+ # ],
591
+ # buildspec_override: "String",
592
+ # timeout_in_minutes_override: 1,
593
+ # })
594
+ #
595
+ # @example Response structure
596
+ # resp.build.id #=> String
597
+ # resp.build.arn #=> String
598
+ # resp.build.start_time #=> Time
599
+ # resp.build.end_time #=> Time
600
+ # resp.build.current_phase #=> String
601
+ # resp.build.build_status #=> String, one of "SUCCEEDED", "FAILED", "FAULT", "TIMED_OUT", "IN_PROGRESS", "STOPPED"
602
+ # resp.build.source_version #=> String
603
+ # resp.build.project_name #=> String
604
+ # resp.build.phases #=> Array
605
+ # resp.build.phases[0].phase_type #=> String, one of "SUBMITTED", "PROVISIONING", "DOWNLOAD_SOURCE", "INSTALL", "PRE_BUILD", "BUILD", "POST_BUILD", "UPLOAD_ARTIFACTS", "FINALIZING", "COMPLETED"
606
+ # resp.build.phases[0].phase_status #=> String, one of "SUCCEEDED", "FAILED", "FAULT", "TIMED_OUT", "IN_PROGRESS", "STOPPED"
607
+ # resp.build.phases[0].start_time #=> Time
608
+ # resp.build.phases[0].end_time #=> Time
609
+ # resp.build.phases[0].duration_in_seconds #=> Integer
610
+ # resp.build.phases[0].contexts #=> Array
611
+ # resp.build.phases[0].contexts[0].status_code #=> String
612
+ # resp.build.phases[0].contexts[0].message #=> String
613
+ # resp.build.source.type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3"
614
+ # resp.build.source.location #=> String
615
+ # resp.build.source.buildspec #=> String
616
+ # resp.build.source.auth.type #=> String, one of "OAUTH"
617
+ # resp.build.source.auth.resource #=> String
618
+ # resp.build.artifacts.location #=> String
619
+ # resp.build.artifacts.sha256sum #=> String
620
+ # resp.build.artifacts.md5sum #=> String
621
+ # resp.build.environment.type #=> String, one of "LINUX_CONTAINER"
622
+ # resp.build.environment.image #=> String
623
+ # resp.build.environment.compute_type #=> String, one of "BUILD_GENERAL1_SMALL", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_LARGE"
624
+ # resp.build.environment.environment_variables #=> Array
625
+ # resp.build.environment.environment_variables[0].name #=> String
626
+ # resp.build.environment.environment_variables[0].value #=> String
627
+ # resp.build.logs.group_name #=> String
628
+ # resp.build.logs.stream_name #=> String
629
+ # resp.build.logs.deep_link #=> String
630
+ # resp.build.timeout_in_minutes #=> Integer
631
+ # resp.build.build_complete #=> Boolean
632
+ # resp.build.initiator #=> String
633
+ # @overload start_build(params = {})
634
+ # @param [Hash] params ({})
635
+ def start_build(params = {}, options = {})
636
+ req = build_request(:start_build, params)
637
+ req.send_request(options)
638
+ end
639
+
640
+ # Attempts to stop running a build.
641
+ #
642
+ # <note markdown="1"> Completed builds cannot be stopped.
643
+ #
644
+ # </note>
645
+ # @option params [required, String] :id
646
+ # The ID of the build to attempt to stop running.
647
+ # @return [Types::StopBuildOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
648
+ #
649
+ # * {Types::StopBuildOutput#build #build} => Types::Build
650
+ #
651
+ # @example Request syntax with placeholder values
652
+ # resp = client.stop_build({
653
+ # id: "NonEmptyString", # required
654
+ # })
655
+ #
656
+ # @example Response structure
657
+ # resp.build.id #=> String
658
+ # resp.build.arn #=> String
659
+ # resp.build.start_time #=> Time
660
+ # resp.build.end_time #=> Time
661
+ # resp.build.current_phase #=> String
662
+ # resp.build.build_status #=> String, one of "SUCCEEDED", "FAILED", "FAULT", "TIMED_OUT", "IN_PROGRESS", "STOPPED"
663
+ # resp.build.source_version #=> String
664
+ # resp.build.project_name #=> String
665
+ # resp.build.phases #=> Array
666
+ # resp.build.phases[0].phase_type #=> String, one of "SUBMITTED", "PROVISIONING", "DOWNLOAD_SOURCE", "INSTALL", "PRE_BUILD", "BUILD", "POST_BUILD", "UPLOAD_ARTIFACTS", "FINALIZING", "COMPLETED"
667
+ # resp.build.phases[0].phase_status #=> String, one of "SUCCEEDED", "FAILED", "FAULT", "TIMED_OUT", "IN_PROGRESS", "STOPPED"
668
+ # resp.build.phases[0].start_time #=> Time
669
+ # resp.build.phases[0].end_time #=> Time
670
+ # resp.build.phases[0].duration_in_seconds #=> Integer
671
+ # resp.build.phases[0].contexts #=> Array
672
+ # resp.build.phases[0].contexts[0].status_code #=> String
673
+ # resp.build.phases[0].contexts[0].message #=> String
674
+ # resp.build.source.type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3"
675
+ # resp.build.source.location #=> String
676
+ # resp.build.source.buildspec #=> String
677
+ # resp.build.source.auth.type #=> String, one of "OAUTH"
678
+ # resp.build.source.auth.resource #=> String
679
+ # resp.build.artifacts.location #=> String
680
+ # resp.build.artifacts.sha256sum #=> String
681
+ # resp.build.artifacts.md5sum #=> String
682
+ # resp.build.environment.type #=> String, one of "LINUX_CONTAINER"
683
+ # resp.build.environment.image #=> String
684
+ # resp.build.environment.compute_type #=> String, one of "BUILD_GENERAL1_SMALL", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_LARGE"
685
+ # resp.build.environment.environment_variables #=> Array
686
+ # resp.build.environment.environment_variables[0].name #=> String
687
+ # resp.build.environment.environment_variables[0].value #=> String
688
+ # resp.build.logs.group_name #=> String
689
+ # resp.build.logs.stream_name #=> String
690
+ # resp.build.logs.deep_link #=> String
691
+ # resp.build.timeout_in_minutes #=> Integer
692
+ # resp.build.build_complete #=> Boolean
693
+ # resp.build.initiator #=> String
694
+ # @overload stop_build(params = {})
695
+ # @param [Hash] params ({})
696
+ def stop_build(params = {}, options = {})
697
+ req = build_request(:stop_build, params)
698
+ req.send_request(options)
699
+ end
700
+
701
+ # Changes the settings of an existing build project.
702
+ # @option params [required, String] :name
703
+ # The name of the existing build project to change settings.
704
+ #
705
+ # <note markdown="1"> You cannot change an existing build project's name.
706
+ #
707
+ # </note>
708
+ # @option params [String] :description
709
+ # A new or replacement description of the build project.
710
+ # @option params [Types::ProjectSource] :source
711
+ # Information to be changed about the build project's build input
712
+ # source code.
713
+ # @option params [Types::ProjectArtifacts] :artifacts
714
+ # Information to be changed about the build project's build output
715
+ # artifacts.
716
+ # @option params [Types::ProjectEnvironment] :environment
717
+ # Information to be changed about the build project's build
718
+ # environment.
719
+ # @option params [String] :service_role
720
+ # The replacement Amazon Resource Name (ARN) of the AWS Identity and
721
+ # Access Management (IAM) role that enables AWS CodeBuild to interact
722
+ # with dependent AWS services on behalf of the AWS account.
723
+ # @option params [Integer] :timeout_in_minutes
724
+ # The replacement value in minutes, from 5 to 480 (8 hours), for AWS
725
+ # CodeBuild to wait to timeout any related build that did not get marked
726
+ # as completed.
727
+ # @option params [String] :encryption_key
728
+ # The replacement AWS Key Management Service (AWS KMS) customer master
729
+ # key (CMK) to be used for encrypting the build project's build output
730
+ # artifacts.
731
+ #
732
+ # You can specify either the CMK's Amazon Resource Name (ARN) or, if
733
+ # available, the CMK's alias (using the format `alias/alias-name `).
734
+ # @option params [Array<Types::Tag>] :tags
735
+ # The replacement set of tags for this build project.
736
+ #
737
+ # These tags are available for use by AWS services that support AWS
738
+ # CodeBuild build project tags.
739
+ # @return [Types::UpdateProjectOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
740
+ #
741
+ # * {Types::UpdateProjectOutput#project #project} => Types::Project
742
+ #
743
+ # @example Request syntax with placeholder values
744
+ # resp = client.update_project({
745
+ # name: "NonEmptyString", # required
746
+ # description: "ProjectDescription",
747
+ # source: {
748
+ # type: "CODECOMMIT", # required, accepts CODECOMMIT, CODEPIPELINE, GITHUB, S3
749
+ # location: "String",
750
+ # buildspec: "String",
751
+ # auth: {
752
+ # type: "OAUTH", # required, accepts OAUTH
753
+ # resource: "String",
754
+ # },
755
+ # },
756
+ # artifacts: {
757
+ # type: "CODEPIPELINE", # required, accepts CODEPIPELINE, S3, NO_ARTIFACTS
758
+ # location: "String",
759
+ # path: "String",
760
+ # namespace_type: "NONE", # accepts NONE, BUILD_ID
761
+ # name: "String",
762
+ # packaging: "NONE", # accepts NONE, ZIP
763
+ # },
764
+ # environment: {
765
+ # type: "LINUX_CONTAINER", # required, accepts LINUX_CONTAINER
766
+ # image: "NonEmptyString", # required
767
+ # compute_type: "BUILD_GENERAL1_SMALL", # required, accepts BUILD_GENERAL1_SMALL, BUILD_GENERAL1_MEDIUM, BUILD_GENERAL1_LARGE
768
+ # environment_variables: [
769
+ # {
770
+ # name: "NonEmptyString", # required
771
+ # value: "String", # required
772
+ # },
773
+ # ],
774
+ # },
775
+ # service_role: "NonEmptyString",
776
+ # timeout_in_minutes: 1,
777
+ # encryption_key: "NonEmptyString",
778
+ # tags: [
779
+ # {
780
+ # key: "KeyInput",
781
+ # value: "ValueInput",
782
+ # },
783
+ # ],
784
+ # })
785
+ #
786
+ # @example Response structure
787
+ # resp.project.name #=> String
788
+ # resp.project.arn #=> String
789
+ # resp.project.description #=> String
790
+ # resp.project.source.type #=> String, one of "CODECOMMIT", "CODEPIPELINE", "GITHUB", "S3"
791
+ # resp.project.source.location #=> String
792
+ # resp.project.source.buildspec #=> String
793
+ # resp.project.source.auth.type #=> String, one of "OAUTH"
794
+ # resp.project.source.auth.resource #=> String
795
+ # resp.project.artifacts.type #=> String, one of "CODEPIPELINE", "S3", "NO_ARTIFACTS"
796
+ # resp.project.artifacts.location #=> String
797
+ # resp.project.artifacts.path #=> String
798
+ # resp.project.artifacts.namespace_type #=> String, one of "NONE", "BUILD_ID"
799
+ # resp.project.artifacts.name #=> String
800
+ # resp.project.artifacts.packaging #=> String, one of "NONE", "ZIP"
801
+ # resp.project.environment.type #=> String, one of "LINUX_CONTAINER"
802
+ # resp.project.environment.image #=> String
803
+ # resp.project.environment.compute_type #=> String, one of "BUILD_GENERAL1_SMALL", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_LARGE"
804
+ # resp.project.environment.environment_variables #=> Array
805
+ # resp.project.environment.environment_variables[0].name #=> String
806
+ # resp.project.environment.environment_variables[0].value #=> String
807
+ # resp.project.service_role #=> String
808
+ # resp.project.timeout_in_minutes #=> Integer
809
+ # resp.project.encryption_key #=> String
810
+ # resp.project.tags #=> Array
811
+ # resp.project.tags[0].key #=> String
812
+ # resp.project.tags[0].value #=> String
813
+ # resp.project.created #=> Time
814
+ # resp.project.last_modified #=> Time
815
+ # @overload update_project(params = {})
816
+ # @param [Hash] params ({})
817
+ def update_project(params = {}, options = {})
818
+ req = build_request(:update_project, params)
819
+ req.send_request(options)
820
+ end
821
+
822
+ # @!endgroup
823
+
824
+ # @param params ({})
825
+ # @api private
826
+ def build_request(operation_name, params = {})
827
+ handlers = @handlers.for(operation_name)
828
+ context = Seahorse::Client::RequestContext.new(
829
+ operation_name: operation_name,
830
+ operation: config.api.operation(operation_name),
831
+ client: self,
832
+ params: params,
833
+ config: config)
834
+ context[:gem_name] = 'aws-sdk-codebuild'
835
+ context[:gem_version] = '1.0.0.rc2'
836
+ Seahorse::Client::Request.new(handlers, context)
837
+ end
838
+
839
+ # @api private
840
+ # @deprecated
841
+ def waiter_names
842
+ []
843
+ end
844
+
845
+ class << self
846
+
847
+ # @api private
848
+ attr_reader :identifier
849
+
850
+ # @api private
851
+ def errors_module
852
+ Errors
853
+ end
854
+
855
+ end
856
+ end
857
+ end
858
+ end