google-apis-cloudbuild_v1 0.37.0 → 0.39.0

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.
@@ -277,6 +277,77 @@ module Google
277
277
  end
278
278
  end
279
279
 
280
+ # RPC request object accepted by BatchCreateGitLabConnectedRepositories RPC
281
+ # method.
282
+ class BatchCreateGitLabConnectedRepositoriesRequest
283
+ include Google::Apis::Core::Hashable
284
+
285
+ # Required. Requests to connect GitLab repositories.
286
+ # Corresponds to the JSON property `requests`
287
+ # @return [Array<Google::Apis::CloudbuildV1::CreateGitLabConnectedRepositoryRequest>]
288
+ attr_accessor :requests
289
+
290
+ def initialize(**args)
291
+ update!(**args)
292
+ end
293
+
294
+ # Update properties of this object
295
+ def update!(**args)
296
+ @requests = args[:requests] if args.key?(:requests)
297
+ end
298
+ end
299
+
300
+ # Response of BatchCreateGitLabConnectedRepositories RPC method.
301
+ class BatchCreateGitLabConnectedRepositoriesResponse
302
+ include Google::Apis::Core::Hashable
303
+
304
+ # The GitLab connected repository requests' responses.
305
+ # Corresponds to the JSON property `gitlabConnectedRepositories`
306
+ # @return [Array<Google::Apis::CloudbuildV1::GitLabConnectedRepository>]
307
+ attr_accessor :gitlab_connected_repositories
308
+
309
+ def initialize(**args)
310
+ update!(**args)
311
+ end
312
+
313
+ # Update properties of this object
314
+ def update!(**args)
315
+ @gitlab_connected_repositories = args[:gitlab_connected_repositories] if args.key?(:gitlab_connected_repositories)
316
+ end
317
+ end
318
+
319
+ # Metadata for `BatchCreateGitLabConnectedRepositories` operation.
320
+ class BatchCreateGitLabConnectedRepositoriesResponseMetadata
321
+ include Google::Apis::Core::Hashable
322
+
323
+ # Time the operation was completed.
324
+ # Corresponds to the JSON property `completeTime`
325
+ # @return [String]
326
+ attr_accessor :complete_time
327
+
328
+ # The name of the `GitLabConfig` that added connected repositories. Format: `
329
+ # projects/`project`/locations/`location`/gitLabConfigs/`config``
330
+ # Corresponds to the JSON property `config`
331
+ # @return [String]
332
+ attr_accessor :config
333
+
334
+ # Time the operation was created.
335
+ # Corresponds to the JSON property `createTime`
336
+ # @return [String]
337
+ attr_accessor :create_time
338
+
339
+ def initialize(**args)
340
+ update!(**args)
341
+ end
342
+
343
+ # Update properties of this object
344
+ def update!(**args)
345
+ @complete_time = args[:complete_time] if args.key?(:complete_time)
346
+ @config = args[:config] if args.key?(:config)
347
+ @create_time = args[:create_time] if args.key?(:create_time)
348
+ end
349
+ end
350
+
280
351
  # BitbucketServerConfig represents the configuration for a Bitbucket Server.
281
352
  class BitbucketServerConfig
282
353
  include Google::Apis::Core::Hashable
@@ -976,6 +1047,22 @@ module Google
976
1047
  class BuildStep
977
1048
  include Google::Apis::Core::Hashable
978
1049
 
1050
+ # Allow this build step to fail without failing the entire build if and only if
1051
+ # the exit code is one of the specified codes. If allow_failure is also
1052
+ # specified, this field will take precedence.
1053
+ # Corresponds to the JSON property `allowExitCodes`
1054
+ # @return [Array<Fixnum>]
1055
+ attr_accessor :allow_exit_codes
1056
+
1057
+ # Allow this build step to fail without failing the entire build. If false, the
1058
+ # entire build will fail if this step fails. Otherwise, the build will succeed,
1059
+ # but this step will still have a failure status. Error information will be
1060
+ # reported in the failure_detail field.
1061
+ # Corresponds to the JSON property `allowFailure`
1062
+ # @return [Boolean]
1063
+ attr_accessor :allow_failure
1064
+ alias_method :allow_failure?, :allow_failure
1065
+
979
1066
  # A list of arguments that will be presented to the step when it is started. If
980
1067
  # the image used to run the step's container has an entrypoint, the `args` are
981
1068
  # used as arguments to that entrypoint. If the image does not define an
@@ -1009,6 +1096,11 @@ module Google
1009
1096
  # @return [Array<String>]
1010
1097
  attr_accessor :env
1011
1098
 
1099
+ # Output only. Return code from running the step.
1100
+ # Corresponds to the JSON property `exitCode`
1101
+ # @return [Fixnum]
1102
+ attr_accessor :exit_code
1103
+
1012
1104
  # Unique identifier for this build step, used in `wait_for` to reference this
1013
1105
  # build step as a dependency.
1014
1106
  # Corresponds to the JSON property `id`
@@ -1090,10 +1182,13 @@ module Google
1090
1182
 
1091
1183
  # Update properties of this object
1092
1184
  def update!(**args)
1185
+ @allow_exit_codes = args[:allow_exit_codes] if args.key?(:allow_exit_codes)
1186
+ @allow_failure = args[:allow_failure] if args.key?(:allow_failure)
1093
1187
  @args = args[:args] if args.key?(:args)
1094
1188
  @dir = args[:dir] if args.key?(:dir)
1095
1189
  @entrypoint = args[:entrypoint] if args.key?(:entrypoint)
1096
1190
  @env = args[:env] if args.key?(:env)
1191
+ @exit_code = args[:exit_code] if args.key?(:exit_code)
1097
1192
  @id = args[:id] if args.key?(:id)
1098
1193
  @name = args[:name] if args.key?(:name)
1099
1194
  @pull_timing = args[:pull_timing] if args.key?(:pull_timing)
@@ -1191,6 +1286,12 @@ module Google
1191
1286
  # @return [Google::Apis::CloudbuildV1::GitHubEventsConfig]
1192
1287
  attr_accessor :github
1193
1288
 
1289
+ # GitLabEventsConfig describes the configuration of a trigger that creates a
1290
+ # build whenever a GitLab event is received.
1291
+ # Corresponds to the JSON property `gitlabEnterpriseEventsConfig`
1292
+ # @return [Google::Apis::CloudbuildV1::GitLabEventsConfig]
1293
+ attr_accessor :gitlab_enterprise_events_config
1294
+
1194
1295
  # Output only. Unique identifier of the trigger.
1195
1296
  # Corresponds to the JSON property `id`
1196
1297
  # @return [String]
@@ -1299,6 +1400,7 @@ module Google
1299
1400
  @filter = args[:filter] if args.key?(:filter)
1300
1401
  @git_file_source = args[:git_file_source] if args.key?(:git_file_source)
1301
1402
  @github = args[:github] if args.key?(:github)
1403
+ @gitlab_enterprise_events_config = args[:gitlab_enterprise_events_config] if args.key?(:gitlab_enterprise_events_config)
1302
1404
  @id = args[:id] if args.key?(:id)
1303
1405
  @ignored_files = args[:ignored_files] if args.key?(:ignored_files)
1304
1406
  @include_build_logs = args[:include_build_logs] if args.key?(:include_build_logs)
@@ -1484,6 +1586,65 @@ module Google
1484
1586
  end
1485
1587
  end
1486
1588
 
1589
+ # Metadata for `CreateGitLabConfig` operation.
1590
+ class CreateGitLabConfigOperationMetadata
1591
+ include Google::Apis::Core::Hashable
1592
+
1593
+ # Time the operation was completed.
1594
+ # Corresponds to the JSON property `completeTime`
1595
+ # @return [String]
1596
+ attr_accessor :complete_time
1597
+
1598
+ # Time the operation was created.
1599
+ # Corresponds to the JSON property `createTime`
1600
+ # @return [String]
1601
+ attr_accessor :create_time
1602
+
1603
+ # The resource name of the GitLabConfig to be created. Format: `projects/`
1604
+ # project`/locations/`location`/gitlabConfigs/`id``.
1605
+ # Corresponds to the JSON property `gitlabConfig`
1606
+ # @return [String]
1607
+ attr_accessor :gitlab_config
1608
+
1609
+ def initialize(**args)
1610
+ update!(**args)
1611
+ end
1612
+
1613
+ # Update properties of this object
1614
+ def update!(**args)
1615
+ @complete_time = args[:complete_time] if args.key?(:complete_time)
1616
+ @create_time = args[:create_time] if args.key?(:create_time)
1617
+ @gitlab_config = args[:gitlab_config] if args.key?(:gitlab_config)
1618
+ end
1619
+ end
1620
+
1621
+ # Request to connect a repository from a connected GitLab host.
1622
+ class CreateGitLabConnectedRepositoryRequest
1623
+ include Google::Apis::Core::Hashable
1624
+
1625
+ # GitLabConnectedRepository represents a GitLab connected repository request
1626
+ # response.
1627
+ # Corresponds to the JSON property `gitlabConnectedRepository`
1628
+ # @return [Google::Apis::CloudbuildV1::GitLabConnectedRepository]
1629
+ attr_accessor :gitlab_connected_repository
1630
+
1631
+ # Required. The name of the `GitLabConfig` that adds connected repository.
1632
+ # Format: `projects/`project`/locations/`location`/gitLabConfigs/`config``
1633
+ # Corresponds to the JSON property `parent`
1634
+ # @return [String]
1635
+ attr_accessor :parent
1636
+
1637
+ def initialize(**args)
1638
+ update!(**args)
1639
+ end
1640
+
1641
+ # Update properties of this object
1642
+ def update!(**args)
1643
+ @gitlab_connected_repository = args[:gitlab_connected_repository] if args.key?(:gitlab_connected_repository)
1644
+ @parent = args[:parent] if args.key?(:parent)
1645
+ end
1646
+ end
1647
+
1487
1648
  # Metadata for the `CreateWorkerPool` operation.
1488
1649
  class CreateWorkerPoolOperationMetadata
1489
1650
  include Google::Apis::Core::Hashable
@@ -1580,6 +1741,38 @@ module Google
1580
1741
  end
1581
1742
  end
1582
1743
 
1744
+ # Metadata for `DeleteGitLabConfig` operation.
1745
+ class DeleteGitLabConfigOperationMetadata
1746
+ include Google::Apis::Core::Hashable
1747
+
1748
+ # Time the operation was completed.
1749
+ # Corresponds to the JSON property `completeTime`
1750
+ # @return [String]
1751
+ attr_accessor :complete_time
1752
+
1753
+ # Time the operation was created.
1754
+ # Corresponds to the JSON property `createTime`
1755
+ # @return [String]
1756
+ attr_accessor :create_time
1757
+
1758
+ # The resource name of the GitLabConfig to be created. Format: `projects/`
1759
+ # project`/locations/`location`/gitlabConfigs/`id``.
1760
+ # Corresponds to the JSON property `gitlabConfig`
1761
+ # @return [String]
1762
+ attr_accessor :gitlab_config
1763
+
1764
+ def initialize(**args)
1765
+ update!(**args)
1766
+ end
1767
+
1768
+ # Update properties of this object
1769
+ def update!(**args)
1770
+ @complete_time = args[:complete_time] if args.key?(:complete_time)
1771
+ @create_time = args[:create_time] if args.key?(:create_time)
1772
+ @gitlab_config = args[:gitlab_config] if args.key?(:gitlab_config)
1773
+ end
1774
+ end
1775
+
1583
1776
  # Metadata for the `DeleteWorkerPool` operation.
1584
1777
  class DeleteWorkerPoolOperationMetadata
1585
1778
  include Google::Apis::Core::Hashable
@@ -1926,6 +2119,293 @@ module Google
1926
2119
  end
1927
2120
  end
1928
2121
 
2122
+ # GitLabConfig represents the configuration for a GitLab integration.
2123
+ class GitLabConfig
2124
+ include Google::Apis::Core::Hashable
2125
+
2126
+ # Connected GitLab.com or GitLabEnterprise repositories for this config.
2127
+ # Corresponds to the JSON property `connectedRepositories`
2128
+ # @return [Array<Google::Apis::CloudbuildV1::GitLabRepositoryId>]
2129
+ attr_accessor :connected_repositories
2130
+
2131
+ # Output only. Time when the config was created.
2132
+ # Corresponds to the JSON property `createTime`
2133
+ # @return [String]
2134
+ attr_accessor :create_time
2135
+
2136
+ # GitLabEnterpriseConfig represents the configuration for a GitLabEnterprise
2137
+ # integration.
2138
+ # Corresponds to the JSON property `enterpriseConfig`
2139
+ # @return [Google::Apis::CloudbuildV1::GitLabEnterpriseConfig]
2140
+ attr_accessor :enterprise_config
2141
+
2142
+ # The resource name for the config.
2143
+ # Corresponds to the JSON property `name`
2144
+ # @return [String]
2145
+ attr_accessor :name
2146
+
2147
+ # GitLabSecrets represents the secrets in Secret Manager for a GitLab
2148
+ # integration.
2149
+ # Corresponds to the JSON property `secrets`
2150
+ # @return [Google::Apis::CloudbuildV1::GitLabSecrets]
2151
+ attr_accessor :secrets
2152
+
2153
+ # Username of the GitLab.com or GitLab Enterprise account Cloud Build will use.
2154
+ # Corresponds to the JSON property `username`
2155
+ # @return [String]
2156
+ attr_accessor :username
2157
+
2158
+ # Output only. UUID included in webhook requests. The UUID is used to look up
2159
+ # the corresponding config.
2160
+ # Corresponds to the JSON property `webhookKey`
2161
+ # @return [String]
2162
+ attr_accessor :webhook_key
2163
+
2164
+ def initialize(**args)
2165
+ update!(**args)
2166
+ end
2167
+
2168
+ # Update properties of this object
2169
+ def update!(**args)
2170
+ @connected_repositories = args[:connected_repositories] if args.key?(:connected_repositories)
2171
+ @create_time = args[:create_time] if args.key?(:create_time)
2172
+ @enterprise_config = args[:enterprise_config] if args.key?(:enterprise_config)
2173
+ @name = args[:name] if args.key?(:name)
2174
+ @secrets = args[:secrets] if args.key?(:secrets)
2175
+ @username = args[:username] if args.key?(:username)
2176
+ @webhook_key = args[:webhook_key] if args.key?(:webhook_key)
2177
+ end
2178
+ end
2179
+
2180
+ # GitLabConnectedRepository represents a GitLab connected repository request
2181
+ # response.
2182
+ class GitLabConnectedRepository
2183
+ include Google::Apis::Core::Hashable
2184
+
2185
+ # The name of the `GitLabConfig` that added connected repository. Format: `
2186
+ # projects/`project`/locations/`location`/gitLabConfigs/`config``
2187
+ # Corresponds to the JSON property `parent`
2188
+ # @return [String]
2189
+ attr_accessor :parent
2190
+
2191
+ # GitLabRepositoryId identifies a specific repository hosted on GitLab.com or
2192
+ # GitLabEnterprise
2193
+ # Corresponds to the JSON property `repo`
2194
+ # @return [Google::Apis::CloudbuildV1::GitLabRepositoryId]
2195
+ attr_accessor :repo
2196
+
2197
+ # The `Status` type defines a logical error model that is suitable for different
2198
+ # programming environments, including REST APIs and RPC APIs. It is used by [
2199
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
2200
+ # data: error code, error message, and error details. You can find out more
2201
+ # about this error model and how to work with it in the [API Design Guide](https:
2202
+ # //cloud.google.com/apis/design/errors).
2203
+ # Corresponds to the JSON property `status`
2204
+ # @return [Google::Apis::CloudbuildV1::Status]
2205
+ attr_accessor :status
2206
+
2207
+ def initialize(**args)
2208
+ update!(**args)
2209
+ end
2210
+
2211
+ # Update properties of this object
2212
+ def update!(**args)
2213
+ @parent = args[:parent] if args.key?(:parent)
2214
+ @repo = args[:repo] if args.key?(:repo)
2215
+ @status = args[:status] if args.key?(:status)
2216
+ end
2217
+ end
2218
+
2219
+ # GitLabEnterpriseConfig represents the configuration for a GitLabEnterprise
2220
+ # integration.
2221
+ class GitLabEnterpriseConfig
2222
+ include Google::Apis::Core::Hashable
2223
+
2224
+ # Immutable. The URI of the GitlabEnterprise host.
2225
+ # Corresponds to the JSON property `hostUri`
2226
+ # @return [String]
2227
+ attr_accessor :host_uri
2228
+
2229
+ # ServiceDirectoryConfig represents Service Directory configuration for a SCM
2230
+ # host connection.
2231
+ # Corresponds to the JSON property `serviceDirectoryConfig`
2232
+ # @return [Google::Apis::CloudbuildV1::ServiceDirectoryConfig]
2233
+ attr_accessor :service_directory_config
2234
+
2235
+ # The SSL certificate to use in requests to GitLab Enterprise instances.
2236
+ # Corresponds to the JSON property `sslCa`
2237
+ # @return [String]
2238
+ attr_accessor :ssl_ca
2239
+
2240
+ def initialize(**args)
2241
+ update!(**args)
2242
+ end
2243
+
2244
+ # Update properties of this object
2245
+ def update!(**args)
2246
+ @host_uri = args[:host_uri] if args.key?(:host_uri)
2247
+ @service_directory_config = args[:service_directory_config] if args.key?(:service_directory_config)
2248
+ @ssl_ca = args[:ssl_ca] if args.key?(:ssl_ca)
2249
+ end
2250
+ end
2251
+
2252
+ # GitLabEventsConfig describes the configuration of a trigger that creates a
2253
+ # build whenever a GitLab event is received.
2254
+ class GitLabEventsConfig
2255
+ include Google::Apis::Core::Hashable
2256
+
2257
+ # GitLabConfig represents the configuration for a GitLab integration.
2258
+ # Corresponds to the JSON property `gitlabConfig`
2259
+ # @return [Google::Apis::CloudbuildV1::GitLabConfig]
2260
+ attr_accessor :gitlab_config
2261
+
2262
+ # The GitLab config resource that this trigger config maps to.
2263
+ # Corresponds to the JSON property `gitlabConfigResource`
2264
+ # @return [String]
2265
+ attr_accessor :gitlab_config_resource
2266
+
2267
+ # Namespace of the GitLab project.
2268
+ # Corresponds to the JSON property `projectNamespace`
2269
+ # @return [String]
2270
+ attr_accessor :project_namespace
2271
+
2272
+ # PullRequestFilter contains filter properties for matching GitHub Pull Requests.
2273
+ # Corresponds to the JSON property `pullRequest`
2274
+ # @return [Google::Apis::CloudbuildV1::PullRequestFilter]
2275
+ attr_accessor :pull_request
2276
+
2277
+ # Push contains filter properties for matching GitHub git pushes.
2278
+ # Corresponds to the JSON property `push`
2279
+ # @return [Google::Apis::CloudbuildV1::PushFilter]
2280
+ attr_accessor :push
2281
+
2282
+ def initialize(**args)
2283
+ update!(**args)
2284
+ end
2285
+
2286
+ # Update properties of this object
2287
+ def update!(**args)
2288
+ @gitlab_config = args[:gitlab_config] if args.key?(:gitlab_config)
2289
+ @gitlab_config_resource = args[:gitlab_config_resource] if args.key?(:gitlab_config_resource)
2290
+ @project_namespace = args[:project_namespace] if args.key?(:project_namespace)
2291
+ @pull_request = args[:pull_request] if args.key?(:pull_request)
2292
+ @push = args[:push] if args.key?(:push)
2293
+ end
2294
+ end
2295
+
2296
+ # Proto Representing a GitLabRepository
2297
+ class GitLabRepository
2298
+ include Google::Apis::Core::Hashable
2299
+
2300
+ # Link to the browse repo page on the GitLab instance
2301
+ # Corresponds to the JSON property `browseUri`
2302
+ # @return [String]
2303
+ attr_accessor :browse_uri
2304
+
2305
+ # Description of the repository
2306
+ # Corresponds to the JSON property `description`
2307
+ # @return [String]
2308
+ attr_accessor :description
2309
+
2310
+ # Display name of the repository
2311
+ # Corresponds to the JSON property `displayName`
2312
+ # @return [String]
2313
+ attr_accessor :display_name
2314
+
2315
+ # The resource name of the repository
2316
+ # Corresponds to the JSON property `name`
2317
+ # @return [String]
2318
+ attr_accessor :name
2319
+
2320
+ # GitLabRepositoryId identifies a specific repository hosted on GitLab.com or
2321
+ # GitLabEnterprise
2322
+ # Corresponds to the JSON property `repositoryId`
2323
+ # @return [Google::Apis::CloudbuildV1::GitLabRepositoryId]
2324
+ attr_accessor :repository_id
2325
+
2326
+ def initialize(**args)
2327
+ update!(**args)
2328
+ end
2329
+
2330
+ # Update properties of this object
2331
+ def update!(**args)
2332
+ @browse_uri = args[:browse_uri] if args.key?(:browse_uri)
2333
+ @description = args[:description] if args.key?(:description)
2334
+ @display_name = args[:display_name] if args.key?(:display_name)
2335
+ @name = args[:name] if args.key?(:name)
2336
+ @repository_id = args[:repository_id] if args.key?(:repository_id)
2337
+ end
2338
+ end
2339
+
2340
+ # GitLabRepositoryId identifies a specific repository hosted on GitLab.com or
2341
+ # GitLabEnterprise
2342
+ class GitLabRepositoryId
2343
+ include Google::Apis::Core::Hashable
2344
+
2345
+ # Required. Identifier for the repository. example: "namespace/project-slug",
2346
+ # namespace is usually the username or group ID
2347
+ # Corresponds to the JSON property `id`
2348
+ # @return [String]
2349
+ attr_accessor :id
2350
+
2351
+ # Output only. The ID of the webhook that was created for receiving events from
2352
+ # this repo. We only create and manage a single webhook for each repo.
2353
+ # Corresponds to the JSON property `webhookId`
2354
+ # @return [Fixnum]
2355
+ attr_accessor :webhook_id
2356
+
2357
+ def initialize(**args)
2358
+ update!(**args)
2359
+ end
2360
+
2361
+ # Update properties of this object
2362
+ def update!(**args)
2363
+ @id = args[:id] if args.key?(:id)
2364
+ @webhook_id = args[:webhook_id] if args.key?(:webhook_id)
2365
+ end
2366
+ end
2367
+
2368
+ # GitLabSecrets represents the secrets in Secret Manager for a GitLab
2369
+ # integration.
2370
+ class GitLabSecrets
2371
+ include Google::Apis::Core::Hashable
2372
+
2373
+ # Required. The resource name for the api access token’s secret version
2374
+ # Corresponds to the JSON property `apiAccessTokenVersion`
2375
+ # @return [String]
2376
+ attr_accessor :api_access_token_version
2377
+
2378
+ # Required. Immutable. API Key that will be attached to webhook requests from
2379
+ # GitLab to Cloud Build.
2380
+ # Corresponds to the JSON property `apiKeyVersion`
2381
+ # @return [String]
2382
+ attr_accessor :api_key_version
2383
+
2384
+ # Required. The resource name for the read access token’s secret version
2385
+ # Corresponds to the JSON property `readAccessTokenVersion`
2386
+ # @return [String]
2387
+ attr_accessor :read_access_token_version
2388
+
2389
+ # Required. Immutable. The resource name for the webhook secret’s secret version.
2390
+ # Once this field has been set, it cannot be changed. If you need to change it,
2391
+ # please create another GitLabConfig.
2392
+ # Corresponds to the JSON property `webhookSecretVersion`
2393
+ # @return [String]
2394
+ attr_accessor :webhook_secret_version
2395
+
2396
+ def initialize(**args)
2397
+ update!(**args)
2398
+ end
2399
+
2400
+ # Update properties of this object
2401
+ def update!(**args)
2402
+ @api_access_token_version = args[:api_access_token_version] if args.key?(:api_access_token_version)
2403
+ @api_key_version = args[:api_key_version] if args.key?(:api_key_version)
2404
+ @read_access_token_version = args[:read_access_token_version] if args.key?(:read_access_token_version)
2405
+ @webhook_secret_version = args[:webhook_secret_version] if args.key?(:webhook_secret_version)
2406
+ end
2407
+ end
2408
+
1929
2409
  # GitRepoSource describes a repo and ref of a code repository.
1930
2410
  class GitRepoSource
1931
2411
  include Google::Apis::Core::Hashable
@@ -2257,6 +2737,58 @@ module Google
2257
2737
  end
2258
2738
  end
2259
2739
 
2740
+ # RPC response object returned by ListGitLabConfigs RPC method.
2741
+ class ListGitLabConfigsResponse
2742
+ include Google::Apis::Core::Hashable
2743
+
2744
+ # A list of GitLabConfigs
2745
+ # Corresponds to the JSON property `gitlabConfigs`
2746
+ # @return [Array<Google::Apis::CloudbuildV1::GitLabConfig>]
2747
+ attr_accessor :gitlab_configs
2748
+
2749
+ # A token that can be sent as `page_token` to retrieve the next page If this
2750
+ # field is omitted, there are no subsequent pages.
2751
+ # Corresponds to the JSON property `nextPageToken`
2752
+ # @return [String]
2753
+ attr_accessor :next_page_token
2754
+
2755
+ def initialize(**args)
2756
+ update!(**args)
2757
+ end
2758
+
2759
+ # Update properties of this object
2760
+ def update!(**args)
2761
+ @gitlab_configs = args[:gitlab_configs] if args.key?(:gitlab_configs)
2762
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
2763
+ end
2764
+ end
2765
+
2766
+ # RPC response object returned by the ListGitLabRepositories RPC method.
2767
+ class ListGitLabRepositoriesResponse
2768
+ include Google::Apis::Core::Hashable
2769
+
2770
+ # List of GitLab repositories
2771
+ # Corresponds to the JSON property `gitlabRepositories`
2772
+ # @return [Array<Google::Apis::CloudbuildV1::GitLabRepository>]
2773
+ attr_accessor :gitlab_repositories
2774
+
2775
+ # A token that can be sent as `page_token` to retrieve the next page. If this
2776
+ # field is omitted, there are no subsequent pages.
2777
+ # Corresponds to the JSON property `nextPageToken`
2778
+ # @return [String]
2779
+ attr_accessor :next_page_token
2780
+
2781
+ def initialize(**args)
2782
+ update!(**args)
2783
+ end
2784
+
2785
+ # Update properties of this object
2786
+ def update!(**args)
2787
+ @gitlab_repositories = args[:gitlab_repositories] if args.key?(:gitlab_repositories)
2788
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
2789
+ end
2790
+ end
2791
+
2260
2792
  # RPC response object returned by ListGithubEnterpriseConfigs RPC method.
2261
2793
  class ListGithubEnterpriseConfigsResponse
2262
2794
  include Google::Apis::Core::Hashable
@@ -2874,6 +3406,26 @@ module Google
2874
3406
  end
2875
3407
  end
2876
3408
 
3409
+ # RPC request object accepted by RemoveGitLabConnectedRepository RPC method.
3410
+ class RemoveGitLabConnectedRepositoryRequest
3411
+ include Google::Apis::Core::Hashable
3412
+
3413
+ # GitLabRepositoryId identifies a specific repository hosted on GitLab.com or
3414
+ # GitLabEnterprise
3415
+ # Corresponds to the JSON property `connectedRepository`
3416
+ # @return [Google::Apis::CloudbuildV1::GitLabRepositoryId]
3417
+ attr_accessor :connected_repository
3418
+
3419
+ def initialize(**args)
3420
+ update!(**args)
3421
+ end
3422
+
3423
+ # Update properties of this object
3424
+ def update!(**args)
3425
+ @connected_repository = args[:connected_repository] if args.key?(:connected_repository)
3426
+ end
3427
+ end
3428
+
2877
3429
  # Location of the source in a Google Cloud Source Repository.
2878
3430
  class RepoSource
2879
3431
  include Google::Apis::Core::Hashable
@@ -3254,6 +3806,27 @@ module Google
3254
3806
  end
3255
3807
  end
3256
3808
 
3809
+ # ServiceDirectoryConfig represents Service Directory configuration for a SCM
3810
+ # host connection.
3811
+ class ServiceDirectoryConfig
3812
+ include Google::Apis::Core::Hashable
3813
+
3814
+ # The Service Directory service name. Format: projects/`project`/locations/`
3815
+ # location`/namespaces/`namespace`/services/`service`.
3816
+ # Corresponds to the JSON property `service`
3817
+ # @return [String]
3818
+ attr_accessor :service
3819
+
3820
+ def initialize(**args)
3821
+ update!(**args)
3822
+ end
3823
+
3824
+ # Update properties of this object
3825
+ def update!(**args)
3826
+ @service = args[:service] if args.key?(:service)
3827
+ end
3828
+ end
3829
+
3257
3830
  # SlackDelivery is the delivery configuration for delivering Slack messages via
3258
3831
  # webhooks. See Slack webhook documentation at: https://api.slack.com/messaging/
3259
3832
  # webhooks.
@@ -3555,6 +4128,38 @@ module Google
3555
4128
  end
3556
4129
  end
3557
4130
 
4131
+ # Metadata for `UpdateGitLabConfig` operation.
4132
+ class UpdateGitLabConfigOperationMetadata
4133
+ include Google::Apis::Core::Hashable
4134
+
4135
+ # Time the operation was completed.
4136
+ # Corresponds to the JSON property `completeTime`
4137
+ # @return [String]
4138
+ attr_accessor :complete_time
4139
+
4140
+ # Time the operation was created.
4141
+ # Corresponds to the JSON property `createTime`
4142
+ # @return [String]
4143
+ attr_accessor :create_time
4144
+
4145
+ # The resource name of the GitLabConfig to be created. Format: `projects/`
4146
+ # project`/locations/`location`/gitlabConfigs/`id``.
4147
+ # Corresponds to the JSON property `gitlabConfig`
4148
+ # @return [String]
4149
+ attr_accessor :gitlab_config
4150
+
4151
+ def initialize(**args)
4152
+ update!(**args)
4153
+ end
4154
+
4155
+ # Update properties of this object
4156
+ def update!(**args)
4157
+ @complete_time = args[:complete_time] if args.key?(:complete_time)
4158
+ @create_time = args[:create_time] if args.key?(:create_time)
4159
+ @gitlab_config = args[:gitlab_config] if args.key?(:gitlab_config)
4160
+ end
4161
+ end
4162
+
3558
4163
  # Metadata for the `UpdateWorkerPool` operation.
3559
4164
  class UpdateWorkerPoolOperationMetadata
3560
4165
  include Google::Apis::Core::Hashable