| // This is a generated file (see the discoveryapis_generator project). |
| |
| // ignore_for_file: camel_case_types |
| // ignore_for_file: comment_references |
| // ignore_for_file: file_names |
| // ignore_for_file: library_names |
| // ignore_for_file: lines_longer_than_80_chars |
| // ignore_for_file: non_constant_identifier_names |
| // ignore_for_file: prefer_expression_function_bodies |
| // ignore_for_file: prefer_interpolation_to_compose_strings |
| // ignore_for_file: unnecessary_brace_in_string_interps |
| // ignore_for_file: unnecessary_lambdas |
| // ignore_for_file: unnecessary_string_interpolations |
| |
| /// Cloud Run Admin API - v1 |
| /// |
| /// Deploy and manage user provided container images that scale automatically |
| /// based on incoming requets. The Cloud Run Admin API follows the Knative |
| /// Serving API specification. |
| /// |
| /// For more information, see <https://cloud.google.com/run/> |
| /// |
| /// Create an instance of [CloudRunApi] to access these resources: |
| /// |
| /// - [NamespacesResource] |
| /// - [NamespacesAuthorizeddomainsResource] |
| /// - [NamespacesConfigurationsResource] |
| /// - [NamespacesDomainmappingsResource] |
| /// - [NamespacesRevisionsResource] |
| /// - [NamespacesRoutesResource] |
| /// - [NamespacesServicesResource] |
| /// - [ProjectsResource] |
| /// - [ProjectsAuthorizeddomainsResource] |
| /// - [ProjectsLocationsResource] |
| /// - [ProjectsLocationsAuthorizeddomainsResource] |
| /// - [ProjectsLocationsConfigurationsResource] |
| /// - [ProjectsLocationsDomainmappingsResource] |
| /// - [ProjectsLocationsRevisionsResource] |
| /// - [ProjectsLocationsRoutesResource] |
| /// - [ProjectsLocationsServicesResource] |
| library run.v1; |
| |
| import 'dart:async' as async; |
| import 'dart:convert' as convert; |
| import 'dart:core' as core; |
| |
| import 'package:_discoveryapis_commons/_discoveryapis_commons.dart' as commons; |
| import 'package:http/http.dart' as http; |
| |
| import '../src/user_agent.dart'; |
| |
| export 'package:_discoveryapis_commons/_discoveryapis_commons.dart' |
| show ApiRequestError, DetailedApiRequestError; |
| |
| /// Deploy and manage user provided container images that scale automatically |
| /// based on incoming requets. |
| /// |
| /// The Cloud Run Admin API follows the Knative Serving API specification. |
| class CloudRunApi { |
| /// See, edit, configure, and delete your Google Cloud Platform data |
| static const cloudPlatformScope = |
| 'https://www.googleapis.com/auth/cloud-platform'; |
| |
| final commons.ApiRequester _requester; |
| |
| NamespacesResource get namespaces => NamespacesResource(_requester); |
| ProjectsResource get projects => ProjectsResource(_requester); |
| |
| CloudRunApi(http.Client client, |
| {core.String rootUrl = 'https://run.googleapis.com/', |
| core.String servicePath = ''}) |
| : _requester = |
| commons.ApiRequester(client, rootUrl, servicePath, requestHeaders); |
| } |
| |
| class NamespacesResource { |
| final commons.ApiRequester _requester; |
| |
| NamespacesAuthorizeddomainsResource get authorizeddomains => |
| NamespacesAuthorizeddomainsResource(_requester); |
| NamespacesConfigurationsResource get configurations => |
| NamespacesConfigurationsResource(_requester); |
| NamespacesDomainmappingsResource get domainmappings => |
| NamespacesDomainmappingsResource(_requester); |
| NamespacesRevisionsResource get revisions => |
| NamespacesRevisionsResource(_requester); |
| NamespacesRoutesResource get routes => NamespacesRoutesResource(_requester); |
| NamespacesServicesResource get services => |
| NamespacesServicesResource(_requester); |
| |
| NamespacesResource(commons.ApiRequester client) : _requester = client; |
| } |
| |
| class NamespacesAuthorizeddomainsResource { |
| final commons.ApiRequester _requester; |
| |
| NamespacesAuthorizeddomainsResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// List authorized domains. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Name of the parent Project resource. Example: |
| /// `projects/myproject`. |
| /// Value must have pattern `^namespaces/\[^/\]+$`. |
| /// |
| /// [pageSize] - Maximum results to return per page. |
| /// |
| /// [pageToken] - Continuation token for fetching the next page of results. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListAuthorizedDomainsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListAuthorizedDomainsResponse> list( |
| core.String parent, { |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (pageSize != null) 'pageSize': ['${pageSize}'], |
| if (pageToken != null) 'pageToken': [pageToken], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/domains.cloudrun.com/v1/' + |
| core.Uri.encodeFull('$parent') + |
| '/authorizeddomains'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListAuthorizedDomainsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class NamespacesConfigurationsResource { |
| final commons.ApiRequester _requester; |
| |
| NamespacesConfigurationsResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Get information about a configuration. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the configuration to retrieve. For Cloud Run (fully |
| /// managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern `^namespaces/\[^/\]+/configurations/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Configuration]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Configuration> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/serving.knative.dev/v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return Configuration.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// List configurations. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - The namespace from which the configurations should be listed. |
| /// For Cloud Run (fully managed), replace {namespace_id} with the project ID |
| /// or number. |
| /// Value must have pattern `^namespaces/\[^/\]+$`. |
| /// |
| /// [continue_] - Optional encoded string to continue paging. |
| /// |
| /// [fieldSelector] - Allows to filter resources based on a specific value for |
| /// a field name. Send this in a query string format. i.e. |
| /// 'metadata.name%3Dlorem'. Not currently used by Cloud Run. |
| /// |
| /// [includeUninitialized] - Not currently used by Cloud Run. |
| /// |
| /// [labelSelector] - Allows to filter resources based on a label. Supported |
| /// operations are =, !=, exists, in, and notIn. |
| /// |
| /// [limit] - The maximum number of records that should be returned. |
| /// |
| /// [resourceVersion] - The baseline resource version from which the list or |
| /// watch operation should start. Not currently used by Cloud Run. |
| /// |
| /// [watch] - Flag that indicates that the client expects to watch this |
| /// resource as well. Not currently used by Cloud Run. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListConfigurationsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListConfigurationsResponse> list( |
| core.String parent, { |
| core.String? continue_, |
| core.String? fieldSelector, |
| core.bool? includeUninitialized, |
| core.String? labelSelector, |
| core.int? limit, |
| core.String? resourceVersion, |
| core.bool? watch, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (continue_ != null) 'continue': [continue_], |
| if (fieldSelector != null) 'fieldSelector': [fieldSelector], |
| if (includeUninitialized != null) |
| 'includeUninitialized': ['${includeUninitialized}'], |
| if (labelSelector != null) 'labelSelector': [labelSelector], |
| if (limit != null) 'limit': ['${limit}'], |
| if (resourceVersion != null) 'resourceVersion': [resourceVersion], |
| if (watch != null) 'watch': ['${watch}'], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/serving.knative.dev/v1/' + |
| core.Uri.encodeFull('$parent') + |
| '/configurations'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListConfigurationsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class NamespacesDomainmappingsResource { |
| final commons.ApiRequester _requester; |
| |
| NamespacesDomainmappingsResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Create a new domain mapping. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - The namespace in which the domain mapping should be created. |
| /// For Cloud Run (fully managed), replace {namespace_id} with the project ID |
| /// or number. |
| /// Value must have pattern `^namespaces/\[^/\]+$`. |
| /// |
| /// [dryRun] - Indicates that the server should validate the request and |
| /// populate default values without persisting the request. Supported values: |
| /// `all` |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [DomainMapping]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<DomainMapping> create( |
| DomainMapping request, |
| core.String parent, { |
| core.String? dryRun, |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (dryRun != null) 'dryRun': [dryRun], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/domains.cloudrun.com/v1/' + |
| core.Uri.encodeFull('$parent') + |
| '/domainmappings'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return DomainMapping.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Delete a domain mapping. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the domain mapping to delete. For Cloud Run (fully |
| /// managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern `^namespaces/\[^/\]+/domainmappings/\[^/\]+$`. |
| /// |
| /// [apiVersion] - Cloud Run currently ignores this parameter. |
| /// |
| /// [dryRun] - Indicates that the server should validate the request and |
| /// populate default values without persisting the request. Supported values: |
| /// `all` |
| /// |
| /// [kind] - Cloud Run currently ignores this parameter. |
| /// |
| /// [propagationPolicy] - Specifies the propagation policy of delete. Cloud |
| /// Run currently ignores this setting, and deletes in the background. Please |
| /// see kubernetes.io/docs/concepts/workloads/controllers/garbage-collection/ |
| /// for more information. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Status]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Status> delete( |
| core.String name, { |
| core.String? apiVersion, |
| core.String? dryRun, |
| core.String? kind, |
| core.String? propagationPolicy, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (apiVersion != null) 'apiVersion': [apiVersion], |
| if (dryRun != null) 'dryRun': [dryRun], |
| if (kind != null) 'kind': [kind], |
| if (propagationPolicy != null) 'propagationPolicy': [propagationPolicy], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/domains.cloudrun.com/v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'DELETE', |
| queryParams: _queryParams, |
| ); |
| return Status.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Get information about a domain mapping. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the domain mapping to retrieve. For Cloud Run (fully |
| /// managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern `^namespaces/\[^/\]+/domainmappings/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [DomainMapping]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<DomainMapping> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/domains.cloudrun.com/v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return DomainMapping.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// List domain mappings. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - The namespace from which the domain mappings should be listed. |
| /// For Cloud Run (fully managed), replace {namespace_id} with the project ID |
| /// or number. |
| /// Value must have pattern `^namespaces/\[^/\]+$`. |
| /// |
| /// [continue_] - Optional encoded string to continue paging. |
| /// |
| /// [fieldSelector] - Allows to filter resources based on a specific value for |
| /// a field name. Send this in a query string format. i.e. |
| /// 'metadata.name%3Dlorem'. Not currently used by Cloud Run. |
| /// |
| /// [includeUninitialized] - Not currently used by Cloud Run. |
| /// |
| /// [labelSelector] - Allows to filter resources based on a label. Supported |
| /// operations are =, !=, exists, in, and notIn. |
| /// |
| /// [limit] - The maximum number of records that should be returned. |
| /// |
| /// [resourceVersion] - The baseline resource version from which the list or |
| /// watch operation should start. Not currently used by Cloud Run. |
| /// |
| /// [watch] - Flag that indicates that the client expects to watch this |
| /// resource as well. Not currently used by Cloud Run. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListDomainMappingsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListDomainMappingsResponse> list( |
| core.String parent, { |
| core.String? continue_, |
| core.String? fieldSelector, |
| core.bool? includeUninitialized, |
| core.String? labelSelector, |
| core.int? limit, |
| core.String? resourceVersion, |
| core.bool? watch, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (continue_ != null) 'continue': [continue_], |
| if (fieldSelector != null) 'fieldSelector': [fieldSelector], |
| if (includeUninitialized != null) |
| 'includeUninitialized': ['${includeUninitialized}'], |
| if (labelSelector != null) 'labelSelector': [labelSelector], |
| if (limit != null) 'limit': ['${limit}'], |
| if (resourceVersion != null) 'resourceVersion': [resourceVersion], |
| if (watch != null) 'watch': ['${watch}'], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/domains.cloudrun.com/v1/' + |
| core.Uri.encodeFull('$parent') + |
| '/domainmappings'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListDomainMappingsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class NamespacesRevisionsResource { |
| final commons.ApiRequester _requester; |
| |
| NamespacesRevisionsResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Delete a revision. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the revision to delete. For Cloud Run (fully |
| /// managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern `^namespaces/\[^/\]+/revisions/\[^/\]+$`. |
| /// |
| /// [apiVersion] - Cloud Run currently ignores this parameter. |
| /// |
| /// [dryRun] - Indicates that the server should validate the request and |
| /// populate default values without persisting the request. Supported values: |
| /// `all` |
| /// |
| /// [kind] - Cloud Run currently ignores this parameter. |
| /// |
| /// [propagationPolicy] - Specifies the propagation policy of delete. Cloud |
| /// Run currently ignores this setting, and deletes in the background. Please |
| /// see kubernetes.io/docs/concepts/workloads/controllers/garbage-collection/ |
| /// for more information. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Status]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Status> delete( |
| core.String name, { |
| core.String? apiVersion, |
| core.String? dryRun, |
| core.String? kind, |
| core.String? propagationPolicy, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (apiVersion != null) 'apiVersion': [apiVersion], |
| if (dryRun != null) 'dryRun': [dryRun], |
| if (kind != null) 'kind': [kind], |
| if (propagationPolicy != null) 'propagationPolicy': [propagationPolicy], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/serving.knative.dev/v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'DELETE', |
| queryParams: _queryParams, |
| ); |
| return Status.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Get information about a revision. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the revision to retrieve. For Cloud Run (fully |
| /// managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern `^namespaces/\[^/\]+/revisions/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Revision]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Revision> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/serving.knative.dev/v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return Revision.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// List revisions. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - The namespace from which the revisions should be listed. For |
| /// Cloud Run (fully managed), replace {namespace_id} with the project ID or |
| /// number. |
| /// Value must have pattern `^namespaces/\[^/\]+$`. |
| /// |
| /// [continue_] - Optional encoded string to continue paging. |
| /// |
| /// [fieldSelector] - Allows to filter resources based on a specific value for |
| /// a field name. Send this in a query string format. i.e. |
| /// 'metadata.name%3Dlorem'. Not currently used by Cloud Run. |
| /// |
| /// [includeUninitialized] - Not currently used by Cloud Run. |
| /// |
| /// [labelSelector] - Allows to filter resources based on a label. Supported |
| /// operations are =, !=, exists, in, and notIn. |
| /// |
| /// [limit] - The maximum number of records that should be returned. |
| /// |
| /// [resourceVersion] - The baseline resource version from which the list or |
| /// watch operation should start. Not currently used by Cloud Run. |
| /// |
| /// [watch] - Flag that indicates that the client expects to watch this |
| /// resource as well. Not currently used by Cloud Run. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListRevisionsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListRevisionsResponse> list( |
| core.String parent, { |
| core.String? continue_, |
| core.String? fieldSelector, |
| core.bool? includeUninitialized, |
| core.String? labelSelector, |
| core.int? limit, |
| core.String? resourceVersion, |
| core.bool? watch, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (continue_ != null) 'continue': [continue_], |
| if (fieldSelector != null) 'fieldSelector': [fieldSelector], |
| if (includeUninitialized != null) |
| 'includeUninitialized': ['${includeUninitialized}'], |
| if (labelSelector != null) 'labelSelector': [labelSelector], |
| if (limit != null) 'limit': ['${limit}'], |
| if (resourceVersion != null) 'resourceVersion': [resourceVersion], |
| if (watch != null) 'watch': ['${watch}'], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/serving.knative.dev/v1/' + |
| core.Uri.encodeFull('$parent') + |
| '/revisions'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListRevisionsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class NamespacesRoutesResource { |
| final commons.ApiRequester _requester; |
| |
| NamespacesRoutesResource(commons.ApiRequester client) : _requester = client; |
| |
| /// Get information about a route. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the route to retrieve. For Cloud Run (fully managed), |
| /// replace {namespace_id} with the project ID or number. |
| /// Value must have pattern `^namespaces/\[^/\]+/routes/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Route]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Route> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/serving.knative.dev/v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return Route.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// List routes. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - The namespace from which the routes should be listed. For Cloud |
| /// Run (fully managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern `^namespaces/\[^/\]+$`. |
| /// |
| /// [continue_] - Optional encoded string to continue paging. |
| /// |
| /// [fieldSelector] - Allows to filter resources based on a specific value for |
| /// a field name. Send this in a query string format. i.e. |
| /// 'metadata.name%3Dlorem'. Not currently used by Cloud Run. |
| /// |
| /// [includeUninitialized] - Not currently used by Cloud Run. |
| /// |
| /// [labelSelector] - Allows to filter resources based on a label. Supported |
| /// operations are =, !=, exists, in, and notIn. |
| /// |
| /// [limit] - The maximum number of records that should be returned. |
| /// |
| /// [resourceVersion] - The baseline resource version from which the list or |
| /// watch operation should start. Not currently used by Cloud Run. |
| /// |
| /// [watch] - Flag that indicates that the client expects to watch this |
| /// resource as well. Not currently used by Cloud Run. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListRoutesResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListRoutesResponse> list( |
| core.String parent, { |
| core.String? continue_, |
| core.String? fieldSelector, |
| core.bool? includeUninitialized, |
| core.String? labelSelector, |
| core.int? limit, |
| core.String? resourceVersion, |
| core.bool? watch, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (continue_ != null) 'continue': [continue_], |
| if (fieldSelector != null) 'fieldSelector': [fieldSelector], |
| if (includeUninitialized != null) |
| 'includeUninitialized': ['${includeUninitialized}'], |
| if (labelSelector != null) 'labelSelector': [labelSelector], |
| if (limit != null) 'limit': ['${limit}'], |
| if (resourceVersion != null) 'resourceVersion': [resourceVersion], |
| if (watch != null) 'watch': ['${watch}'], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/serving.knative.dev/v1/' + |
| core.Uri.encodeFull('$parent') + |
| '/routes'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListRoutesResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class NamespacesServicesResource { |
| final commons.ApiRequester _requester; |
| |
| NamespacesServicesResource(commons.ApiRequester client) : _requester = client; |
| |
| /// Create a service. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - The namespace in which the service should be created. For Cloud |
| /// Run (fully managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern `^namespaces/\[^/\]+$`. |
| /// |
| /// [dryRun] - Indicates that the server should validate the request and |
| /// populate default values without persisting the request. Supported values: |
| /// `all` |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Service]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Service> create( |
| Service request, |
| core.String parent, { |
| core.String? dryRun, |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (dryRun != null) 'dryRun': [dryRun], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/serving.knative.dev/v1/' + |
| core.Uri.encodeFull('$parent') + |
| '/services'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Service.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Delete a service. |
| /// |
| /// This will cause the Service to stop serving traffic and will delete the |
| /// child entities like Routes, Configurations and Revisions. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the service to delete. For Cloud Run (fully managed), |
| /// replace {namespace_id} with the project ID or number. |
| /// Value must have pattern `^namespaces/\[^/\]+/services/\[^/\]+$`. |
| /// |
| /// [apiVersion] - Cloud Run currently ignores this parameter. |
| /// |
| /// [dryRun] - Indicates that the server should validate the request and |
| /// populate default values without persisting the request. Supported values: |
| /// `all` |
| /// |
| /// [kind] - Cloud Run currently ignores this parameter. |
| /// |
| /// [propagationPolicy] - Specifies the propagation policy of delete. Cloud |
| /// Run currently ignores this setting, and deletes in the background. Please |
| /// see kubernetes.io/docs/concepts/workloads/controllers/garbage-collection/ |
| /// for more information. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Status]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Status> delete( |
| core.String name, { |
| core.String? apiVersion, |
| core.String? dryRun, |
| core.String? kind, |
| core.String? propagationPolicy, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (apiVersion != null) 'apiVersion': [apiVersion], |
| if (dryRun != null) 'dryRun': [dryRun], |
| if (kind != null) 'kind': [kind], |
| if (propagationPolicy != null) 'propagationPolicy': [propagationPolicy], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/serving.knative.dev/v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'DELETE', |
| queryParams: _queryParams, |
| ); |
| return Status.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Get information about a service. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the service to retrieve. For Cloud Run (fully |
| /// managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern `^namespaces/\[^/\]+/services/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Service]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Service> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/serving.knative.dev/v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return Service.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// List services. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - The namespace from which the services should be listed. For |
| /// Cloud Run (fully managed), replace {namespace_id} with the project ID or |
| /// number. |
| /// Value must have pattern `^namespaces/\[^/\]+$`. |
| /// |
| /// [continue_] - Optional encoded string to continue paging. |
| /// |
| /// [fieldSelector] - Allows to filter resources based on a specific value for |
| /// a field name. Send this in a query string format. i.e. |
| /// 'metadata.name%3Dlorem'. Not currently used by Cloud Run. |
| /// |
| /// [includeUninitialized] - Not currently used by Cloud Run. |
| /// |
| /// [labelSelector] - Allows to filter resources based on a label. Supported |
| /// operations are =, !=, exists, in, and notIn. |
| /// |
| /// [limit] - The maximum number of records that should be returned. |
| /// |
| /// [resourceVersion] - The baseline resource version from which the list or |
| /// watch operation should start. Not currently used by Cloud Run. |
| /// |
| /// [watch] - Flag that indicates that the client expects to watch this |
| /// resource as well. Not currently used by Cloud Run. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListServicesResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListServicesResponse> list( |
| core.String parent, { |
| core.String? continue_, |
| core.String? fieldSelector, |
| core.bool? includeUninitialized, |
| core.String? labelSelector, |
| core.int? limit, |
| core.String? resourceVersion, |
| core.bool? watch, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (continue_ != null) 'continue': [continue_], |
| if (fieldSelector != null) 'fieldSelector': [fieldSelector], |
| if (includeUninitialized != null) |
| 'includeUninitialized': ['${includeUninitialized}'], |
| if (labelSelector != null) 'labelSelector': [labelSelector], |
| if (limit != null) 'limit': ['${limit}'], |
| if (resourceVersion != null) 'resourceVersion': [resourceVersion], |
| if (watch != null) 'watch': ['${watch}'], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/serving.knative.dev/v1/' + |
| core.Uri.encodeFull('$parent') + |
| '/services'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListServicesResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Replace a service. |
| /// |
| /// Only the spec and metadata labels and annotations are modifiable. After |
| /// the Update request, Cloud Run will work to make the 'status' match the |
| /// requested 'spec'. May provide metadata.resourceVersion to enforce update |
| /// from last read for optimistic concurrency control. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the service being replaced. For Cloud Run (fully |
| /// managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern `^namespaces/\[^/\]+/services/\[^/\]+$`. |
| /// |
| /// [dryRun] - Indicates that the server should validate the request and |
| /// populate default values without persisting the request. Supported values: |
| /// `all` |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Service]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Service> replaceService( |
| Service request, |
| core.String name, { |
| core.String? dryRun, |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (dryRun != null) 'dryRun': [dryRun], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'apis/serving.knative.dev/v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'PUT', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Service.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsAuthorizeddomainsResource get authorizeddomains => |
| ProjectsAuthorizeddomainsResource(_requester); |
| ProjectsLocationsResource get locations => |
| ProjectsLocationsResource(_requester); |
| |
| ProjectsResource(commons.ApiRequester client) : _requester = client; |
| } |
| |
| class ProjectsAuthorizeddomainsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsAuthorizeddomainsResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// List authorized domains. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Name of the parent Project resource. Example: |
| /// `projects/myproject`. |
| /// Value must have pattern `^projects/\[^/\]+$`. |
| /// |
| /// [pageSize] - Maximum results to return per page. |
| /// |
| /// [pageToken] - Continuation token for fetching the next page of results. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListAuthorizedDomainsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListAuthorizedDomainsResponse> list( |
| core.String parent, { |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (pageSize != null) 'pageSize': ['${pageSize}'], |
| if (pageToken != null) 'pageToken': [pageToken], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$parent') + '/authorizeddomains'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListAuthorizedDomainsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsAuthorizeddomainsResource get authorizeddomains => |
| ProjectsLocationsAuthorizeddomainsResource(_requester); |
| ProjectsLocationsConfigurationsResource get configurations => |
| ProjectsLocationsConfigurationsResource(_requester); |
| ProjectsLocationsDomainmappingsResource get domainmappings => |
| ProjectsLocationsDomainmappingsResource(_requester); |
| ProjectsLocationsRevisionsResource get revisions => |
| ProjectsLocationsRevisionsResource(_requester); |
| ProjectsLocationsRoutesResource get routes => |
| ProjectsLocationsRoutesResource(_requester); |
| ProjectsLocationsServicesResource get services => |
| ProjectsLocationsServicesResource(_requester); |
| |
| ProjectsLocationsResource(commons.ApiRequester client) : _requester = client; |
| |
| /// Lists information about the supported locations for this service. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The resource that owns the locations collection, if applicable. |
| /// Value must have pattern `^projects/\[^/\]+$`. |
| /// |
| /// [filter] - A filter to narrow down results to a preferred subset. The |
| /// filtering language accepts strings like "displayName=tokyo", and is |
| /// documented in more detail in \[AIP-160\](https://google.aip.dev/160). |
| /// |
| /// [pageSize] - The maximum number of results to return. If not set, the |
| /// service selects a default. |
| /// |
| /// [pageToken] - A page token received from the `next_page_token` field in |
| /// the response. Send that page token to receive the subsequent page. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListLocationsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListLocationsResponse> list( |
| core.String name, { |
| core.String? filter, |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (filter != null) 'filter': [filter], |
| if (pageSize != null) 'pageSize': ['${pageSize}'], |
| if (pageToken != null) 'pageToken': [pageToken], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name') + '/locations'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListLocationsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsAuthorizeddomainsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsAuthorizeddomainsResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// List authorized domains. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - Name of the parent Project resource. Example: |
| /// `projects/myproject`. |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [pageSize] - Maximum results to return per page. |
| /// |
| /// [pageToken] - Continuation token for fetching the next page of results. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListAuthorizedDomainsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListAuthorizedDomainsResponse> list( |
| core.String parent, { |
| core.int? pageSize, |
| core.String? pageToken, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (pageSize != null) 'pageSize': ['${pageSize}'], |
| if (pageToken != null) 'pageToken': [pageToken], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$parent') + '/authorizeddomains'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListAuthorizedDomainsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsConfigurationsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsConfigurationsResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Get information about a configuration. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the configuration to retrieve. For Cloud Run (fully |
| /// managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/configurations/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Configuration]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Configuration> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return Configuration.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// List configurations. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - The namespace from which the configurations should be listed. |
| /// For Cloud Run (fully managed), replace {namespace_id} with the project ID |
| /// or number. |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [continue_] - Optional encoded string to continue paging. |
| /// |
| /// [fieldSelector] - Allows to filter resources based on a specific value for |
| /// a field name. Send this in a query string format. i.e. |
| /// 'metadata.name%3Dlorem'. Not currently used by Cloud Run. |
| /// |
| /// [includeUninitialized] - Not currently used by Cloud Run. |
| /// |
| /// [labelSelector] - Allows to filter resources based on a label. Supported |
| /// operations are =, !=, exists, in, and notIn. |
| /// |
| /// [limit] - The maximum number of records that should be returned. |
| /// |
| /// [resourceVersion] - The baseline resource version from which the list or |
| /// watch operation should start. Not currently used by Cloud Run. |
| /// |
| /// [watch] - Flag that indicates that the client expects to watch this |
| /// resource as well. Not currently used by Cloud Run. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListConfigurationsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListConfigurationsResponse> list( |
| core.String parent, { |
| core.String? continue_, |
| core.String? fieldSelector, |
| core.bool? includeUninitialized, |
| core.String? labelSelector, |
| core.int? limit, |
| core.String? resourceVersion, |
| core.bool? watch, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (continue_ != null) 'continue': [continue_], |
| if (fieldSelector != null) 'fieldSelector': [fieldSelector], |
| if (includeUninitialized != null) |
| 'includeUninitialized': ['${includeUninitialized}'], |
| if (labelSelector != null) 'labelSelector': [labelSelector], |
| if (limit != null) 'limit': ['${limit}'], |
| if (resourceVersion != null) 'resourceVersion': [resourceVersion], |
| if (watch != null) 'watch': ['${watch}'], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$parent') + '/configurations'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListConfigurationsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsDomainmappingsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsDomainmappingsResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Create a new domain mapping. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - The namespace in which the domain mapping should be created. |
| /// For Cloud Run (fully managed), replace {namespace_id} with the project ID |
| /// or number. |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [dryRun] - Indicates that the server should validate the request and |
| /// populate default values without persisting the request. Supported values: |
| /// `all` |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [DomainMapping]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<DomainMapping> create( |
| DomainMapping request, |
| core.String parent, { |
| core.String? dryRun, |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (dryRun != null) 'dryRun': [dryRun], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$parent') + '/domainmappings'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return DomainMapping.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Delete a domain mapping. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the domain mapping to delete. For Cloud Run (fully |
| /// managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/domainmappings/\[^/\]+$`. |
| /// |
| /// [apiVersion] - Cloud Run currently ignores this parameter. |
| /// |
| /// [dryRun] - Indicates that the server should validate the request and |
| /// populate default values without persisting the request. Supported values: |
| /// `all` |
| /// |
| /// [kind] - Cloud Run currently ignores this parameter. |
| /// |
| /// [propagationPolicy] - Specifies the propagation policy of delete. Cloud |
| /// Run currently ignores this setting, and deletes in the background. Please |
| /// see kubernetes.io/docs/concepts/workloads/controllers/garbage-collection/ |
| /// for more information. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Status]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Status> delete( |
| core.String name, { |
| core.String? apiVersion, |
| core.String? dryRun, |
| core.String? kind, |
| core.String? propagationPolicy, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (apiVersion != null) 'apiVersion': [apiVersion], |
| if (dryRun != null) 'dryRun': [dryRun], |
| if (kind != null) 'kind': [kind], |
| if (propagationPolicy != null) 'propagationPolicy': [propagationPolicy], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'DELETE', |
| queryParams: _queryParams, |
| ); |
| return Status.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Get information about a domain mapping. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the domain mapping to retrieve. For Cloud Run (fully |
| /// managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/domainmappings/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [DomainMapping]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<DomainMapping> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return DomainMapping.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// List domain mappings. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - The namespace from which the domain mappings should be listed. |
| /// For Cloud Run (fully managed), replace {namespace_id} with the project ID |
| /// or number. |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [continue_] - Optional encoded string to continue paging. |
| /// |
| /// [fieldSelector] - Allows to filter resources based on a specific value for |
| /// a field name. Send this in a query string format. i.e. |
| /// 'metadata.name%3Dlorem'. Not currently used by Cloud Run. |
| /// |
| /// [includeUninitialized] - Not currently used by Cloud Run. |
| /// |
| /// [labelSelector] - Allows to filter resources based on a label. Supported |
| /// operations are =, !=, exists, in, and notIn. |
| /// |
| /// [limit] - The maximum number of records that should be returned. |
| /// |
| /// [resourceVersion] - The baseline resource version from which the list or |
| /// watch operation should start. Not currently used by Cloud Run. |
| /// |
| /// [watch] - Flag that indicates that the client expects to watch this |
| /// resource as well. Not currently used by Cloud Run. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListDomainMappingsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListDomainMappingsResponse> list( |
| core.String parent, { |
| core.String? continue_, |
| core.String? fieldSelector, |
| core.bool? includeUninitialized, |
| core.String? labelSelector, |
| core.int? limit, |
| core.String? resourceVersion, |
| core.bool? watch, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (continue_ != null) 'continue': [continue_], |
| if (fieldSelector != null) 'fieldSelector': [fieldSelector], |
| if (includeUninitialized != null) |
| 'includeUninitialized': ['${includeUninitialized}'], |
| if (labelSelector != null) 'labelSelector': [labelSelector], |
| if (limit != null) 'limit': ['${limit}'], |
| if (resourceVersion != null) 'resourceVersion': [resourceVersion], |
| if (watch != null) 'watch': ['${watch}'], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$parent') + '/domainmappings'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListDomainMappingsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsRevisionsResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsRevisionsResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Delete a revision. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the revision to delete. For Cloud Run (fully |
| /// managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/revisions/\[^/\]+$`. |
| /// |
| /// [apiVersion] - Cloud Run currently ignores this parameter. |
| /// |
| /// [dryRun] - Indicates that the server should validate the request and |
| /// populate default values without persisting the request. Supported values: |
| /// `all` |
| /// |
| /// [kind] - Cloud Run currently ignores this parameter. |
| /// |
| /// [propagationPolicy] - Specifies the propagation policy of delete. Cloud |
| /// Run currently ignores this setting, and deletes in the background. Please |
| /// see kubernetes.io/docs/concepts/workloads/controllers/garbage-collection/ |
| /// for more information. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Status]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Status> delete( |
| core.String name, { |
| core.String? apiVersion, |
| core.String? dryRun, |
| core.String? kind, |
| core.String? propagationPolicy, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (apiVersion != null) 'apiVersion': [apiVersion], |
| if (dryRun != null) 'dryRun': [dryRun], |
| if (kind != null) 'kind': [kind], |
| if (propagationPolicy != null) 'propagationPolicy': [propagationPolicy], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'DELETE', |
| queryParams: _queryParams, |
| ); |
| return Status.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Get information about a revision. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the revision to retrieve. For Cloud Run (fully |
| /// managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/revisions/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Revision]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Revision> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return Revision.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// List revisions. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - The namespace from which the revisions should be listed. For |
| /// Cloud Run (fully managed), replace {namespace_id} with the project ID or |
| /// number. |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [continue_] - Optional encoded string to continue paging. |
| /// |
| /// [fieldSelector] - Allows to filter resources based on a specific value for |
| /// a field name. Send this in a query string format. i.e. |
| /// 'metadata.name%3Dlorem'. Not currently used by Cloud Run. |
| /// |
| /// [includeUninitialized] - Not currently used by Cloud Run. |
| /// |
| /// [labelSelector] - Allows to filter resources based on a label. Supported |
| /// operations are =, !=, exists, in, and notIn. |
| /// |
| /// [limit] - The maximum number of records that should be returned. |
| /// |
| /// [resourceVersion] - The baseline resource version from which the list or |
| /// watch operation should start. Not currently used by Cloud Run. |
| /// |
| /// [watch] - Flag that indicates that the client expects to watch this |
| /// resource as well. Not currently used by Cloud Run. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListRevisionsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListRevisionsResponse> list( |
| core.String parent, { |
| core.String? continue_, |
| core.String? fieldSelector, |
| core.bool? includeUninitialized, |
| core.String? labelSelector, |
| core.int? limit, |
| core.String? resourceVersion, |
| core.bool? watch, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (continue_ != null) 'continue': [continue_], |
| if (fieldSelector != null) 'fieldSelector': [fieldSelector], |
| if (includeUninitialized != null) |
| 'includeUninitialized': ['${includeUninitialized}'], |
| if (labelSelector != null) 'labelSelector': [labelSelector], |
| if (limit != null) 'limit': ['${limit}'], |
| if (resourceVersion != null) 'resourceVersion': [resourceVersion], |
| if (watch != null) 'watch': ['${watch}'], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$parent') + '/revisions'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListRevisionsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsRoutesResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsRoutesResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Get information about a route. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the route to retrieve. For Cloud Run (fully managed), |
| /// replace {namespace_id} with the project ID or number. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/routes/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Route]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Route> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return Route.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// List routes. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - The namespace from which the routes should be listed. For Cloud |
| /// Run (fully managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [continue_] - Optional encoded string to continue paging. |
| /// |
| /// [fieldSelector] - Allows to filter resources based on a specific value for |
| /// a field name. Send this in a query string format. i.e. |
| /// 'metadata.name%3Dlorem'. Not currently used by Cloud Run. |
| /// |
| /// [includeUninitialized] - Not currently used by Cloud Run. |
| /// |
| /// [labelSelector] - Allows to filter resources based on a label. Supported |
| /// operations are =, !=, exists, in, and notIn. |
| /// |
| /// [limit] - The maximum number of records that should be returned. |
| /// |
| /// [resourceVersion] - The baseline resource version from which the list or |
| /// watch operation should start. Not currently used by Cloud Run. |
| /// |
| /// [watch] - Flag that indicates that the client expects to watch this |
| /// resource as well. Not currently used by Cloud Run. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListRoutesResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListRoutesResponse> list( |
| core.String parent, { |
| core.String? continue_, |
| core.String? fieldSelector, |
| core.bool? includeUninitialized, |
| core.String? labelSelector, |
| core.int? limit, |
| core.String? resourceVersion, |
| core.bool? watch, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (continue_ != null) 'continue': [continue_], |
| if (fieldSelector != null) 'fieldSelector': [fieldSelector], |
| if (includeUninitialized != null) |
| 'includeUninitialized': ['${includeUninitialized}'], |
| if (labelSelector != null) 'labelSelector': [labelSelector], |
| if (limit != null) 'limit': ['${limit}'], |
| if (resourceVersion != null) 'resourceVersion': [resourceVersion], |
| if (watch != null) 'watch': ['${watch}'], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$parent') + '/routes'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListRoutesResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| class ProjectsLocationsServicesResource { |
| final commons.ApiRequester _requester; |
| |
| ProjectsLocationsServicesResource(commons.ApiRequester client) |
| : _requester = client; |
| |
| /// Create a service. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - The namespace in which the service should be created. For Cloud |
| /// Run (fully managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [dryRun] - Indicates that the server should validate the request and |
| /// populate default values without persisting the request. Supported values: |
| /// `all` |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Service]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Service> create( |
| Service request, |
| core.String parent, { |
| core.String? dryRun, |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (dryRun != null) 'dryRun': [dryRun], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$parent') + '/services'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Service.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Delete a service. |
| /// |
| /// This will cause the Service to stop serving traffic and will delete the |
| /// child entities like Routes, Configurations and Revisions. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the service to delete. For Cloud Run (fully managed), |
| /// replace {namespace_id} with the project ID or number. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/services/\[^/\]+$`. |
| /// |
| /// [apiVersion] - Cloud Run currently ignores this parameter. |
| /// |
| /// [dryRun] - Indicates that the server should validate the request and |
| /// populate default values without persisting the request. Supported values: |
| /// `all` |
| /// |
| /// [kind] - Cloud Run currently ignores this parameter. |
| /// |
| /// [propagationPolicy] - Specifies the propagation policy of delete. Cloud |
| /// Run currently ignores this setting, and deletes in the background. Please |
| /// see kubernetes.io/docs/concepts/workloads/controllers/garbage-collection/ |
| /// for more information. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Status]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Status> delete( |
| core.String name, { |
| core.String? apiVersion, |
| core.String? dryRun, |
| core.String? kind, |
| core.String? propagationPolicy, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (apiVersion != null) 'apiVersion': [apiVersion], |
| if (dryRun != null) 'dryRun': [dryRun], |
| if (kind != null) 'kind': [kind], |
| if (propagationPolicy != null) 'propagationPolicy': [propagationPolicy], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'DELETE', |
| queryParams: _queryParams, |
| ); |
| return Status.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Get information about a service. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the service to retrieve. For Cloud Run (fully |
| /// managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/services/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Service]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Service> get( |
| core.String name, { |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return Service.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Get the IAM Access Control policy currently in effect for the given Cloud |
| /// Run service. |
| /// |
| /// This result does not include any inherited policies. |
| /// |
| /// Request parameters: |
| /// |
| /// [resource] - REQUIRED: The resource for which the policy is being |
| /// requested. See the operation documentation for the appropriate value for |
| /// this field. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/services/\[^/\]+$`. |
| /// |
| /// [options_requestedPolicyVersion] - Optional. The policy format version to |
| /// be returned. Valid values are 0, 1, and 3. Requests specifying an invalid |
| /// value will be rejected. Requests for policies with any conditional |
| /// bindings must specify version 3. Policies without any conditional bindings |
| /// may specify any valid value or leave the field unset. To learn which |
| /// resources support conditions in their IAM policies, see the |
| /// [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Policy]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Policy> getIamPolicy( |
| core.String resource, { |
| core.int? options_requestedPolicyVersion, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (options_requestedPolicyVersion != null) |
| 'options.requestedPolicyVersion': ['${options_requestedPolicyVersion}'], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$resource') + ':getIamPolicy'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return Policy.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// List services. |
| /// |
| /// Request parameters: |
| /// |
| /// [parent] - The namespace from which the services should be listed. For |
| /// Cloud Run (fully managed), replace {namespace_id} with the project ID or |
| /// number. |
| /// Value must have pattern `^projects/\[^/\]+/locations/\[^/\]+$`. |
| /// |
| /// [continue_] - Optional encoded string to continue paging. |
| /// |
| /// [fieldSelector] - Allows to filter resources based on a specific value for |
| /// a field name. Send this in a query string format. i.e. |
| /// 'metadata.name%3Dlorem'. Not currently used by Cloud Run. |
| /// |
| /// [includeUninitialized] - Not currently used by Cloud Run. |
| /// |
| /// [labelSelector] - Allows to filter resources based on a label. Supported |
| /// operations are =, !=, exists, in, and notIn. |
| /// |
| /// [limit] - The maximum number of records that should be returned. |
| /// |
| /// [resourceVersion] - The baseline resource version from which the list or |
| /// watch operation should start. Not currently used by Cloud Run. |
| /// |
| /// [watch] - Flag that indicates that the client expects to watch this |
| /// resource as well. Not currently used by Cloud Run. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [ListServicesResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<ListServicesResponse> list( |
| core.String parent, { |
| core.String? continue_, |
| core.String? fieldSelector, |
| core.bool? includeUninitialized, |
| core.String? labelSelector, |
| core.int? limit, |
| core.String? resourceVersion, |
| core.bool? watch, |
| core.String? $fields, |
| }) async { |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (continue_ != null) 'continue': [continue_], |
| if (fieldSelector != null) 'fieldSelector': [fieldSelector], |
| if (includeUninitialized != null) |
| 'includeUninitialized': ['${includeUninitialized}'], |
| if (labelSelector != null) 'labelSelector': [labelSelector], |
| if (limit != null) 'limit': ['${limit}'], |
| if (resourceVersion != null) 'resourceVersion': [resourceVersion], |
| if (watch != null) 'watch': ['${watch}'], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$parent') + '/services'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'GET', |
| queryParams: _queryParams, |
| ); |
| return ListServicesResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Replace a service. |
| /// |
| /// Only the spec and metadata labels and annotations are modifiable. After |
| /// the Update request, Cloud Run will work to make the 'status' match the |
| /// requested 'spec'. May provide metadata.resourceVersion to enforce update |
| /// from last read for optimistic concurrency control. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [name] - The name of the service being replaced. For Cloud Run (fully |
| /// managed), replace {namespace_id} with the project ID or number. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/services/\[^/\]+$`. |
| /// |
| /// [dryRun] - Indicates that the server should validate the request and |
| /// populate default values without persisting the request. Supported values: |
| /// `all` |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Service]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Service> replaceService( |
| Service request, |
| core.String name, { |
| core.String? dryRun, |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if (dryRun != null) 'dryRun': [dryRun], |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$name'); |
| |
| final _response = await _requester.request( |
| _url, |
| 'PUT', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Service.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Sets the IAM Access control policy for the specified Service. |
| /// |
| /// Overwrites any existing policy. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [resource] - REQUIRED: The resource for which the policy is being |
| /// specified. See the operation documentation for the appropriate value for |
| /// this field. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/services/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [Policy]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<Policy> setIamPolicy( |
| SetIamPolicyRequest request, |
| core.String resource, { |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = 'v1/' + core.Uri.encodeFull('$resource') + ':setIamPolicy'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return Policy.fromJson(_response as core.Map<core.String, core.dynamic>); |
| } |
| |
| /// Returns permissions that a caller has on the specified Project. |
| /// |
| /// There are no permissions required for making this API call. |
| /// |
| /// [request] - The metadata request object. |
| /// |
| /// Request parameters: |
| /// |
| /// [resource] - REQUIRED: The resource for which the policy detail is being |
| /// requested. See the operation documentation for the appropriate value for |
| /// this field. |
| /// Value must have pattern |
| /// `^projects/\[^/\]+/locations/\[^/\]+/services/\[^/\]+$`. |
| /// |
| /// [$fields] - Selector specifying which fields to include in a partial |
| /// response. |
| /// |
| /// Completes with a [TestIamPermissionsResponse]. |
| /// |
| /// Completes with a [commons.ApiRequestError] if the API endpoint returned an |
| /// error. |
| /// |
| /// If the used [http.Client] completes with an error when making a REST call, |
| /// this method will complete with the same error. |
| async.Future<TestIamPermissionsResponse> testIamPermissions( |
| TestIamPermissionsRequest request, |
| core.String resource, { |
| core.String? $fields, |
| }) async { |
| final _body = convert.json.encode(request.toJson()); |
| final _queryParams = <core.String, core.List<core.String>>{ |
| if ($fields != null) 'fields': [$fields], |
| }; |
| |
| final _url = |
| 'v1/' + core.Uri.encodeFull('$resource') + ':testIamPermissions'; |
| |
| final _response = await _requester.request( |
| _url, |
| 'POST', |
| body: _body, |
| queryParams: _queryParams, |
| ); |
| return TestIamPermissionsResponse.fromJson( |
| _response as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| /// Information for connecting over HTTP(s). |
| class Addressable { |
| core.String? url; |
| |
| Addressable(); |
| |
| Addressable.fromJson(core.Map _json) { |
| if (_json.containsKey('url')) { |
| url = _json['url'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (url != null) 'url': url!, |
| }; |
| } |
| |
| /// Specifies the audit configuration for a service. |
| /// |
| /// The configuration determines which permission types are logged, and what |
| /// identities, if any, are exempted from logging. An AuditConfig must have one |
| /// or more AuditLogConfigs. If there are AuditConfigs for both `allServices` |
| /// and a specific service, the union of the two AuditConfigs is used for that |
| /// service: the log_types specified in each AuditConfig are enabled, and the |
| /// exempted_members in each AuditLogConfig are exempted. Example Policy with |
| /// multiple AuditConfigs: { "audit_configs": \[ { "service": "allServices", |
| /// "audit_log_configs": \[ { "log_type": "DATA_READ", "exempted_members": \[ |
| /// "user:jose@example.com" \] }, { "log_type": "DATA_WRITE" }, { "log_type": |
| /// "ADMIN_READ" } \] }, { "service": "sampleservice.googleapis.com", |
| /// "audit_log_configs": \[ { "log_type": "DATA_READ" }, { "log_type": |
| /// "DATA_WRITE", "exempted_members": \[ "user:aliya@example.com" \] } \] } \] } |
| /// For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ |
| /// logging. It also exempts jose@example.com from DATA_READ logging, and |
| /// aliya@example.com from DATA_WRITE logging. |
| class AuditConfig { |
| /// The configuration for logging of each type of permission. |
| core.List<AuditLogConfig>? auditLogConfigs; |
| |
| /// Specifies a service that will be enabled for audit logging. |
| /// |
| /// For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. |
| /// `allServices` is a special value that covers all services. |
| core.String? service; |
| |
| AuditConfig(); |
| |
| AuditConfig.fromJson(core.Map _json) { |
| if (_json.containsKey('auditLogConfigs')) { |
| auditLogConfigs = (_json['auditLogConfigs'] as core.List) |
| .map<AuditLogConfig>((value) => AuditLogConfig.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('service')) { |
| service = _json['service'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (auditLogConfigs != null) |
| 'auditLogConfigs': |
| auditLogConfigs!.map((value) => value.toJson()).toList(), |
| if (service != null) 'service': service!, |
| }; |
| } |
| |
| /// Provides the configuration for logging a type of permissions. |
| /// |
| /// Example: { "audit_log_configs": \[ { "log_type": "DATA_READ", |
| /// "exempted_members": \[ "user:jose@example.com" \] }, { "log_type": |
| /// "DATA_WRITE" } \] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while |
| /// exempting jose@example.com from DATA_READ logging. |
| class AuditLogConfig { |
| /// Specifies the identities that do not cause logging for this type of |
| /// permission. |
| /// |
| /// Follows the same format of Binding.members. |
| core.List<core.String>? exemptedMembers; |
| |
| /// The log type that this config enables. |
| /// Possible string values are: |
| /// - "LOG_TYPE_UNSPECIFIED" : Default case. Should never be this. |
| /// - "ADMIN_READ" : Admin reads. Example: CloudIAM getIamPolicy |
| /// - "DATA_WRITE" : Data writes. Example: CloudSQL Users create |
| /// - "DATA_READ" : Data reads. Example: CloudSQL Users list |
| core.String? logType; |
| |
| AuditLogConfig(); |
| |
| AuditLogConfig.fromJson(core.Map _json) { |
| if (_json.containsKey('exemptedMembers')) { |
| exemptedMembers = (_json['exemptedMembers'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| if (_json.containsKey('logType')) { |
| logType = _json['logType'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (exemptedMembers != null) 'exemptedMembers': exemptedMembers!, |
| if (logType != null) 'logType': logType!, |
| }; |
| } |
| |
| /// A domain that a user has been authorized to administer. |
| /// |
| /// To authorize use of a domain, verify ownership via |
| /// [Webmaster Central](https://www.google.com/webmasters/verification/home). |
| class AuthorizedDomain { |
| /// Relative name of the domain authorized for use. |
| /// |
| /// Example: `example.com`. |
| core.String? id; |
| |
| /// Deprecated Read only. |
| /// |
| /// Full path to the `AuthorizedDomain` resource in the API. Example: |
| /// `projects/myproject/authorizedDomains/example.com`. |
| core.String? name; |
| |
| AuthorizedDomain(); |
| |
| AuthorizedDomain.fromJson(core.Map _json) { |
| if (_json.containsKey('id')) { |
| id = _json['id'] as core.String; |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (id != null) 'id': id!, |
| if (name != null) 'name': name!, |
| }; |
| } |
| |
| /// Associates `members` with a `role`. |
| class Binding { |
| /// The condition that is associated with this binding. |
| /// |
| /// If the condition evaluates to `true`, then this binding applies to the |
| /// current request. If the condition evaluates to `false`, then this binding |
| /// does not apply to the current request. However, a different role binding |
| /// might grant the same role to one or more of the members in this binding. |
| /// To learn which resources support conditions in their IAM policies, see the |
| /// [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| Expr? condition; |
| |
| /// Specifies the identities requesting access for a Cloud Platform resource. |
| /// |
| /// `members` can have the following values: * `allUsers`: A special |
| /// identifier that represents anyone who is on the internet; with or without |
| /// a Google account. * `allAuthenticatedUsers`: A special identifier that |
| /// represents anyone who is authenticated with a Google account or a service |
| /// account. * `user:{emailid}`: An email address that represents a specific |
| /// Google account. For example, `alice@example.com` . * |
| /// `serviceAccount:{emailid}`: An email address that represents a service |
| /// account. For example, `my-other-app@appspot.gserviceaccount.com`. * |
| /// `group:{emailid}`: An email address that represents a Google group. For |
| /// example, `admins@example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: |
| /// An email address (plus unique identifier) representing a user that has |
| /// been recently deleted. For example, |
| /// `alice@example.com?uid=123456789012345678901`. If the user is recovered, |
| /// this value reverts to `user:{emailid}` and the recovered user retains the |
| /// role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: |
| /// An email address (plus unique identifier) representing a service account |
| /// that has been recently deleted. For example, |
| /// `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If |
| /// the service account is undeleted, this value reverts to |
| /// `serviceAccount:{emailid}` and the undeleted service account retains the |
| /// role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email |
| /// address (plus unique identifier) representing a Google group that has been |
| /// recently deleted. For example, |
| /// `admins@example.com?uid=123456789012345678901`. If the group is recovered, |
| /// this value reverts to `group:{emailid}` and the recovered group retains |
| /// the role in the binding. * `domain:{domain}`: The G Suite domain (primary) |
| /// that represents all the users of that domain. For example, `google.com` or |
| /// `example.com`. |
| core.List<core.String>? members; |
| |
| /// Role that is assigned to `members`. |
| /// |
| /// For example, `roles/viewer`, `roles/editor`, or `roles/owner`. |
| core.String? role; |
| |
| Binding(); |
| |
| Binding.fromJson(core.Map _json) { |
| if (_json.containsKey('condition')) { |
| condition = Expr.fromJson( |
| _json['condition'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('members')) { |
| members = (_json['members'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| if (_json.containsKey('role')) { |
| role = _json['role'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (condition != null) 'condition': condition!.toJson(), |
| if (members != null) 'members': members!, |
| if (role != null) 'role': role!, |
| }; |
| } |
| |
| /// Not supported by Cloud Run ConfigMapEnvSource selects a ConfigMap to |
| /// populate the environment variables with. |
| /// |
| /// The contents of the target ConfigMap's Data field will represent the |
| /// key-value pairs as environment variables. |
| class ConfigMapEnvSource { |
| /// This field should not be used directly as it is meant to be inlined |
| /// directly into the message. |
| /// |
| /// Use the "name" field instead. |
| LocalObjectReference? localObjectReference; |
| |
| /// The ConfigMap to select from. |
| core.String? name; |
| |
| /// (Optional) Specify whether the ConfigMap must be defined |
| core.bool? optional; |
| |
| ConfigMapEnvSource(); |
| |
| ConfigMapEnvSource.fromJson(core.Map _json) { |
| if (_json.containsKey('localObjectReference')) { |
| localObjectReference = LocalObjectReference.fromJson( |
| _json['localObjectReference'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('optional')) { |
| optional = _json['optional'] as core.bool; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (localObjectReference != null) |
| 'localObjectReference': localObjectReference!.toJson(), |
| if (name != null) 'name': name!, |
| if (optional != null) 'optional': optional!, |
| }; |
| } |
| |
| /// Not supported by Cloud Run Selects a key from a ConfigMap. |
| class ConfigMapKeySelector { |
| /// The key to select. |
| core.String? key; |
| |
| /// This field should not be used directly as it is meant to be inlined |
| /// directly into the message. |
| /// |
| /// Use the "name" field instead. |
| LocalObjectReference? localObjectReference; |
| |
| /// The ConfigMap to select from. |
| core.String? name; |
| |
| /// (Optional) Specify whether the ConfigMap or its key must be defined |
| core.bool? optional; |
| |
| ConfigMapKeySelector(); |
| |
| ConfigMapKeySelector.fromJson(core.Map _json) { |
| if (_json.containsKey('key')) { |
| key = _json['key'] as core.String; |
| } |
| if (_json.containsKey('localObjectReference')) { |
| localObjectReference = LocalObjectReference.fromJson( |
| _json['localObjectReference'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('optional')) { |
| optional = _json['optional'] as core.bool; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (key != null) 'key': key!, |
| if (localObjectReference != null) |
| 'localObjectReference': localObjectReference!.toJson(), |
| if (name != null) 'name': name!, |
| if (optional != null) 'optional': optional!, |
| }; |
| } |
| |
| /// Not supported by Cloud Run Adapts a ConfigMap into a volume. |
| /// |
| /// The contents of the target ConfigMap's Data field will be presented in a |
| /// volume as files using the keys in the Data field as the file names, unless |
| /// the items element is populated with specific mappings of keys to paths. |
| class ConfigMapVolumeSource { |
| /// (Optional) Mode bits to use on created files by default. |
| /// |
| /// Must be a value between 0 and 0777. Defaults to 0644. Directories within |
| /// the path are not affected by this setting. This might be in conflict with |
| /// other options that affect the file mode, like fsGroup, and the result can |
| /// be other mode bits set. |
| core.int? defaultMode; |
| |
| /// (Optional) If unspecified, each key-value pair in the Data field of the |
| /// referenced Secret will be projected into the volume as a file whose name |
| /// is the key and content is the value. |
| /// |
| /// If specified, the listed keys will be projected into the specified paths, |
| /// and unlisted keys will not be present. If a key is specified that is not |
| /// present in the Secret, the volume setup will error unless it is marked |
| /// optional. |
| core.List<KeyToPath>? items; |
| |
| /// Name of the config. |
| core.String? name; |
| |
| /// (Optional) Specify whether the Secret or its keys must be defined. |
| core.bool? optional; |
| |
| ConfigMapVolumeSource(); |
| |
| ConfigMapVolumeSource.fromJson(core.Map _json) { |
| if (_json.containsKey('defaultMode')) { |
| defaultMode = _json['defaultMode'] as core.int; |
| } |
| if (_json.containsKey('items')) { |
| items = (_json['items'] as core.List) |
| .map<KeyToPath>((value) => |
| KeyToPath.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('optional')) { |
| optional = _json['optional'] as core.bool; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (defaultMode != null) 'defaultMode': defaultMode!, |
| if (items != null) |
| 'items': items!.map((value) => value.toJson()).toList(), |
| if (name != null) 'name': name!, |
| if (optional != null) 'optional': optional!, |
| }; |
| } |
| |
| /// Configuration represents the "floating HEAD" of a linear history of |
| /// Revisions, and optionally how the containers those revisions reference are |
| /// built. |
| /// |
| /// Users create new Revisions by updating the Configuration's spec. The "latest |
| /// created" revision's name is available under status, as is the "latest ready" |
| /// revision's name. See also: |
| /// https://github.com/knative/serving/blob/master/docs/spec/overview.md#configuration |
| class Configuration { |
| /// The API version for this call such as "serving.knative.dev/v1". |
| core.String? apiVersion; |
| |
| /// The kind of resource, in this case always "Configuration". |
| core.String? kind; |
| |
| /// Metadata associated with this Configuration, including name, namespace, |
| /// labels, and annotations. |
| ObjectMeta? metadata; |
| |
| /// Spec holds the desired state of the Configuration (from the client). |
| ConfigurationSpec? spec; |
| |
| /// Status communicates the observed state of the Configuration (from the |
| /// controller). |
| ConfigurationStatus? status; |
| |
| Configuration(); |
| |
| Configuration.fromJson(core.Map _json) { |
| if (_json.containsKey('apiVersion')) { |
| apiVersion = _json['apiVersion'] as core.String; |
| } |
| if (_json.containsKey('kind')) { |
| kind = _json['kind'] as core.String; |
| } |
| if (_json.containsKey('metadata')) { |
| metadata = ObjectMeta.fromJson( |
| _json['metadata'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('spec')) { |
| spec = ConfigurationSpec.fromJson( |
| _json['spec'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('status')) { |
| status = ConfigurationStatus.fromJson( |
| _json['status'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (apiVersion != null) 'apiVersion': apiVersion!, |
| if (kind != null) 'kind': kind!, |
| if (metadata != null) 'metadata': metadata!.toJson(), |
| if (spec != null) 'spec': spec!.toJson(), |
| if (status != null) 'status': status!.toJson(), |
| }; |
| } |
| |
| /// ConfigurationSpec holds the desired state of the Configuration (from the |
| /// client). |
| class ConfigurationSpec { |
| /// Template holds the latest specification for the Revision to be stamped |
| /// out. |
| RevisionTemplate? template; |
| |
| ConfigurationSpec(); |
| |
| ConfigurationSpec.fromJson(core.Map _json) { |
| if (_json.containsKey('template')) { |
| template = RevisionTemplate.fromJson( |
| _json['template'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (template != null) 'template': template!.toJson(), |
| }; |
| } |
| |
| /// ConfigurationStatus communicates the observed state of the Configuration |
| /// (from the controller). |
| class ConfigurationStatus { |
| /// Conditions communicates information about ongoing/complete reconciliation |
| /// processes that bring the "spec" inline with the observed state of the |
| /// world. |
| core.List<GoogleCloudRunV1Condition>? conditions; |
| |
| /// LatestCreatedRevisionName is the last revision that was created from this |
| /// Configuration. |
| /// |
| /// It might not be ready yet, for that use LatestReadyRevisionName. |
| core.String? latestCreatedRevisionName; |
| |
| /// LatestReadyRevisionName holds the name of the latest Revision stamped out |
| /// from this Configuration that has had its "Ready" condition become "True". |
| core.String? latestReadyRevisionName; |
| |
| /// ObservedGeneration is the 'Generation' of the Configuration that was last |
| /// processed by the controller. |
| /// |
| /// The observed generation is updated even if the controller failed to |
| /// process the spec and create the Revision. Clients polling for completed |
| /// reconciliation should poll until observedGeneration = metadata.generation, |
| /// and the Ready condition's status is True or False. |
| core.int? observedGeneration; |
| |
| ConfigurationStatus(); |
| |
| ConfigurationStatus.fromJson(core.Map _json) { |
| if (_json.containsKey('conditions')) { |
| conditions = (_json['conditions'] as core.List) |
| .map<GoogleCloudRunV1Condition>((value) => |
| GoogleCloudRunV1Condition.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('latestCreatedRevisionName')) { |
| latestCreatedRevisionName = |
| _json['latestCreatedRevisionName'] as core.String; |
| } |
| if (_json.containsKey('latestReadyRevisionName')) { |
| latestReadyRevisionName = _json['latestReadyRevisionName'] as core.String; |
| } |
| if (_json.containsKey('observedGeneration')) { |
| observedGeneration = _json['observedGeneration'] as core.int; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (conditions != null) |
| 'conditions': conditions!.map((value) => value.toJson()).toList(), |
| if (latestCreatedRevisionName != null) |
| 'latestCreatedRevisionName': latestCreatedRevisionName!, |
| if (latestReadyRevisionName != null) |
| 'latestReadyRevisionName': latestReadyRevisionName!, |
| if (observedGeneration != null) |
| 'observedGeneration': observedGeneration!, |
| }; |
| } |
| |
| /// A single application container. |
| /// |
| /// This specifies both the container to run, the command to run in the |
| /// container and the arguments to supply to it. Note that additional arguments |
| /// may be supplied by the system to the container at runtime. |
| class Container { |
| /// (Optional) Arguments to the entrypoint. |
| /// |
| /// The docker image's CMD is used if this is not provided. Variable |
| /// references $(VAR_NAME) are expanded using the container's environment. If |
| /// a variable cannot be resolved, the reference in the input string will be |
| /// unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: |
| /// $$(VAR_NAME). Escaped references will never be expanded, regardless of |
| /// whether the variable exists or not. More info: |
| /// https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell |
| core.List<core.String>? args; |
| core.List<core.String>? command; |
| |
| /// (Optional) List of environment variables to set in the container. |
| core.List<EnvVar>? env; |
| |
| /// (Optional) List of sources to populate environment variables in the |
| /// container. |
| /// |
| /// The keys defined within a source must be a C_IDENTIFIER. All invalid keys |
| /// will be reported as an event when the container is starting. When a key |
| /// exists in multiple sources, the value associated with the last source will |
| /// take precedence. Values defined by an Env with a duplicate key will take |
| /// precedence. Cannot be updated. |
| core.List<EnvFromSource>? envFrom; |
| |
| /// Only supports containers from Google Container Registry or Artifact |
| /// Registry URL of the Container image. |
| /// |
| /// More info: https://kubernetes.io/docs/concepts/containers/images |
| core.String? image; |
| |
| /// (Optional) Image pull policy. |
| /// |
| /// One of Always, Never, IfNotPresent. Defaults to Always if :latest tag is |
| /// specified, or IfNotPresent otherwise. More info: |
| /// https://kubernetes.io/docs/concepts/containers/images#updating-images |
| core.String? imagePullPolicy; |
| |
| /// (Optional) Periodic probe of container liveness. |
| /// |
| /// Container will be restarted if the probe fails. More info: |
| /// https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
| Probe? livenessProbe; |
| |
| /// (Optional) Name of the container specified as a DNS_LABEL. |
| /// |
| /// Currently unused in Cloud Run. More info: |
| /// https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-label-names |
| core.String? name; |
| |
| /// (Optional) List of ports to expose from the container. |
| /// |
| /// Only a single port can be specified. The specified ports must be listening |
| /// on all interfaces (0.0.0.0) within the container to be accessible. If |
| /// omitted, a port number will be chosen and passed to the container through |
| /// the PORT environment variable for the container to listen on. |
| core.List<ContainerPort>? ports; |
| |
| /// (Optional) Periodic probe of container service readiness. |
| /// |
| /// Container will be removed from service endpoints if the probe fails. More |
| /// info: |
| /// https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
| Probe? readinessProbe; |
| |
| /// (Optional) Compute Resources required by this container. |
| /// |
| /// More info: |
| /// https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources |
| ResourceRequirements? resources; |
| |
| /// (Optional) Security options the pod should run with. |
| /// |
| /// More info: https://kubernetes.io/docs/concepts/policy/security-context/ |
| /// More info: |
| /// https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ |
| SecurityContext? securityContext; |
| |
| /// (Optional) Startup probe of application within the container. |
| /// |
| /// All other probes are disabled if a startup probe is provided, until it |
| /// succeeds. Container will not be added to service endpoints if the probe |
| /// fails. More info: |
| /// https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
| Probe? startupProbe; |
| |
| /// (Optional) Path at which the file to which the container's termination |
| /// message will be written is mounted into the container's filesystem. |
| /// |
| /// Message written is intended to be brief final status, such as an assertion |
| /// failure message. Will be truncated by the node if greater than 4096 bytes. |
| /// The total message length across all containers will be limited to 12kb. |
| /// Defaults to /dev/termination-log. |
| core.String? terminationMessagePath; |
| |
| /// (Optional) Indicate how the termination message should be populated. |
| /// |
| /// File will use the contents of terminationMessagePath to populate the |
| /// container status message on both success and failure. |
| /// FallbackToLogsOnError will use the last chunk of container log output if |
| /// the termination message file is empty and the container exited with an |
| /// error. The log output is limited to 2048 bytes or 80 lines, whichever is |
| /// smaller. Defaults to File. Cannot be updated. |
| core.String? terminationMessagePolicy; |
| |
| /// (Optional) Volume to mount into the container's filesystem. |
| /// |
| /// Only supports SecretVolumeSources. Pod volumes to mount into the |
| /// container's filesystem. |
| core.List<VolumeMount>? volumeMounts; |
| |
| /// (Optional) Container's working directory. |
| /// |
| /// If not specified, the container runtime's default will be used, which |
| /// might be configured in the container image. |
| core.String? workingDir; |
| |
| Container(); |
| |
| Container.fromJson(core.Map _json) { |
| if (_json.containsKey('args')) { |
| args = (_json['args'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| if (_json.containsKey('command')) { |
| command = (_json['command'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| if (_json.containsKey('env')) { |
| env = (_json['env'] as core.List) |
| .map<EnvVar>((value) => |
| EnvVar.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('envFrom')) { |
| envFrom = (_json['envFrom'] as core.List) |
| .map<EnvFromSource>((value) => EnvFromSource.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('image')) { |
| image = _json['image'] as core.String; |
| } |
| if (_json.containsKey('imagePullPolicy')) { |
| imagePullPolicy = _json['imagePullPolicy'] as core.String; |
| } |
| if (_json.containsKey('livenessProbe')) { |
| livenessProbe = Probe.fromJson( |
| _json['livenessProbe'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('ports')) { |
| ports = (_json['ports'] as core.List) |
| .map<ContainerPort>((value) => ContainerPort.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('readinessProbe')) { |
| readinessProbe = Probe.fromJson( |
| _json['readinessProbe'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('resources')) { |
| resources = ResourceRequirements.fromJson( |
| _json['resources'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('securityContext')) { |
| securityContext = SecurityContext.fromJson( |
| _json['securityContext'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('startupProbe')) { |
| startupProbe = Probe.fromJson( |
| _json['startupProbe'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('terminationMessagePath')) { |
| terminationMessagePath = _json['terminationMessagePath'] as core.String; |
| } |
| if (_json.containsKey('terminationMessagePolicy')) { |
| terminationMessagePolicy = |
| _json['terminationMessagePolicy'] as core.String; |
| } |
| if (_json.containsKey('volumeMounts')) { |
| volumeMounts = (_json['volumeMounts'] as core.List) |
| .map<VolumeMount>((value) => VolumeMount.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('workingDir')) { |
| workingDir = _json['workingDir'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (args != null) 'args': args!, |
| if (command != null) 'command': command!, |
| if (env != null) 'env': env!.map((value) => value.toJson()).toList(), |
| if (envFrom != null) |
| 'envFrom': envFrom!.map((value) => value.toJson()).toList(), |
| if (image != null) 'image': image!, |
| if (imagePullPolicy != null) 'imagePullPolicy': imagePullPolicy!, |
| if (livenessProbe != null) 'livenessProbe': livenessProbe!.toJson(), |
| if (name != null) 'name': name!, |
| if (ports != null) |
| 'ports': ports!.map((value) => value.toJson()).toList(), |
| if (readinessProbe != null) 'readinessProbe': readinessProbe!.toJson(), |
| if (resources != null) 'resources': resources!.toJson(), |
| if (securityContext != null) |
| 'securityContext': securityContext!.toJson(), |
| if (startupProbe != null) 'startupProbe': startupProbe!.toJson(), |
| if (terminationMessagePath != null) |
| 'terminationMessagePath': terminationMessagePath!, |
| if (terminationMessagePolicy != null) |
| 'terminationMessagePolicy': terminationMessagePolicy!, |
| if (volumeMounts != null) |
| 'volumeMounts': volumeMounts!.map((value) => value.toJson()).toList(), |
| if (workingDir != null) 'workingDir': workingDir!, |
| }; |
| } |
| |
| /// ContainerPort represents a network port in a single container. |
| class ContainerPort { |
| /// (Optional) Port number the container listens on. |
| /// |
| /// This must be a valid port number, 0 < x < 65536. |
| core.int? containerPort; |
| |
| /// (Optional) If specified, used to specify which protocol to use. |
| /// |
| /// Allowed values are "http1" and "h2c". |
| core.String? name; |
| |
| /// (Optional) Protocol for port. |
| /// |
| /// Must be "TCP". Defaults to "TCP". |
| core.String? protocol; |
| |
| ContainerPort(); |
| |
| ContainerPort.fromJson(core.Map _json) { |
| if (_json.containsKey('containerPort')) { |
| containerPort = _json['containerPort'] as core.int; |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('protocol')) { |
| protocol = _json['protocol'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (containerPort != null) 'containerPort': containerPort!, |
| if (name != null) 'name': name!, |
| if (protocol != null) 'protocol': protocol!, |
| }; |
| } |
| |
| /// Resource to hold the state and status of a user's domain mapping. |
| /// |
| /// NOTE: This resource is currently in Beta. |
| class DomainMapping { |
| /// The API version for this call such as "domains.cloudrun.com/v1". |
| core.String? apiVersion; |
| |
| /// The kind of resource, in this case "DomainMapping". |
| core.String? kind; |
| |
| /// Metadata associated with this BuildTemplate. |
| ObjectMeta? metadata; |
| |
| /// The spec for this DomainMapping. |
| DomainMappingSpec? spec; |
| |
| /// The current status of the DomainMapping. |
| DomainMappingStatus? status; |
| |
| DomainMapping(); |
| |
| DomainMapping.fromJson(core.Map _json) { |
| if (_json.containsKey('apiVersion')) { |
| apiVersion = _json['apiVersion'] as core.String; |
| } |
| if (_json.containsKey('kind')) { |
| kind = _json['kind'] as core.String; |
| } |
| if (_json.containsKey('metadata')) { |
| metadata = ObjectMeta.fromJson( |
| _json['metadata'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('spec')) { |
| spec = DomainMappingSpec.fromJson( |
| _json['spec'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('status')) { |
| status = DomainMappingStatus.fromJson( |
| _json['status'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (apiVersion != null) 'apiVersion': apiVersion!, |
| if (kind != null) 'kind': kind!, |
| if (metadata != null) 'metadata': metadata!.toJson(), |
| if (spec != null) 'spec': spec!.toJson(), |
| if (status != null) 'status': status!.toJson(), |
| }; |
| } |
| |
| /// The desired state of the Domain Mapping. |
| class DomainMappingSpec { |
| /// The mode of the certificate. |
| /// Possible string values are: |
| /// - "CERTIFICATE_MODE_UNSPECIFIED" |
| /// - "NONE" : Do not provision an HTTPS certificate. |
| /// - "AUTOMATIC" : Automatically provisions an HTTPS certificate via GoogleCA |
| /// or LetsEncrypt. |
| core.String? certificateMode; |
| |
| /// If set, the mapping will override any mapping set before this spec was |
| /// set. |
| /// |
| /// It is recommended that the user leaves this empty to receive an error |
| /// warning about a potential conflict and only set it once the respective UI |
| /// has given such a warning. |
| core.bool? forceOverride; |
| |
| /// The name of the Knative Route that this DomainMapping applies to. |
| /// |
| /// The route must exist. |
| core.String? routeName; |
| |
| DomainMappingSpec(); |
| |
| DomainMappingSpec.fromJson(core.Map _json) { |
| if (_json.containsKey('certificateMode')) { |
| certificateMode = _json['certificateMode'] as core.String; |
| } |
| if (_json.containsKey('forceOverride')) { |
| forceOverride = _json['forceOverride'] as core.bool; |
| } |
| if (_json.containsKey('routeName')) { |
| routeName = _json['routeName'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (certificateMode != null) 'certificateMode': certificateMode!, |
| if (forceOverride != null) 'forceOverride': forceOverride!, |
| if (routeName != null) 'routeName': routeName!, |
| }; |
| } |
| |
| /// The current state of the Domain Mapping. |
| class DomainMappingStatus { |
| /// Array of observed DomainMappingConditions, indicating the current state of |
| /// the DomainMapping. |
| core.List<GoogleCloudRunV1Condition>? conditions; |
| |
| /// The name of the route that the mapping currently points to. |
| core.String? mappedRouteName; |
| |
| /// ObservedGeneration is the 'Generation' of the DomainMapping that was last |
| /// processed by the controller. |
| /// |
| /// Clients polling for completed reconciliation should poll until |
| /// observedGeneration = metadata.generation and the Ready condition's status |
| /// is True or False. |
| core.int? observedGeneration; |
| |
| /// The resource records required to configure this domain mapping. |
| /// |
| /// These records must be added to the domain's DNS configuration in order to |
| /// serve the application via this domain mapping. |
| core.List<ResourceRecord>? resourceRecords; |
| |
| /// Cloud Run fully managed: not supported Cloud Run on GKE: supported Holds |
| /// the URL that will serve the traffic of the DomainMapping. |
| /// |
| /// +optional |
| core.String? url; |
| |
| DomainMappingStatus(); |
| |
| DomainMappingStatus.fromJson(core.Map _json) { |
| if (_json.containsKey('conditions')) { |
| conditions = (_json['conditions'] as core.List) |
| .map<GoogleCloudRunV1Condition>((value) => |
| GoogleCloudRunV1Condition.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('mappedRouteName')) { |
| mappedRouteName = _json['mappedRouteName'] as core.String; |
| } |
| if (_json.containsKey('observedGeneration')) { |
| observedGeneration = _json['observedGeneration'] as core.int; |
| } |
| if (_json.containsKey('resourceRecords')) { |
| resourceRecords = (_json['resourceRecords'] as core.List) |
| .map<ResourceRecord>((value) => ResourceRecord.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('url')) { |
| url = _json['url'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (conditions != null) |
| 'conditions': conditions!.map((value) => value.toJson()).toList(), |
| if (mappedRouteName != null) 'mappedRouteName': mappedRouteName!, |
| if (observedGeneration != null) |
| 'observedGeneration': observedGeneration!, |
| if (resourceRecords != null) |
| 'resourceRecords': |
| resourceRecords!.map((value) => value.toJson()).toList(), |
| if (url != null) 'url': url!, |
| }; |
| } |
| |
| /// Not supported by Cloud Run EnvFromSource represents the source of a set of |
| /// ConfigMaps |
| class EnvFromSource { |
| /// (Optional) The ConfigMap to select from |
| ConfigMapEnvSource? configMapRef; |
| |
| /// (Optional) An optional identifier to prepend to each key in the ConfigMap. |
| /// |
| /// Must be a C_IDENTIFIER. |
| core.String? prefix; |
| |
| /// (Optional) The Secret to select from |
| SecretEnvSource? secretRef; |
| |
| EnvFromSource(); |
| |
| EnvFromSource.fromJson(core.Map _json) { |
| if (_json.containsKey('configMapRef')) { |
| configMapRef = ConfigMapEnvSource.fromJson( |
| _json['configMapRef'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('prefix')) { |
| prefix = _json['prefix'] as core.String; |
| } |
| if (_json.containsKey('secretRef')) { |
| secretRef = SecretEnvSource.fromJson( |
| _json['secretRef'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (configMapRef != null) 'configMapRef': configMapRef!.toJson(), |
| if (prefix != null) 'prefix': prefix!, |
| if (secretRef != null) 'secretRef': secretRef!.toJson(), |
| }; |
| } |
| |
| /// EnvVar represents an environment variable present in a Container. |
| class EnvVar { |
| /// Name of the environment variable. |
| /// |
| /// Must be a C_IDENTIFIER. |
| core.String? name; |
| |
| /// (Optional) Variable references $(VAR_NAME) are expanded using the previous |
| /// defined environment variables in the container and any route environment |
| /// variables. |
| /// |
| /// If a variable cannot be resolved, the reference in the input string will |
| /// be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: |
| /// $$(VAR_NAME). Escaped references will never be expanded, regardless of |
| /// whether the variable exists or not. Defaults to "". |
| core.String? value; |
| |
| /// (Optional) Source for the environment variable's value. |
| /// |
| /// Only supports secret_key_ref. Source for the environment variable's value. |
| /// Cannot be used if value is not empty. |
| EnvVarSource? valueFrom; |
| |
| EnvVar(); |
| |
| EnvVar.fromJson(core.Map _json) { |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('value')) { |
| value = _json['value'] as core.String; |
| } |
| if (_json.containsKey('valueFrom')) { |
| valueFrom = EnvVarSource.fromJson( |
| _json['valueFrom'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (name != null) 'name': name!, |
| if (value != null) 'value': value!, |
| if (valueFrom != null) 'valueFrom': valueFrom!.toJson(), |
| }; |
| } |
| |
| /// EnvVarSource represents a source for the value of an EnvVar. |
| class EnvVarSource { |
| /// (Optional) Not supported by Cloud Run Selects a key of a ConfigMap. |
| ConfigMapKeySelector? configMapKeyRef; |
| |
| /// (Optional) Selects a key (version) of a secret in Secret Manager. |
| SecretKeySelector? secretKeyRef; |
| |
| EnvVarSource(); |
| |
| EnvVarSource.fromJson(core.Map _json) { |
| if (_json.containsKey('configMapKeyRef')) { |
| configMapKeyRef = ConfigMapKeySelector.fromJson( |
| _json['configMapKeyRef'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('secretKeyRef')) { |
| secretKeyRef = SecretKeySelector.fromJson( |
| _json['secretKeyRef'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (configMapKeyRef != null) |
| 'configMapKeyRef': configMapKeyRef!.toJson(), |
| if (secretKeyRef != null) 'secretKeyRef': secretKeyRef!.toJson(), |
| }; |
| } |
| |
| /// Not supported by Cloud Run ExecAction describes a "run in container" action. |
| class ExecAction { |
| /// (Optional) Command is the command line to execute inside the container, |
| /// the working directory for the command is root ('/') in the container's |
| /// filesystem. |
| /// |
| /// The command is simply exec'd, it is not run inside a shell, so traditional |
| /// shell instructions ('|', etc) won't work. To use a shell, you need to |
| /// explicitly call out to that shell. Exit status of 0 is treated as |
| /// live/healthy and non-zero is unhealthy. |
| core.List<core.String>? command; |
| |
| ExecAction(); |
| |
| ExecAction.fromJson(core.Map _json) { |
| if (_json.containsKey('command')) { |
| command = (_json['command'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (command != null) 'command': command!, |
| }; |
| } |
| |
| /// Represents a textual expression in the Common Expression Language (CEL) |
| /// syntax. |
| /// |
| /// CEL is a C-like expression language. The syntax and semantics of CEL are |
| /// documented at https://github.com/google/cel-spec. Example (Comparison): |
| /// title: "Summary size limit" description: "Determines if a summary is less |
| /// than 100 chars" expression: "document.summary.size() < 100" Example |
| /// (Equality): title: "Requestor is owner" description: "Determines if |
| /// requestor is the document owner" expression: "document.owner == |
| /// request.auth.claims.email" Example (Logic): title: "Public documents" |
| /// description: "Determine whether the document should be publicly visible" |
| /// expression: "document.type != 'private' && document.type != 'internal'" |
| /// Example (Data Manipulation): title: "Notification string" description: |
| /// "Create a notification string with a timestamp." expression: "'New message |
| /// received at ' + string(document.create_time)" The exact variables and |
| /// functions that may be referenced within an expression are determined by the |
| /// service that evaluates it. See the service documentation for additional |
| /// information. |
| class Expr { |
| /// Description of the expression. |
| /// |
| /// This is a longer text which describes the expression, e.g. when hovered |
| /// over it in a UI. |
| /// |
| /// Optional. |
| core.String? description; |
| |
| /// Textual representation of an expression in Common Expression Language |
| /// syntax. |
| core.String? expression; |
| |
| /// String indicating the location of the expression for error reporting, e.g. |
| /// a file name and a position in the file. |
| /// |
| /// Optional. |
| core.String? location; |
| |
| /// Title for the expression, i.e. a short string describing its purpose. |
| /// |
| /// This can be used e.g. in UIs which allow to enter the expression. |
| /// |
| /// Optional. |
| core.String? title; |
| |
| Expr(); |
| |
| Expr.fromJson(core.Map _json) { |
| if (_json.containsKey('description')) { |
| description = _json['description'] as core.String; |
| } |
| if (_json.containsKey('expression')) { |
| expression = _json['expression'] as core.String; |
| } |
| if (_json.containsKey('location')) { |
| location = _json['location'] as core.String; |
| } |
| if (_json.containsKey('title')) { |
| title = _json['title'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (description != null) 'description': description!, |
| if (expression != null) 'expression': expression!, |
| if (location != null) 'location': location!, |
| if (title != null) 'title': title!, |
| }; |
| } |
| |
| /// Condition defines a generic condition for a Resource |
| class GoogleCloudRunV1Condition { |
| /// Last time the condition transitioned from one status to another. |
| /// |
| /// Optional. |
| core.String? lastTransitionTime; |
| |
| /// Human readable message indicating details about the current status. |
| /// |
| /// Optional. |
| core.String? message; |
| |
| /// One-word CamelCase reason for the condition's last transition. |
| /// |
| /// Optional. |
| core.String? reason; |
| |
| /// How to interpret failures of this condition, one of Error, Warning, Info |
| /// |
| /// Optional. |
| core.String? severity; |
| |
| /// Status of the condition, one of True, False, Unknown. |
| core.String? status; |
| |
| /// type is used to communicate the status of the reconciliation process. |
| /// |
| /// See also: |
| /// https://github.com/knative/serving/blob/master/docs/spec/errors.md#error-conditions-and-reporting |
| /// Types common to all resources include: * "Ready": True when the Resource |
| /// is ready. |
| core.String? type; |
| |
| GoogleCloudRunV1Condition(); |
| |
| GoogleCloudRunV1Condition.fromJson(core.Map _json) { |
| if (_json.containsKey('lastTransitionTime')) { |
| lastTransitionTime = _json['lastTransitionTime'] as core.String; |
| } |
| if (_json.containsKey('message')) { |
| message = _json['message'] as core.String; |
| } |
| if (_json.containsKey('reason')) { |
| reason = _json['reason'] as core.String; |
| } |
| if (_json.containsKey('severity')) { |
| severity = _json['severity'] as core.String; |
| } |
| if (_json.containsKey('status')) { |
| status = _json['status'] as core.String; |
| } |
| if (_json.containsKey('type')) { |
| type = _json['type'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (lastTransitionTime != null) |
| 'lastTransitionTime': lastTransitionTime!, |
| if (message != null) 'message': message!, |
| if (reason != null) 'reason': reason!, |
| if (severity != null) 'severity': severity!, |
| if (status != null) 'status': status!, |
| if (type != null) 'type': type!, |
| }; |
| } |
| |
| /// Not supported by Cloud Run HTTPGetAction describes an action based on HTTP |
| /// Get requests. |
| class HTTPGetAction { |
| /// (Optional) Host name to connect to, defaults to the pod IP. |
| /// |
| /// You probably want to set "Host" in httpHeaders instead. |
| core.String? host; |
| |
| /// (Optional) Custom headers to set in the request. |
| /// |
| /// HTTP allows repeated headers. |
| core.List<HTTPHeader>? httpHeaders; |
| |
| /// (Optional) Path to access on the HTTP server. |
| core.String? path; |
| |
| /// (Optional) Scheme to use for connecting to the host. |
| /// |
| /// Defaults to HTTP. |
| core.String? scheme; |
| |
| HTTPGetAction(); |
| |
| HTTPGetAction.fromJson(core.Map _json) { |
| if (_json.containsKey('host')) { |
| host = _json['host'] as core.String; |
| } |
| if (_json.containsKey('httpHeaders')) { |
| httpHeaders = (_json['httpHeaders'] as core.List) |
| .map<HTTPHeader>((value) => |
| HTTPHeader.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('path')) { |
| path = _json['path'] as core.String; |
| } |
| if (_json.containsKey('scheme')) { |
| scheme = _json['scheme'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (host != null) 'host': host!, |
| if (httpHeaders != null) |
| 'httpHeaders': httpHeaders!.map((value) => value.toJson()).toList(), |
| if (path != null) 'path': path!, |
| if (scheme != null) 'scheme': scheme!, |
| }; |
| } |
| |
| /// Not supported by Cloud Run HTTPHeader describes a custom header to be used |
| /// in HTTP probes |
| class HTTPHeader { |
| /// The header field name |
| core.String? name; |
| |
| /// The header field value |
| core.String? value; |
| |
| HTTPHeader(); |
| |
| HTTPHeader.fromJson(core.Map _json) { |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('value')) { |
| value = _json['value'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (name != null) 'name': name!, |
| if (value != null) 'value': value!, |
| }; |
| } |
| |
| /// Maps a string key to a path within a volume. |
| class KeyToPath { |
| /// The Cloud Secret Manager secret version. |
| /// |
| /// Can be 'latest' for the latest value or an integer for a specific version. |
| /// The key to project. |
| core.String? key; |
| |
| /// (Optional) Mode bits to use on this file, must be a value between 0000 and |
| /// 0777. |
| /// |
| /// If not specified, the volume defaultMode will be used. This might be in |
| /// conflict with other options that affect the file mode, like fsGroup, and |
| /// the result can be other mode bits set. |
| core.int? mode; |
| |
| /// The relative path of the file to map the key to. |
| /// |
| /// May not be an absolute path. May not contain the path element '..'. May |
| /// not start with the string '..'. |
| core.String? path; |
| |
| KeyToPath(); |
| |
| KeyToPath.fromJson(core.Map _json) { |
| if (_json.containsKey('key')) { |
| key = _json['key'] as core.String; |
| } |
| if (_json.containsKey('mode')) { |
| mode = _json['mode'] as core.int; |
| } |
| if (_json.containsKey('path')) { |
| path = _json['path'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (key != null) 'key': key!, |
| if (mode != null) 'mode': mode!, |
| if (path != null) 'path': path!, |
| }; |
| } |
| |
| /// A list of Authorized Domains. |
| class ListAuthorizedDomainsResponse { |
| /// The authorized domains belonging to the user. |
| core.List<AuthorizedDomain>? domains; |
| |
| /// Continuation token for fetching the next page of results. |
| core.String? nextPageToken; |
| |
| ListAuthorizedDomainsResponse(); |
| |
| ListAuthorizedDomainsResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('domains')) { |
| domains = (_json['domains'] as core.List) |
| .map<AuthorizedDomain>((value) => AuthorizedDomain.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('nextPageToken')) { |
| nextPageToken = _json['nextPageToken'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (domains != null) |
| 'domains': domains!.map((value) => value.toJson()).toList(), |
| if (nextPageToken != null) 'nextPageToken': nextPageToken!, |
| }; |
| } |
| |
| /// ListConfigurationsResponse is a list of Configuration resources. |
| class ListConfigurationsResponse { |
| /// The API version for this call such as "serving.knative.dev/v1". |
| core.String? apiVersion; |
| |
| /// List of Configurations. |
| core.List<Configuration>? items; |
| |
| /// The kind of this resource, in this case "ConfigurationList". |
| core.String? kind; |
| |
| /// Metadata associated with this Configuration list. |
| ListMeta? metadata; |
| |
| /// Locations that could not be reached. |
| core.List<core.String>? unreachable; |
| |
| ListConfigurationsResponse(); |
| |
| ListConfigurationsResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('apiVersion')) { |
| apiVersion = _json['apiVersion'] as core.String; |
| } |
| if (_json.containsKey('items')) { |
| items = (_json['items'] as core.List) |
| .map<Configuration>((value) => Configuration.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('kind')) { |
| kind = _json['kind'] as core.String; |
| } |
| if (_json.containsKey('metadata')) { |
| metadata = ListMeta.fromJson( |
| _json['metadata'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('unreachable')) { |
| unreachable = (_json['unreachable'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (apiVersion != null) 'apiVersion': apiVersion!, |
| if (items != null) |
| 'items': items!.map((value) => value.toJson()).toList(), |
| if (kind != null) 'kind': kind!, |
| if (metadata != null) 'metadata': metadata!.toJson(), |
| if (unreachable != null) 'unreachable': unreachable!, |
| }; |
| } |
| |
| /// ListDomainMappingsResponse is a list of DomainMapping resources. |
| class ListDomainMappingsResponse { |
| /// The API version for this call such as "domains.cloudrun.com/v1". |
| core.String? apiVersion; |
| |
| /// List of DomainMappings. |
| core.List<DomainMapping>? items; |
| |
| /// The kind of this resource, in this case "DomainMappingList". |
| core.String? kind; |
| |
| /// Metadata associated with this DomainMapping list. |
| ListMeta? metadata; |
| |
| /// Locations that could not be reached. |
| core.List<core.String>? unreachable; |
| |
| ListDomainMappingsResponse(); |
| |
| ListDomainMappingsResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('apiVersion')) { |
| apiVersion = _json['apiVersion'] as core.String; |
| } |
| if (_json.containsKey('items')) { |
| items = (_json['items'] as core.List) |
| .map<DomainMapping>((value) => DomainMapping.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('kind')) { |
| kind = _json['kind'] as core.String; |
| } |
| if (_json.containsKey('metadata')) { |
| metadata = ListMeta.fromJson( |
| _json['metadata'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('unreachable')) { |
| unreachable = (_json['unreachable'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (apiVersion != null) 'apiVersion': apiVersion!, |
| if (items != null) |
| 'items': items!.map((value) => value.toJson()).toList(), |
| if (kind != null) 'kind': kind!, |
| if (metadata != null) 'metadata': metadata!.toJson(), |
| if (unreachable != null) 'unreachable': unreachable!, |
| }; |
| } |
| |
| /// The response message for Locations.ListLocations. |
| class ListLocationsResponse { |
| /// A list of locations that matches the specified filter in the request. |
| core.List<Location>? locations; |
| |
| /// The standard List next-page token. |
| core.String? nextPageToken; |
| |
| ListLocationsResponse(); |
| |
| ListLocationsResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('locations')) { |
| locations = (_json['locations'] as core.List) |
| .map<Location>((value) => |
| Location.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('nextPageToken')) { |
| nextPageToken = _json['nextPageToken'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (locations != null) |
| 'locations': locations!.map((value) => value.toJson()).toList(), |
| if (nextPageToken != null) 'nextPageToken': nextPageToken!, |
| }; |
| } |
| |
| /// ListMeta describes metadata that synthetic resources must have, including |
| /// lists and various status objects. |
| /// |
| /// A resource may have only one of {ObjectMeta, ListMeta}. |
| class ListMeta { |
| /// continue may be set if the user set a limit on the number of items |
| /// returned, and indicates that the server has more data available. |
| /// |
| /// The value is opaque and may be used to issue another request to the |
| /// endpoint that served this list to retrieve the next set of available |
| /// objects. Continuing a list may not be possible if the server configuration |
| /// has changed or more than a few minutes have passed. The resourceVersion |
| /// field returned when using this continue value will be identical to the |
| /// value in the first response. |
| core.String? continue_; |
| |
| /// String that identifies the server's internal version of this object that |
| /// can be used by clients to determine when objects have changed. |
| /// |
| /// Value must be treated as opaque by clients and passed unmodified back to |
| /// the server. Populated by the system. Read-only. More info: |
| /// https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency |
| /// +optional |
| core.String? resourceVersion; |
| |
| /// SelfLink is a URL representing this object. |
| /// |
| /// Populated by the system. Read-only. +optional |
| core.String? selfLink; |
| |
| ListMeta(); |
| |
| ListMeta.fromJson(core.Map _json) { |
| if (_json.containsKey('continue')) { |
| continue_ = _json['continue'] as core.String; |
| } |
| if (_json.containsKey('resourceVersion')) { |
| resourceVersion = _json['resourceVersion'] as core.String; |
| } |
| if (_json.containsKey('selfLink')) { |
| selfLink = _json['selfLink'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (continue_ != null) 'continue': continue_!, |
| if (resourceVersion != null) 'resourceVersion': resourceVersion!, |
| if (selfLink != null) 'selfLink': selfLink!, |
| }; |
| } |
| |
| /// ListRevisionsResponse is a list of Revision resources. |
| class ListRevisionsResponse { |
| /// The API version for this call such as "serving.knative.dev/v1". |
| core.String? apiVersion; |
| |
| /// List of Revisions. |
| core.List<Revision>? items; |
| |
| /// The kind of this resource, in this case "RevisionList". |
| core.String? kind; |
| |
| /// Metadata associated with this revision list. |
| ListMeta? metadata; |
| |
| /// Locations that could not be reached. |
| core.List<core.String>? unreachable; |
| |
| ListRevisionsResponse(); |
| |
| ListRevisionsResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('apiVersion')) { |
| apiVersion = _json['apiVersion'] as core.String; |
| } |
| if (_json.containsKey('items')) { |
| items = (_json['items'] as core.List) |
| .map<Revision>((value) => |
| Revision.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('kind')) { |
| kind = _json['kind'] as core.String; |
| } |
| if (_json.containsKey('metadata')) { |
| metadata = ListMeta.fromJson( |
| _json['metadata'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('unreachable')) { |
| unreachable = (_json['unreachable'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (apiVersion != null) 'apiVersion': apiVersion!, |
| if (items != null) |
| 'items': items!.map((value) => value.toJson()).toList(), |
| if (kind != null) 'kind': kind!, |
| if (metadata != null) 'metadata': metadata!.toJson(), |
| if (unreachable != null) 'unreachable': unreachable!, |
| }; |
| } |
| |
| /// ListRoutesResponse is a list of Route resources. |
| class ListRoutesResponse { |
| /// The API version for this call such as "serving.knative.dev/v1". |
| core.String? apiVersion; |
| |
| /// List of Routes. |
| core.List<Route>? items; |
| |
| /// The kind of this resource, in this case always "RouteList". |
| core.String? kind; |
| |
| /// Metadata associated with this Route list. |
| ListMeta? metadata; |
| |
| /// Locations that could not be reached. |
| core.List<core.String>? unreachable; |
| |
| ListRoutesResponse(); |
| |
| ListRoutesResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('apiVersion')) { |
| apiVersion = _json['apiVersion'] as core.String; |
| } |
| if (_json.containsKey('items')) { |
| items = (_json['items'] as core.List) |
| .map<Route>((value) => |
| Route.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('kind')) { |
| kind = _json['kind'] as core.String; |
| } |
| if (_json.containsKey('metadata')) { |
| metadata = ListMeta.fromJson( |
| _json['metadata'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('unreachable')) { |
| unreachable = (_json['unreachable'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (apiVersion != null) 'apiVersion': apiVersion!, |
| if (items != null) |
| 'items': items!.map((value) => value.toJson()).toList(), |
| if (kind != null) 'kind': kind!, |
| if (metadata != null) 'metadata': metadata!.toJson(), |
| if (unreachable != null) 'unreachable': unreachable!, |
| }; |
| } |
| |
| /// A list of Service resources. |
| class ListServicesResponse { |
| /// The API version for this call such as "serving.knative.dev/v1". |
| core.String? apiVersion; |
| |
| /// List of Services. |
| core.List<Service>? items; |
| |
| /// The kind of this resource, in this case "ServiceList". |
| core.String? kind; |
| |
| /// Metadata associated with this Service list. |
| ListMeta? metadata; |
| |
| /// Locations that could not be reached. |
| core.List<core.String>? unreachable; |
| |
| ListServicesResponse(); |
| |
| ListServicesResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('apiVersion')) { |
| apiVersion = _json['apiVersion'] as core.String; |
| } |
| if (_json.containsKey('items')) { |
| items = (_json['items'] as core.List) |
| .map<Service>((value) => |
| Service.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('kind')) { |
| kind = _json['kind'] as core.String; |
| } |
| if (_json.containsKey('metadata')) { |
| metadata = ListMeta.fromJson( |
| _json['metadata'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('unreachable')) { |
| unreachable = (_json['unreachable'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (apiVersion != null) 'apiVersion': apiVersion!, |
| if (items != null) |
| 'items': items!.map((value) => value.toJson()).toList(), |
| if (kind != null) 'kind': kind!, |
| if (metadata != null) 'metadata': metadata!.toJson(), |
| if (unreachable != null) 'unreachable': unreachable!, |
| }; |
| } |
| |
| /// Not supported by Cloud Run LocalObjectReference contains enough information |
| /// to let you locate the referenced object inside the same namespace. |
| class LocalObjectReference { |
| /// (Optional) Name of the referent. |
| /// |
| /// More info: |
| /// https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
| core.String? name; |
| |
| LocalObjectReference(); |
| |
| LocalObjectReference.fromJson(core.Map _json) { |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (name != null) 'name': name!, |
| }; |
| } |
| |
| /// A resource that represents Google Cloud Platform location. |
| class Location { |
| /// The friendly name for this location, typically a nearby city name. |
| /// |
| /// For example, "Tokyo". |
| core.String? displayName; |
| |
| /// Cross-service attributes for the location. |
| /// |
| /// For example {"cloud.googleapis.com/region": "us-east1"} |
| core.Map<core.String, core.String>? labels; |
| |
| /// The canonical id for this location. |
| /// |
| /// For example: `"us-east1"`. |
| core.String? locationId; |
| |
| /// Service-specific metadata. |
| /// |
| /// For example the available capacity at the given location. |
| /// |
| /// The values for Object must be JSON objects. It can consist of `num`, |
| /// `String`, `bool` and `null` as well as `Map` and `List` values. |
| core.Map<core.String, core.Object>? metadata; |
| |
| /// Resource name for the location, which may vary between implementations. |
| /// |
| /// For example: `"projects/example-project/locations/us-east1"` |
| core.String? name; |
| |
| Location(); |
| |
| Location.fromJson(core.Map _json) { |
| if (_json.containsKey('displayName')) { |
| displayName = _json['displayName'] as core.String; |
| } |
| if (_json.containsKey('labels')) { |
| labels = (_json['labels'] as core.Map<core.String, core.dynamic>).map( |
| (key, item) => core.MapEntry( |
| key, |
| item as core.String, |
| ), |
| ); |
| } |
| if (_json.containsKey('locationId')) { |
| locationId = _json['locationId'] as core.String; |
| } |
| if (_json.containsKey('metadata')) { |
| metadata = (_json['metadata'] as core.Map<core.String, core.dynamic>).map( |
| (key, item) => core.MapEntry( |
| key, |
| item as core.Object, |
| ), |
| ); |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (displayName != null) 'displayName': displayName!, |
| if (labels != null) 'labels': labels!, |
| if (locationId != null) 'locationId': locationId!, |
| if (metadata != null) 'metadata': metadata!, |
| if (name != null) 'name': name!, |
| }; |
| } |
| |
| /// k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is metadata that all |
| /// persisted resources must have, which includes all objects users must create. |
| class ObjectMeta { |
| /// (Optional) Annotations is an unstructured key value map stored with a |
| /// resource that may be set by external tools to store and retrieve arbitrary |
| /// metadata. |
| /// |
| /// They are not queryable and should be preserved when modifying objects. |
| /// More info: http://kubernetes.io/docs/user-guide/annotations |
| core.Map<core.String, core.String>? annotations; |
| |
| /// (Optional) Not supported by Cloud Run The name of the cluster which the |
| /// object belongs to. |
| /// |
| /// This is used to distinguish resources with same name and namespace in |
| /// different clusters. This field is not set anywhere right now and apiserver |
| /// is going to ignore it if set in create or update request. |
| core.String? clusterName; |
| |
| /// (Optional) CreationTimestamp is a timestamp representing the server time |
| /// when this object was created. |
| /// |
| /// It is not guaranteed to be set in happens-before order across separate |
| /// operations. Clients may not set this value. It is represented in RFC3339 |
| /// form and is in UTC. Populated by the system. Read-only. Null for lists. |
| /// More info: |
| /// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata |
| core.String? creationTimestamp; |
| |
| /// (Optional) Not supported by Cloud Run Number of seconds allowed for this |
| /// object to gracefully terminate before it will be removed from the system. |
| /// |
| /// Only set when deletionTimestamp is also set. May only be shortened. |
| /// Read-only. |
| core.int? deletionGracePeriodSeconds; |
| |
| /// (Optional) Not supported by Cloud Run DeletionTimestamp is RFC 3339 date |
| /// and time at which this resource will be deleted. |
| /// |
| /// This field is set by the server when a graceful deletion is requested by |
| /// the user, and is not directly settable by a client. The resource is |
| /// expected to be deleted (no longer visible from resource lists, and not |
| /// reachable by name) after the time in this field, once the finalizers list |
| /// is empty. As long as the finalizers list contains items, deletion is |
| /// blocked. Once the deletionTimestamp is set, this value may not be unset or |
| /// be set further into the future, although it may be shortened or the |
| /// resource may be deleted prior to this time. For example, a user may |
| /// request that a pod is deleted in 30 seconds. The Kubelet will react by |
| /// sending a graceful termination signal to the containers in the pod. After |
| /// that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) |
| /// to the container and after cleanup, remove the pod from the API. In the |
| /// presence of network partitions, this object may still exist after this |
| /// timestamp, until an administrator or automated process can determine the |
| /// resource is fully terminated. If not set, graceful deletion of the object |
| /// has not been requested. Populated by the system when a graceful deletion |
| /// is requested. Read-only. More info: |
| /// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata |
| core.String? deletionTimestamp; |
| |
| /// (Optional) Not supported by Cloud Run Must be empty before the object is |
| /// deleted from the registry. |
| /// |
| /// Each entry is an identifier for the responsible component that will remove |
| /// the entry from the list. If the deletionTimestamp of the object is |
| /// non-nil, entries in this list can only be removed. +patchStrategy=merge |
| core.List<core.String>? finalizers; |
| |
| /// (Optional) Not supported by Cloud Run GenerateName is an optional prefix, |
| /// used by the server, to generate a unique name ONLY IF the Name field has |
| /// not been provided. |
| /// |
| /// If this field is used, the name returned to the client will be different |
| /// than the name passed. This value will also be combined with a unique |
| /// suffix. The provided value has the same validation rules as the Name |
| /// field, and may be truncated by the length of the suffix required to make |
| /// the value unique on the server. If this field is specified and the |
| /// generated name exists, the server will NOT return a 409 - instead, it will |
| /// either return 201 Created or 500 with Reason ServerTimeout indicating a |
| /// unique name could not be found in the time allotted, and the client should |
| /// retry (optionally after the time indicated in the Retry-After header). |
| /// Applied only if Name is not specified. More info: |
| /// https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency |
| /// string generateName = 2; |
| core.String? generateName; |
| |
| /// (Optional) A sequence number representing a specific generation of the |
| /// desired state. |
| /// |
| /// Populated by the system. Read-only. |
| core.int? generation; |
| |
| /// (Optional) Map of string keys and values that can be used to organize and |
| /// categorize (scope and select) objects. |
| /// |
| /// May match selectors of replication controllers and routes. More info: |
| /// http://kubernetes.io/docs/user-guide/labels |
| core.Map<core.String, core.String>? labels; |
| |
| /// Name must be unique within a namespace, within a Cloud Run region. |
| /// |
| /// Is required when creating resources, although some resources may allow a |
| /// client to request the generation of an appropriate name automatically. |
| /// Name is primarily intended for creation idempotence and configuration |
| /// definition. Cannot be updated. More info: |
| /// http://kubernetes.io/docs/user-guide/identifiers#names +optional |
| core.String? name; |
| |
| /// Namespace defines the space within each name must be unique, within a |
| /// Cloud Run region. |
| /// |
| /// In Cloud Run the namespace must be equal to either the project ID or |
| /// project number. |
| core.String? namespace; |
| |
| /// (Optional) Not supported by Cloud Run List of objects that own this |
| /// object. |
| /// |
| /// If ALL objects in the list have been deleted, this object will be garbage |
| /// collected. |
| core.List<OwnerReference>? ownerReferences; |
| |
| /// An opaque value that represents the internal version of this object that |
| /// can be used by clients to determine when objects have changed. |
| /// |
| /// May be used for optimistic concurrency, change detection, and the watch |
| /// operation on a resource or set of resources. Clients must treat these |
| /// values as opaque and passed unmodified back to the server or omit the |
| /// value to disable conflict-detection. They may only be valid for a |
| /// particular resource or set of resources. Populated by the system. |
| /// Read-only. Value must be treated as opaque by clients or omitted. More |
| /// info: |
| /// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency |
| /// |
| /// Optional. |
| core.String? resourceVersion; |
| |
| /// (Optional) SelfLink is a URL representing this object. |
| /// |
| /// Populated by the system. Read-only. string selfLink = 4; |
| core.String? selfLink; |
| |
| /// (Optional) UID is the unique in time and space value for this object. |
| /// |
| /// It is typically generated by the server on successful creation of a |
| /// resource and is not allowed to change on PUT operations. Populated by the |
| /// system. Read-only. More info: |
| /// http://kubernetes.io/docs/user-guide/identifiers#uids |
| core.String? uid; |
| |
| ObjectMeta(); |
| |
| ObjectMeta.fromJson(core.Map _json) { |
| if (_json.containsKey('annotations')) { |
| annotations = |
| (_json['annotations'] as core.Map<core.String, core.dynamic>).map( |
| (key, item) => core.MapEntry( |
| key, |
| item as core.String, |
| ), |
| ); |
| } |
| if (_json.containsKey('clusterName')) { |
| clusterName = _json['clusterName'] as core.String; |
| } |
| if (_json.containsKey('creationTimestamp')) { |
| creationTimestamp = _json['creationTimestamp'] as core.String; |
| } |
| if (_json.containsKey('deletionGracePeriodSeconds')) { |
| deletionGracePeriodSeconds = |
| _json['deletionGracePeriodSeconds'] as core.int; |
| } |
| if (_json.containsKey('deletionTimestamp')) { |
| deletionTimestamp = _json['deletionTimestamp'] as core.String; |
| } |
| if (_json.containsKey('finalizers')) { |
| finalizers = (_json['finalizers'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| if (_json.containsKey('generateName')) { |
| generateName = _json['generateName'] as core.String; |
| } |
| if (_json.containsKey('generation')) { |
| generation = _json['generation'] as core.int; |
| } |
| if (_json.containsKey('labels')) { |
| labels = (_json['labels'] as core.Map<core.String, core.dynamic>).map( |
| (key, item) => core.MapEntry( |
| key, |
| item as core.String, |
| ), |
| ); |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('namespace')) { |
| namespace = _json['namespace'] as core.String; |
| } |
| if (_json.containsKey('ownerReferences')) { |
| ownerReferences = (_json['ownerReferences'] as core.List) |
| .map<OwnerReference>((value) => OwnerReference.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('resourceVersion')) { |
| resourceVersion = _json['resourceVersion'] as core.String; |
| } |
| if (_json.containsKey('selfLink')) { |
| selfLink = _json['selfLink'] as core.String; |
| } |
| if (_json.containsKey('uid')) { |
| uid = _json['uid'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (annotations != null) 'annotations': annotations!, |
| if (clusterName != null) 'clusterName': clusterName!, |
| if (creationTimestamp != null) 'creationTimestamp': creationTimestamp!, |
| if (deletionGracePeriodSeconds != null) |
| 'deletionGracePeriodSeconds': deletionGracePeriodSeconds!, |
| if (deletionTimestamp != null) 'deletionTimestamp': deletionTimestamp!, |
| if (finalizers != null) 'finalizers': finalizers!, |
| if (generateName != null) 'generateName': generateName!, |
| if (generation != null) 'generation': generation!, |
| if (labels != null) 'labels': labels!, |
| if (name != null) 'name': name!, |
| if (namespace != null) 'namespace': namespace!, |
| if (ownerReferences != null) |
| 'ownerReferences': |
| ownerReferences!.map((value) => value.toJson()).toList(), |
| if (resourceVersion != null) 'resourceVersion': resourceVersion!, |
| if (selfLink != null) 'selfLink': selfLink!, |
| if (uid != null) 'uid': uid!, |
| }; |
| } |
| |
| /// OwnerReference contains enough information to let you identify an owning |
| /// object. |
| /// |
| /// Currently, an owning object must be in the same namespace, so there is no |
| /// namespace field. |
| class OwnerReference { |
| /// API version of the referent. |
| core.String? apiVersion; |
| |
| /// If true, AND if the owner has the "foregroundDeletion" finalizer, then the |
| /// owner cannot be deleted from the key-value store until this reference is |
| /// removed. |
| /// |
| /// Defaults to false. To set this field, a user needs "delete" permission of |
| /// the owner, otherwise 422 (Unprocessable Entity) will be returned. |
| /// +optional |
| core.bool? blockOwnerDeletion; |
| |
| /// If true, this reference points to the managing controller. |
| /// |
| /// +optional |
| core.bool? controller; |
| |
| /// Kind of the referent. |
| /// |
| /// More info: |
| /// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| core.String? kind; |
| |
| /// Name of the referent. |
| /// |
| /// More info: http://kubernetes.io/docs/user-guide/identifiers#names |
| core.String? name; |
| |
| /// UID of the referent. |
| /// |
| /// More info: http://kubernetes.io/docs/user-guide/identifiers#uids |
| core.String? uid; |
| |
| OwnerReference(); |
| |
| OwnerReference.fromJson(core.Map _json) { |
| if (_json.containsKey('apiVersion')) { |
| apiVersion = _json['apiVersion'] as core.String; |
| } |
| if (_json.containsKey('blockOwnerDeletion')) { |
| blockOwnerDeletion = _json['blockOwnerDeletion'] as core.bool; |
| } |
| if (_json.containsKey('controller')) { |
| controller = _json['controller'] as core.bool; |
| } |
| if (_json.containsKey('kind')) { |
| kind = _json['kind'] as core.String; |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('uid')) { |
| uid = _json['uid'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (apiVersion != null) 'apiVersion': apiVersion!, |
| if (blockOwnerDeletion != null) |
| 'blockOwnerDeletion': blockOwnerDeletion!, |
| if (controller != null) 'controller': controller!, |
| if (kind != null) 'kind': kind!, |
| if (name != null) 'name': name!, |
| if (uid != null) 'uid': uid!, |
| }; |
| } |
| |
| /// An Identity and Access Management (IAM) policy, which specifies access |
| /// controls for Google Cloud resources. |
| /// |
| /// A `Policy` is a collection of `bindings`. A `binding` binds one or more |
| /// `members` to a single `role`. Members can be user accounts, service |
| /// accounts, Google groups, and domains (such as G Suite). A `role` is a named |
| /// list of permissions; each `role` can be an IAM predefined role or a |
| /// user-created custom role. For some types of Google Cloud resources, a |
| /// `binding` can also specify a `condition`, which is a logical expression that |
| /// allows access to a resource only if the expression evaluates to `true`. A |
| /// condition can add constraints based on attributes of the request, the |
| /// resource, or both. To learn which resources support conditions in their IAM |
| /// policies, see the |
| /// [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| /// **JSON example:** { "bindings": \[ { "role": |
| /// "roles/resourcemanager.organizationAdmin", "members": \[ |
| /// "user:mike@example.com", "group:admins@example.com", "domain:google.com", |
| /// "serviceAccount:my-project-id@appspot.gserviceaccount.com" \] }, { "role": |
| /// "roles/resourcemanager.organizationViewer", "members": \[ |
| /// "user:eve@example.com" \], "condition": { "title": "expirable access", |
| /// "description": "Does not grant access after Sep 2020", "expression": |
| /// "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } \], "etag": |
| /// "BwWWja0YfJA=", "version": 3 } **YAML example:** bindings: - members: - |
| /// user:mike@example.com - group:admins@example.com - domain:google.com - |
| /// serviceAccount:my-project-id@appspot.gserviceaccount.com role: |
| /// roles/resourcemanager.organizationAdmin - members: - user:eve@example.com |
| /// role: roles/resourcemanager.organizationViewer condition: title: expirable |
| /// access description: Does not grant access after Sep 2020 expression: |
| /// request.time < timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - |
| /// version: 3 For a description of IAM and its features, see the |
| /// [IAM documentation](https://cloud.google.com/iam/docs/). |
| class Policy { |
| /// Specifies cloud audit logging configuration for this policy. |
| core.List<AuditConfig>? auditConfigs; |
| |
| /// Associates a list of `members` to a `role`. |
| /// |
| /// Optionally, may specify a `condition` that determines how and when the |
| /// `bindings` are applied. Each of the `bindings` must contain at least one |
| /// member. |
| core.List<Binding>? bindings; |
| |
| /// `etag` is used for optimistic concurrency control as a way to help prevent |
| /// simultaneous updates of a policy from overwriting each other. |
| /// |
| /// It is strongly suggested that systems make use of the `etag` in the |
| /// read-modify-write cycle to perform policy updates in order to avoid race |
| /// conditions: An `etag` is returned in the response to `getIamPolicy`, and |
| /// systems are expected to put that etag in the request to `setIamPolicy` to |
| /// ensure that their change will be applied to the same version of the |
| /// policy. **Important:** If you use IAM Conditions, you must include the |
| /// `etag` field whenever you call `setIamPolicy`. If you omit this field, |
| /// then IAM allows you to overwrite a version `3` policy with a version `1` |
| /// policy, and all of the conditions in the version `3` policy are lost. |
| core.String? etag; |
| core.List<core.int> get etagAsBytes => convert.base64.decode(etag!); |
| |
| set etagAsBytes(core.List<core.int> _bytes) { |
| etag = |
| convert.base64.encode(_bytes).replaceAll('/', '_').replaceAll('+', '-'); |
| } |
| |
| /// Specifies the format of the policy. |
| /// |
| /// Valid values are `0`, `1`, and `3`. Requests that specify an invalid value |
| /// are rejected. Any operation that affects conditional role bindings must |
| /// specify version `3`. This requirement applies to the following operations: |
| /// * Getting a policy that includes a conditional role binding * Adding a |
| /// conditional role binding to a policy * Changing a conditional role binding |
| /// in a policy * Removing any role binding, with or without a condition, from |
| /// a policy that includes conditions **Important:** If you use IAM |
| /// Conditions, you must include the `etag` field whenever you call |
| /// `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a |
| /// version `3` policy with a version `1` policy, and all of the conditions in |
| /// the version `3` policy are lost. If a policy does not include any |
| /// conditions, operations on that policy may specify any valid version or |
| /// leave the field unset. To learn which resources support conditions in |
| /// their IAM policies, see the |
| /// [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). |
| core.int? version; |
| |
| Policy(); |
| |
| Policy.fromJson(core.Map _json) { |
| if (_json.containsKey('auditConfigs')) { |
| auditConfigs = (_json['auditConfigs'] as core.List) |
| .map<AuditConfig>((value) => AuditConfig.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('bindings')) { |
| bindings = (_json['bindings'] as core.List) |
| .map<Binding>((value) => |
| Binding.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('etag')) { |
| etag = _json['etag'] as core.String; |
| } |
| if (_json.containsKey('version')) { |
| version = _json['version'] as core.int; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (auditConfigs != null) |
| 'auditConfigs': auditConfigs!.map((value) => value.toJson()).toList(), |
| if (bindings != null) |
| 'bindings': bindings!.map((value) => value.toJson()).toList(), |
| if (etag != null) 'etag': etag!, |
| if (version != null) 'version': version!, |
| }; |
| } |
| |
| /// Not supported by Cloud Run Probe describes a health check to be performed |
| /// against a container to determine whether it is alive or ready to receive |
| /// traffic. |
| class Probe { |
| /// (Optional) One and only one of the following should be specified. |
| /// |
| /// Exec specifies the action to take. A field inlined from the Handler |
| /// message. |
| ExecAction? exec; |
| |
| /// (Optional) Minimum consecutive failures for the probe to be considered |
| /// failed after having succeeded. |
| /// |
| /// Defaults to 3. Minimum value is 1. |
| core.int? failureThreshold; |
| |
| /// (Optional) HTTPGet specifies the http request to perform. |
| /// |
| /// A field inlined from the Handler message. |
| HTTPGetAction? httpGet; |
| |
| /// (Optional) Number of seconds after the container has started before |
| /// liveness probes are initiated. |
| /// |
| /// More info: |
| /// https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
| core.int? initialDelaySeconds; |
| |
| /// (Optional) How often (in seconds) to perform the probe. |
| /// |
| /// Default to 10 seconds. Minimum value is 1. |
| core.int? periodSeconds; |
| |
| /// (Optional) Minimum consecutive successes for the probe to be considered |
| /// successful after having failed. |
| /// |
| /// Defaults to 1. Must be 1 for liveness. Minimum value is 1. |
| core.int? successThreshold; |
| |
| /// (Optional) TCPSocket specifies an action involving a TCP port. |
| /// |
| /// TCP hooks not yet supported A field inlined from the Handler message. |
| TCPSocketAction? tcpSocket; |
| |
| /// (Optional) Number of seconds after which the probe times out. |
| /// |
| /// Defaults to 1 second. Minimum value is 1. More info: |
| /// https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
| core.int? timeoutSeconds; |
| |
| Probe(); |
| |
| Probe.fromJson(core.Map _json) { |
| if (_json.containsKey('exec')) { |
| exec = ExecAction.fromJson( |
| _json['exec'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('failureThreshold')) { |
| failureThreshold = _json['failureThreshold'] as core.int; |
| } |
| if (_json.containsKey('httpGet')) { |
| httpGet = HTTPGetAction.fromJson( |
| _json['httpGet'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('initialDelaySeconds')) { |
| initialDelaySeconds = _json['initialDelaySeconds'] as core.int; |
| } |
| if (_json.containsKey('periodSeconds')) { |
| periodSeconds = _json['periodSeconds'] as core.int; |
| } |
| if (_json.containsKey('successThreshold')) { |
| successThreshold = _json['successThreshold'] as core.int; |
| } |
| if (_json.containsKey('tcpSocket')) { |
| tcpSocket = TCPSocketAction.fromJson( |
| _json['tcpSocket'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('timeoutSeconds')) { |
| timeoutSeconds = _json['timeoutSeconds'] as core.int; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (exec != null) 'exec': exec!.toJson(), |
| if (failureThreshold != null) 'failureThreshold': failureThreshold!, |
| if (httpGet != null) 'httpGet': httpGet!.toJson(), |
| if (initialDelaySeconds != null) |
| 'initialDelaySeconds': initialDelaySeconds!, |
| if (periodSeconds != null) 'periodSeconds': periodSeconds!, |
| if (successThreshold != null) 'successThreshold': successThreshold!, |
| if (tcpSocket != null) 'tcpSocket': tcpSocket!.toJson(), |
| if (timeoutSeconds != null) 'timeoutSeconds': timeoutSeconds!, |
| }; |
| } |
| |
| /// A DNS resource record. |
| class ResourceRecord { |
| /// Relative name of the object affected by this record. |
| /// |
| /// Only applicable for `CNAME` records. Example: 'www'. |
| core.String? name; |
| |
| /// Data for this record. |
| /// |
| /// Values vary by record type, as defined in RFC 1035 (section 5) and RFC |
| /// 1034 (section 3.6.1). |
| core.String? rrdata; |
| |
| /// Resource record type. |
| /// |
| /// Example: `AAAA`. |
| /// Possible string values are: |
| /// - "RECORD_TYPE_UNSPECIFIED" : An unknown resource record. |
| /// - "A" : An A resource record. Data is an IPv4 address. |
| /// - "AAAA" : An AAAA resource record. Data is an IPv6 address. |
| /// - "CNAME" : A CNAME resource record. Data is a domain name to be aliased. |
| core.String? type; |
| |
| ResourceRecord(); |
| |
| ResourceRecord.fromJson(core.Map _json) { |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('rrdata')) { |
| rrdata = _json['rrdata'] as core.String; |
| } |
| if (_json.containsKey('type')) { |
| type = _json['type'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (name != null) 'name': name!, |
| if (rrdata != null) 'rrdata': rrdata!, |
| if (type != null) 'type': type!, |
| }; |
| } |
| |
| /// ResourceRequirements describes the compute resource requirements. |
| class ResourceRequirements { |
| /// (Optional) Only memory and CPU are supported. |
| /// |
| /// Note: The only supported values for CPU are '1', '2', and '4'. Setting 4 |
| /// CPU requires at least 2Gi of memory. Limits describes the maximum amount |
| /// of compute resources allowed. The values of the map is string form of the |
| /// 'quantity' k8s type: |
| /// https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go |
| core.Map<core.String, core.String>? limits; |
| |
| /// (Optional) Only memory and CPU are supported. |
| /// |
| /// Note: The only supported values for CPU are '1' and '2'. Requests |
| /// describes the minimum amount of compute resources required. If Requests is |
| /// omitted for a container, it defaults to Limits if that is explicitly |
| /// specified, otherwise to an implementation-defined value. The values of the |
| /// map is string form of the 'quantity' k8s type: |
| /// https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go |
| core.Map<core.String, core.String>? requests; |
| |
| ResourceRequirements(); |
| |
| ResourceRequirements.fromJson(core.Map _json) { |
| if (_json.containsKey('limits')) { |
| limits = (_json['limits'] as core.Map<core.String, core.dynamic>).map( |
| (key, item) => core.MapEntry( |
| key, |
| item as core.String, |
| ), |
| ); |
| } |
| if (_json.containsKey('requests')) { |
| requests = (_json['requests'] as core.Map<core.String, core.dynamic>).map( |
| (key, item) => core.MapEntry( |
| key, |
| item as core.String, |
| ), |
| ); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (limits != null) 'limits': limits!, |
| if (requests != null) 'requests': requests!, |
| }; |
| } |
| |
| /// Revision is an immutable snapshot of code and configuration. |
| /// |
| /// A revision references a container image. Revisions are created by updates to |
| /// a Configuration. See also: |
| /// https://github.com/knative/serving/blob/master/docs/spec/overview.md#revision |
| class Revision { |
| /// The API version for this call such as "serving.knative.dev/v1". |
| core.String? apiVersion; |
| |
| /// The kind of this resource, in this case "Revision". |
| core.String? kind; |
| |
| /// Metadata associated with this Revision, including name, namespace, labels, |
| /// and annotations. |
| ObjectMeta? metadata; |
| |
| /// Spec holds the desired state of the Revision (from the client). |
| RevisionSpec? spec; |
| |
| /// Status communicates the observed state of the Revision (from the |
| /// controller). |
| RevisionStatus? status; |
| |
| Revision(); |
| |
| Revision.fromJson(core.Map _json) { |
| if (_json.containsKey('apiVersion')) { |
| apiVersion = _json['apiVersion'] as core.String; |
| } |
| if (_json.containsKey('kind')) { |
| kind = _json['kind'] as core.String; |
| } |
| if (_json.containsKey('metadata')) { |
| metadata = ObjectMeta.fromJson( |
| _json['metadata'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('spec')) { |
| spec = RevisionSpec.fromJson( |
| _json['spec'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('status')) { |
| status = RevisionStatus.fromJson( |
| _json['status'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (apiVersion != null) 'apiVersion': apiVersion!, |
| if (kind != null) 'kind': kind!, |
| if (metadata != null) 'metadata': metadata!.toJson(), |
| if (spec != null) 'spec': spec!.toJson(), |
| if (status != null) 'status': status!.toJson(), |
| }; |
| } |
| |
| /// RevisionSpec holds the desired state of the Revision (from the client). |
| class RevisionSpec { |
| /// (Optional) ContainerConcurrency specifies the maximum allowed in-flight |
| /// (concurrent) requests per container instance of the Revision. |
| /// |
| /// Cloud Run fully managed: supported, defaults to 80 Cloud Run for Anthos: |
| /// supported, defaults to 0, which means concurrency to the application is |
| /// not limited, and the system decides the target concurrency for the |
| /// autoscaler. |
| core.int? containerConcurrency; |
| |
| /// Containers holds the single container that defines the unit of execution |
| /// for this Revision. |
| /// |
| /// In the context of a Revision, we disallow a number of fields on this |
| /// Container, including: name and lifecycle. In Cloud Run, only a single |
| /// container may be provided. The runtime contract is documented here: |
| /// https://github.com/knative/serving/blob/master/docs/runtime-contract.md |
| core.List<Container>? containers; |
| |
| /// Email address of the IAM service account associated with the revision of |
| /// the service. |
| /// |
| /// The service account represents the identity of the running revision, and |
| /// determines what permissions the revision has. If not provided, the |
| /// revision will use the project's default service account. |
| core.String? serviceAccountName; |
| |
| /// TimeoutSeconds holds the max duration the instance is allowed for |
| /// responding to a request. |
| /// |
| /// Cloud Run fully managed: defaults to 300 seconds (5 minutes). Maximum |
| /// allowed value is 900 seconds (15 minutes). Cloud Run for Anthos: defaults |
| /// to 300 seconds (5 minutes). Maximum allowed value is configurable by the |
| /// cluster operator. |
| core.int? timeoutSeconds; |
| core.List<Volume>? volumes; |
| |
| RevisionSpec(); |
| |
| RevisionSpec.fromJson(core.Map _json) { |
| if (_json.containsKey('containerConcurrency')) { |
| containerConcurrency = _json['containerConcurrency'] as core.int; |
| } |
| if (_json.containsKey('containers')) { |
| containers = (_json['containers'] as core.List) |
| .map<Container>((value) => |
| Container.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('serviceAccountName')) { |
| serviceAccountName = _json['serviceAccountName'] as core.String; |
| } |
| if (_json.containsKey('timeoutSeconds')) { |
| timeoutSeconds = _json['timeoutSeconds'] as core.int; |
| } |
| if (_json.containsKey('volumes')) { |
| volumes = (_json['volumes'] as core.List) |
| .map<Volume>((value) => |
| Volume.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (containerConcurrency != null) |
| 'containerConcurrency': containerConcurrency!, |
| if (containers != null) |
| 'containers': containers!.map((value) => value.toJson()).toList(), |
| if (serviceAccountName != null) |
| 'serviceAccountName': serviceAccountName!, |
| if (timeoutSeconds != null) 'timeoutSeconds': timeoutSeconds!, |
| if (volumes != null) |
| 'volumes': volumes!.map((value) => value.toJson()).toList(), |
| }; |
| } |
| |
| /// RevisionStatus communicates the observed state of the Revision (from the |
| /// controller). |
| class RevisionStatus { |
| /// Conditions communicates information about ongoing/complete reconciliation |
| /// processes that bring the "spec" inline with the observed state of the |
| /// world. |
| /// |
| /// As a Revision is being prepared, it will incrementally update conditions. |
| /// Revision-specific conditions include: * "ResourcesAvailable": True when |
| /// underlying resources have been provisioned. * "ContainerHealthy": True |
| /// when the Revision readiness check completes. * "Active": True when the |
| /// Revision may receive traffic. |
| core.List<GoogleCloudRunV1Condition>? conditions; |
| |
| /// ImageDigest holds the resolved digest for the image specified within |
| /// .Spec.Container.Image. |
| /// |
| /// The digest is resolved during the creation of Revision. This field holds |
| /// the digest value regardless of whether a tag or digest was originally |
| /// specified in the Container object. |
| core.String? imageDigest; |
| |
| /// Specifies the generated logging url for this particular revision based on |
| /// the revision url template specified in the controller's config. |
| /// |
| /// +optional |
| core.String? logUrl; |
| |
| /// ObservedGeneration is the 'Generation' of the Revision that was last |
| /// processed by the controller. |
| /// |
| /// Clients polling for completed reconciliation should poll until |
| /// observedGeneration = metadata.generation, and the Ready condition's status |
| /// is True or False. |
| core.int? observedGeneration; |
| |
| /// Not currently used by Cloud Run. |
| core.String? serviceName; |
| |
| RevisionStatus(); |
| |
| RevisionStatus.fromJson(core.Map _json) { |
| if (_json.containsKey('conditions')) { |
| conditions = (_json['conditions'] as core.List) |
| .map<GoogleCloudRunV1Condition>((value) => |
| GoogleCloudRunV1Condition.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('imageDigest')) { |
| imageDigest = _json['imageDigest'] as core.String; |
| } |
| if (_json.containsKey('logUrl')) { |
| logUrl = _json['logUrl'] as core.String; |
| } |
| if (_json.containsKey('observedGeneration')) { |
| observedGeneration = _json['observedGeneration'] as core.int; |
| } |
| if (_json.containsKey('serviceName')) { |
| serviceName = _json['serviceName'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (conditions != null) |
| 'conditions': conditions!.map((value) => value.toJson()).toList(), |
| if (imageDigest != null) 'imageDigest': imageDigest!, |
| if (logUrl != null) 'logUrl': logUrl!, |
| if (observedGeneration != null) |
| 'observedGeneration': observedGeneration!, |
| if (serviceName != null) 'serviceName': serviceName!, |
| }; |
| } |
| |
| /// RevisionTemplateSpec describes the data a revision should have when created |
| /// from a template. |
| /// |
| /// Based on: |
| /// https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190 |
| class RevisionTemplate { |
| /// Optional metadata for this Revision, including labels and annotations. |
| /// |
| /// Name will be generated by the Configuration. The following annotation keys |
| /// set properties of the created revision: * |
| /// `autoscaling.knative.dev/minScale` sets the minimum number of instances. * |
| /// `autoscaling.knative.dev/maxScale` sets the maximum number of instances. * |
| /// `run.googleapis.com/cloudsql-instances` sets Cloud SQL connections. |
| /// Multiple values should be comma separated. * |
| /// `run.googleapis.com/vpc-access-connector` sets a Serverless VPC Access |
| /// connector. * `run.googleapis.com/vpc-access-egress` sets VPC egress. |
| /// Supported values are `all-traffic`, `all` (deprecated), and |
| /// `private-ranges-only`. `all-traffic` and `all` provide the same |
| /// functionality. `all` is deprecated but will continue to be supported. |
| /// Prefer `all-traffic`. |
| ObjectMeta? metadata; |
| |
| /// RevisionSpec holds the desired state of the Revision (from the client). |
| RevisionSpec? spec; |
| |
| RevisionTemplate(); |
| |
| RevisionTemplate.fromJson(core.Map _json) { |
| if (_json.containsKey('metadata')) { |
| metadata = ObjectMeta.fromJson( |
| _json['metadata'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('spec')) { |
| spec = RevisionSpec.fromJson( |
| _json['spec'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (metadata != null) 'metadata': metadata!.toJson(), |
| if (spec != null) 'spec': spec!.toJson(), |
| }; |
| } |
| |
| /// Route is responsible for configuring ingress over a collection of Revisions. |
| /// |
| /// Some of the Revisions a Route distributes traffic over may be specified by |
| /// referencing the Configuration responsible for creating them; in these cases |
| /// the Route is additionally responsible for monitoring the Configuration for |
| /// "latest ready" revision changes, and smoothly rolling out latest revisions. |
| /// See also: |
| /// https://github.com/knative/serving/blob/master/docs/spec/overview.md#route |
| /// Cloud Run currently supports referencing a single Configuration to |
| /// automatically deploy the "latest ready" Revision from that Configuration. |
| class Route { |
| /// The API version for this call such as "serving.knative.dev/v1". |
| core.String? apiVersion; |
| |
| /// The kind of this resource, in this case always "Route". |
| core.String? kind; |
| |
| /// Metadata associated with this Route, including name, namespace, labels, |
| /// and annotations. |
| ObjectMeta? metadata; |
| |
| /// Spec holds the desired state of the Route (from the client). |
| RouteSpec? spec; |
| |
| /// Status communicates the observed state of the Route (from the controller). |
| RouteStatus? status; |
| |
| Route(); |
| |
| Route.fromJson(core.Map _json) { |
| if (_json.containsKey('apiVersion')) { |
| apiVersion = _json['apiVersion'] as core.String; |
| } |
| if (_json.containsKey('kind')) { |
| kind = _json['kind'] as core.String; |
| } |
| if (_json.containsKey('metadata')) { |
| metadata = ObjectMeta.fromJson( |
| _json['metadata'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('spec')) { |
| spec = RouteSpec.fromJson( |
| _json['spec'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('status')) { |
| status = RouteStatus.fromJson( |
| _json['status'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (apiVersion != null) 'apiVersion': apiVersion!, |
| if (kind != null) 'kind': kind!, |
| if (metadata != null) 'metadata': metadata!.toJson(), |
| if (spec != null) 'spec': spec!.toJson(), |
| if (status != null) 'status': status!.toJson(), |
| }; |
| } |
| |
| /// RouteSpec holds the desired state of the Route (from the client). |
| class RouteSpec { |
| /// Traffic specifies how to distribute traffic over a collection of Knative |
| /// Revisions and Configurations. |
| /// |
| /// Cloud Run currently supports a single configurationName. |
| core.List<TrafficTarget>? traffic; |
| |
| RouteSpec(); |
| |
| RouteSpec.fromJson(core.Map _json) { |
| if (_json.containsKey('traffic')) { |
| traffic = (_json['traffic'] as core.List) |
| .map<TrafficTarget>((value) => TrafficTarget.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (traffic != null) |
| 'traffic': traffic!.map((value) => value.toJson()).toList(), |
| }; |
| } |
| |
| /// RouteStatus communicates the observed state of the Route (from the |
| /// controller). |
| class RouteStatus { |
| /// Similar to url, information on where the service is available on HTTP. |
| Addressable? address; |
| |
| /// Conditions communicates information about ongoing/complete reconciliation |
| /// processes that bring the "spec" inline with the observed state of the |
| /// world. |
| core.List<GoogleCloudRunV1Condition>? conditions; |
| |
| /// ObservedGeneration is the 'Generation' of the Route that was last |
| /// processed by the controller. |
| /// |
| /// Clients polling for completed reconciliation should poll until |
| /// observedGeneration = metadata.generation and the Ready condition's status |
| /// is True or False. Note that providing a trafficTarget that only has a |
| /// configurationName will result in a Route that does not increment either |
| /// its metadata.generation or its observedGeneration, as new "latest ready" |
| /// revisions from the Configuration are processed without an update to the |
| /// Route's spec. |
| core.int? observedGeneration; |
| |
| /// Traffic holds the configured traffic distribution. |
| /// |
| /// These entries will always contain RevisionName references. When |
| /// ConfigurationName appears in the spec, this will hold the |
| /// LatestReadyRevisionName that we last observed. |
| core.List<TrafficTarget>? traffic; |
| |
| /// URL holds the url that will distribute traffic over the provided traffic |
| /// targets. |
| /// |
| /// It generally has the form: |
| /// https://{route-hash}-{project-hash}-{cluster-level-suffix}.a.run.app |
| core.String? url; |
| |
| RouteStatus(); |
| |
| RouteStatus.fromJson(core.Map _json) { |
| if (_json.containsKey('address')) { |
| address = Addressable.fromJson( |
| _json['address'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('conditions')) { |
| conditions = (_json['conditions'] as core.List) |
| .map<GoogleCloudRunV1Condition>((value) => |
| GoogleCloudRunV1Condition.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('observedGeneration')) { |
| observedGeneration = _json['observedGeneration'] as core.int; |
| } |
| if (_json.containsKey('traffic')) { |
| traffic = (_json['traffic'] as core.List) |
| .map<TrafficTarget>((value) => TrafficTarget.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('url')) { |
| url = _json['url'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (address != null) 'address': address!.toJson(), |
| if (conditions != null) |
| 'conditions': conditions!.map((value) => value.toJson()).toList(), |
| if (observedGeneration != null) |
| 'observedGeneration': observedGeneration!, |
| if (traffic != null) |
| 'traffic': traffic!.map((value) => value.toJson()).toList(), |
| if (url != null) 'url': url!, |
| }; |
| } |
| |
| /// Not supported by Cloud Run SecretEnvSource selects a Secret to populate the |
| /// environment variables with. |
| /// |
| /// The contents of the target Secret's Data field will represent the key-value |
| /// pairs as environment variables. |
| class SecretEnvSource { |
| /// This field should not be used directly as it is meant to be inlined |
| /// directly into the message. |
| /// |
| /// Use the "name" field instead. |
| LocalObjectReference? localObjectReference; |
| |
| /// The Secret to select from. |
| core.String? name; |
| |
| /// (Optional) Specify whether the Secret must be defined |
| core.bool? optional; |
| |
| SecretEnvSource(); |
| |
| SecretEnvSource.fromJson(core.Map _json) { |
| if (_json.containsKey('localObjectReference')) { |
| localObjectReference = LocalObjectReference.fromJson( |
| _json['localObjectReference'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('optional')) { |
| optional = _json['optional'] as core.bool; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (localObjectReference != null) |
| 'localObjectReference': localObjectReference!.toJson(), |
| if (name != null) 'name': name!, |
| if (optional != null) 'optional': optional!, |
| }; |
| } |
| |
| /// SecretKeySelector selects a key of a Secret. |
| class SecretKeySelector { |
| /// A Cloud Secret Manager secret version. |
| /// |
| /// Must be 'latest' for the latest version or an integer for a specific |
| /// version. The key of the secret to select from. Must be a valid secret key. |
| core.String? key; |
| |
| /// This field should not be used directly as it is meant to be inlined |
| /// directly into the message. |
| /// |
| /// Use the "name" field instead. |
| LocalObjectReference? localObjectReference; |
| |
| /// The name of the secret in Cloud Secret Manager. |
| /// |
| /// By default, the secret is assumed to be in the same project. If the secret |
| /// is in another project, you must define an alias. An alias definition has |
| /// the form: :projects//secrets/. If multiple alias definitions are needed, |
| /// they must be separated by commas. The alias definitions must be set on the |
| /// run.googleapis.com/secrets annotation. The name of the secret in the pod's |
| /// namespace to select from. |
| core.String? name; |
| |
| /// (Optional) Specify whether the Secret or its key must be defined |
| core.bool? optional; |
| |
| SecretKeySelector(); |
| |
| SecretKeySelector.fromJson(core.Map _json) { |
| if (_json.containsKey('key')) { |
| key = _json['key'] as core.String; |
| } |
| if (_json.containsKey('localObjectReference')) { |
| localObjectReference = LocalObjectReference.fromJson( |
| _json['localObjectReference'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('optional')) { |
| optional = _json['optional'] as core.bool; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (key != null) 'key': key!, |
| if (localObjectReference != null) |
| 'localObjectReference': localObjectReference!.toJson(), |
| if (name != null) 'name': name!, |
| if (optional != null) 'optional': optional!, |
| }; |
| } |
| |
| /// The secret's value will be presented as the content of a file whose name is |
| /// defined in the item path. |
| /// |
| /// If no items are defined, the name of the file is the secret_name. The |
| /// contents of the target Secret's Data field will be presented in a volume as |
| /// files using the keys in the Data field as the file names. |
| class SecretVolumeSource { |
| /// (Optional) Mode bits to use on created files by default. |
| /// |
| /// Must be a value between 0000 and 0777. Defaults to 0644. Directories |
| /// within the path are not affected by this setting. This might be in |
| /// conflict with other options that affect the file mode, like fsGroup, and |
| /// the result can be other mode bits set. NOTE: This is an integer |
| /// representation of the mode bits. So, the integer value should look exactly |
| /// as the chmod numeric notation, i.e. Unix chmod "777" (a=rwx) should have |
| /// the integer value 777. |
| core.int? defaultMode; |
| |
| /// (Optional) If unspecified, the volume will expose a file whose name is the |
| /// secret_name. |
| /// |
| /// If specified, the key will be used as the version to fetch from Cloud |
| /// Secret Manager and the path will be the name of the file exposed in the |
| /// volume. When items are defined, they must specify a key and a path. If |
| /// unspecified, each key-value pair in the Data field of the referenced |
| /// Secret will be projected into the volume as a file whose name is the key |
| /// and content is the value. If specified, the listed keys will be projected |
| /// into the specified paths, and unlisted keys will not be present. If a key |
| /// is specified that is not present in the Secret, the volume setup will |
| /// error unless it is marked optional. |
| core.List<KeyToPath>? items; |
| |
| /// (Optional) Specify whether the Secret or its keys must be defined. |
| core.bool? optional; |
| |
| /// The name of the secret in Cloud Secret Manager. |
| /// |
| /// By default, the secret is assumed to be in the same project. If the secret |
| /// is in another project, you must define an alias. An alias definition has |
| /// the form: :projects//secrets/. If multiple alias definitions are needed, |
| /// they must be separated by commas. The alias definitions must be set on the |
| /// run.googleapis.com/secrets annotation. Name of the secret in the |
| /// container's namespace to use. |
| core.String? secretName; |
| |
| SecretVolumeSource(); |
| |
| SecretVolumeSource.fromJson(core.Map _json) { |
| if (_json.containsKey('defaultMode')) { |
| defaultMode = _json['defaultMode'] as core.int; |
| } |
| if (_json.containsKey('items')) { |
| items = (_json['items'] as core.List) |
| .map<KeyToPath>((value) => |
| KeyToPath.fromJson(value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('optional')) { |
| optional = _json['optional'] as core.bool; |
| } |
| if (_json.containsKey('secretName')) { |
| secretName = _json['secretName'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (defaultMode != null) 'defaultMode': defaultMode!, |
| if (items != null) |
| 'items': items!.map((value) => value.toJson()).toList(), |
| if (optional != null) 'optional': optional!, |
| if (secretName != null) 'secretName': secretName!, |
| }; |
| } |
| |
| /// Not supported by Cloud Run SecurityContext holds security configuration that |
| /// will be applied to a container. |
| /// |
| /// Some fields are present in both SecurityContext and PodSecurityContext. When |
| /// both are set, the values in SecurityContext take precedence. |
| class SecurityContext { |
| /// (Optional) The UID to run the entrypoint of the container process. |
| /// |
| /// Defaults to user specified in image metadata if unspecified. May also be |
| /// set in PodSecurityContext. If set in both SecurityContext and |
| /// PodSecurityContext, the value specified in SecurityContext takes |
| /// precedence. |
| core.int? runAsUser; |
| |
| SecurityContext(); |
| |
| SecurityContext.fromJson(core.Map _json) { |
| if (_json.containsKey('runAsUser')) { |
| runAsUser = _json['runAsUser'] as core.int; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (runAsUser != null) 'runAsUser': runAsUser!, |
| }; |
| } |
| |
| /// Service acts as a top-level container that manages a set of Routes and |
| /// Configurations which implement a network service. |
| /// |
| /// Service exists to provide a singular abstraction which can be access |
| /// controlled, reasoned about, and which encapsulates software lifecycle |
| /// decisions such as rollout policy and team resource ownership. Service acts |
| /// only as an orchestrator of the underlying Routes and Configurations (much as |
| /// a kubernetes Deployment orchestrates ReplicaSets). The Service's controller |
| /// will track the statuses of its owned Configuration and Route, reflecting |
| /// their statuses and conditions as its own. See also: |
| /// https://github.com/knative/serving/blob/master/docs/spec/overview.md#service |
| class Service { |
| /// The API version for this call such as "serving.knative.dev/v1". |
| core.String? apiVersion; |
| |
| /// The kind of resource, in this case "Service". |
| core.String? kind; |
| |
| /// Metadata associated with this Service, including name, namespace, labels, |
| /// and annotations. |
| /// |
| /// Cloud Run (fully managed) uses the following annotation keys to configure |
| /// features on a Service: * `run.googleapis.com/ingress` sets the ingress |
| /// settings for the Service. See \[the ingress settings |
| /// documentation\](/run/docs/securing/ingress) for details on configuring |
| /// ingress settings. * `run.googleapis.com/ingress-status` is output-only and |
| /// contains the currently active ingress settings for the Service. |
| /// `run.googleapis.com/ingress-status` may differ from |
| /// `run.googleapis.com/ingress` while the system is processing a change to |
| /// `run.googleapis.com/ingress` or if the system failed to process a change |
| /// to `run.googleapis.com/ingress`. When the system has processed all changes |
| /// successfully `run.googleapis.com/ingress-status` and |
| /// `run.googleapis.com/ingress` are equal. |
| ObjectMeta? metadata; |
| |
| /// Spec holds the desired state of the Service (from the client). |
| ServiceSpec? spec; |
| |
| /// Status communicates the observed state of the Service (from the |
| /// controller). |
| ServiceStatus? status; |
| |
| Service(); |
| |
| Service.fromJson(core.Map _json) { |
| if (_json.containsKey('apiVersion')) { |
| apiVersion = _json['apiVersion'] as core.String; |
| } |
| if (_json.containsKey('kind')) { |
| kind = _json['kind'] as core.String; |
| } |
| if (_json.containsKey('metadata')) { |
| metadata = ObjectMeta.fromJson( |
| _json['metadata'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('spec')) { |
| spec = ServiceSpec.fromJson( |
| _json['spec'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('status')) { |
| status = ServiceStatus.fromJson( |
| _json['status'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (apiVersion != null) 'apiVersion': apiVersion!, |
| if (kind != null) 'kind': kind!, |
| if (metadata != null) 'metadata': metadata!.toJson(), |
| if (spec != null) 'spec': spec!.toJson(), |
| if (status != null) 'status': status!.toJson(), |
| }; |
| } |
| |
| /// ServiceSpec holds the desired state of the Route (from the client), which is |
| /// used to manipulate the underlying Route and Configuration(s). |
| class ServiceSpec { |
| /// Template holds the latest specification for the Revision to be stamped |
| /// out. |
| RevisionTemplate? template; |
| |
| /// Traffic specifies how to distribute traffic over a collection of Knative |
| /// Revisions and Configurations. |
| core.List<TrafficTarget>? traffic; |
| |
| ServiceSpec(); |
| |
| ServiceSpec.fromJson(core.Map _json) { |
| if (_json.containsKey('template')) { |
| template = RevisionTemplate.fromJson( |
| _json['template'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('traffic')) { |
| traffic = (_json['traffic'] as core.List) |
| .map<TrafficTarget>((value) => TrafficTarget.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (template != null) 'template': template!.toJson(), |
| if (traffic != null) |
| 'traffic': traffic!.map((value) => value.toJson()).toList(), |
| }; |
| } |
| |
| /// The current state of the Service. |
| /// |
| /// Output only. |
| class ServiceStatus { |
| /// From RouteStatus. |
| /// |
| /// Similar to url, information on where the service is available on HTTP. |
| Addressable? address; |
| |
| /// Conditions communicates information about ongoing/complete reconciliation |
| /// processes that bring the "spec" inline with the observed state of the |
| /// world. |
| /// |
| /// Service-specific conditions include: * "ConfigurationsReady": true when |
| /// the underlying Configuration is ready. * "RoutesReady": true when the |
| /// underlying Route is ready. * "Ready": true when both the underlying Route |
| /// and Configuration are ready. |
| core.List<GoogleCloudRunV1Condition>? conditions; |
| |
| /// From ConfigurationStatus. |
| /// |
| /// LatestCreatedRevisionName is the last revision that was created from this |
| /// Service's Configuration. It might not be ready yet, for that use |
| /// LatestReadyRevisionName. |
| core.String? latestCreatedRevisionName; |
| |
| /// From ConfigurationStatus. |
| /// |
| /// LatestReadyRevisionName holds the name of the latest Revision stamped out |
| /// from this Service's Configuration that has had its "Ready" condition |
| /// become "True". |
| core.String? latestReadyRevisionName; |
| |
| /// ObservedGeneration is the 'Generation' of the Route that was last |
| /// processed by the controller. |
| /// |
| /// Clients polling for completed reconciliation should poll until |
| /// observedGeneration = metadata.generation and the Ready condition's status |
| /// is True or False. |
| core.int? observedGeneration; |
| |
| /// From RouteStatus. |
| /// |
| /// Traffic holds the configured traffic distribution. These entries will |
| /// always contain RevisionName references. When ConfigurationName appears in |
| /// the spec, this will hold the LatestReadyRevisionName that we last |
| /// observed. |
| core.List<TrafficTarget>? traffic; |
| |
| /// From RouteStatus. |
| /// |
| /// URL holds the url that will distribute traffic over the provided traffic |
| /// targets. It generally has the form |
| /// https://{route-hash}-{project-hash}-{cluster-level-suffix}.a.run.app |
| core.String? url; |
| |
| ServiceStatus(); |
| |
| ServiceStatus.fromJson(core.Map _json) { |
| if (_json.containsKey('address')) { |
| address = Addressable.fromJson( |
| _json['address'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('conditions')) { |
| conditions = (_json['conditions'] as core.List) |
| .map<GoogleCloudRunV1Condition>((value) => |
| GoogleCloudRunV1Condition.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('latestCreatedRevisionName')) { |
| latestCreatedRevisionName = |
| _json['latestCreatedRevisionName'] as core.String; |
| } |
| if (_json.containsKey('latestReadyRevisionName')) { |
| latestReadyRevisionName = _json['latestReadyRevisionName'] as core.String; |
| } |
| if (_json.containsKey('observedGeneration')) { |
| observedGeneration = _json['observedGeneration'] as core.int; |
| } |
| if (_json.containsKey('traffic')) { |
| traffic = (_json['traffic'] as core.List) |
| .map<TrafficTarget>((value) => TrafficTarget.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('url')) { |
| url = _json['url'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (address != null) 'address': address!.toJson(), |
| if (conditions != null) |
| 'conditions': conditions!.map((value) => value.toJson()).toList(), |
| if (latestCreatedRevisionName != null) |
| 'latestCreatedRevisionName': latestCreatedRevisionName!, |
| if (latestReadyRevisionName != null) |
| 'latestReadyRevisionName': latestReadyRevisionName!, |
| if (observedGeneration != null) |
| 'observedGeneration': observedGeneration!, |
| if (traffic != null) |
| 'traffic': traffic!.map((value) => value.toJson()).toList(), |
| if (url != null) 'url': url!, |
| }; |
| } |
| |
| /// Request message for `SetIamPolicy` method. |
| class SetIamPolicyRequest { |
| /// REQUIRED: The complete policy to be applied to the `resource`. |
| /// |
| /// The size of the policy is limited to a few 10s of KB. An empty policy is a |
| /// valid policy but certain Cloud Platform services (such as Projects) might |
| /// reject them. |
| Policy? policy; |
| |
| /// OPTIONAL: A FieldMask specifying which fields of the policy to modify. |
| /// |
| /// Only the fields in the mask will be modified. If no mask is provided, the |
| /// following default mask is used: `paths: "bindings, etag"` |
| core.String? updateMask; |
| |
| SetIamPolicyRequest(); |
| |
| SetIamPolicyRequest.fromJson(core.Map _json) { |
| if (_json.containsKey('policy')) { |
| policy = Policy.fromJson( |
| _json['policy'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('updateMask')) { |
| updateMask = _json['updateMask'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (policy != null) 'policy': policy!.toJson(), |
| if (updateMask != null) 'updateMask': updateMask!, |
| }; |
| } |
| |
| /// Status is a return value for calls that don't return other objects |
| class Status { |
| /// Suggested HTTP return code for this status, 0 if not set. |
| /// |
| /// +optional |
| core.int? code; |
| |
| /// Extended data associated with the reason. |
| /// |
| /// Each reason may define its own extended details. This field is optional |
| /// and the data returned is not guaranteed to conform to any schema except |
| /// that defined by the reason type. +optional |
| StatusDetails? details; |
| |
| /// A human-readable description of the status of this operation. |
| /// |
| /// +optional |
| core.String? message; |
| |
| /// Standard list metadata. |
| /// |
| /// More info: |
| /// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| /// +optional |
| ListMeta? metadata; |
| |
| /// A machine-readable description of why this operation is in the "Failure" |
| /// status. |
| /// |
| /// If this value is empty there is no information available. A Reason |
| /// clarifies an HTTP status code but does not override it. +optional |
| core.String? reason; |
| |
| /// Status of the operation. |
| /// |
| /// One of: "Success" or "Failure". More info: |
| /// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
| /// +optional |
| core.String? status; |
| |
| Status(); |
| |
| Status.fromJson(core.Map _json) { |
| if (_json.containsKey('code')) { |
| code = _json['code'] as core.int; |
| } |
| if (_json.containsKey('details')) { |
| details = StatusDetails.fromJson( |
| _json['details'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('message')) { |
| message = _json['message'] as core.String; |
| } |
| if (_json.containsKey('metadata')) { |
| metadata = ListMeta.fromJson( |
| _json['metadata'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('reason')) { |
| reason = _json['reason'] as core.String; |
| } |
| if (_json.containsKey('status')) { |
| status = _json['status'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (code != null) 'code': code!, |
| if (details != null) 'details': details!.toJson(), |
| if (message != null) 'message': message!, |
| if (metadata != null) 'metadata': metadata!.toJson(), |
| if (reason != null) 'reason': reason!, |
| if (status != null) 'status': status!, |
| }; |
| } |
| |
| /// StatusCause provides more information about an api.Status failure, including |
| /// cases when multiple errors are encountered. |
| class StatusCause { |
| /// The field of the resource that has caused this error, as named by its JSON |
| /// serialization. |
| /// |
| /// May include dot and postfix notation for nested attributes. Arrays are |
| /// zero-indexed. Fields may appear more than once in an array of causes due |
| /// to fields having multiple errors. Optional. Examples: "name" - the field |
| /// "name" on the current resource "items\[0\].name" - the field "name" on the |
| /// first array entry in "items" +optional |
| core.String? field; |
| |
| /// A human-readable description of the cause of the error. |
| /// |
| /// This field may be presented as-is to a reader. +optional |
| core.String? message; |
| |
| /// A machine-readable description of the cause of the error. |
| /// |
| /// If this value is empty there is no information available. +optional |
| core.String? reason; |
| |
| StatusCause(); |
| |
| StatusCause.fromJson(core.Map _json) { |
| if (_json.containsKey('field')) { |
| field = _json['field'] as core.String; |
| } |
| if (_json.containsKey('message')) { |
| message = _json['message'] as core.String; |
| } |
| if (_json.containsKey('reason')) { |
| reason = _json['reason'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (field != null) 'field': field!, |
| if (message != null) 'message': message!, |
| if (reason != null) 'reason': reason!, |
| }; |
| } |
| |
| /// StatusDetails is a set of additional properties that MAY be set by the |
| /// server to provide additional information about a response. |
| /// |
| /// The Reason field of a Status object defines what attributes will be set. |
| /// Clients must ignore fields that do not match the defined type of each |
| /// attribute, and should assume that any attribute may be empty, invalid, or |
| /// under defined. |
| class StatusDetails { |
| /// The Causes array includes more details associated with the StatusReason |
| /// failure. |
| /// |
| /// Not all StatusReasons may provide detailed causes. +optional |
| core.List<StatusCause>? causes; |
| |
| /// The group attribute of the resource associated with the status |
| /// StatusReason. |
| /// |
| /// +optional |
| core.String? group; |
| |
| /// The kind attribute of the resource associated with the status |
| /// StatusReason. |
| /// |
| /// On some operations may differ from the requested resource Kind. More info: |
| /// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| /// +optional |
| core.String? kind; |
| |
| /// The name attribute of the resource associated with the status StatusReason |
| /// (when there is a single name which can be described). |
| /// |
| /// +optional |
| core.String? name; |
| |
| /// If specified, the time in seconds before the operation should be retried. |
| /// |
| /// Some errors may indicate the client must take an alternate action - for |
| /// those errors this field may indicate how long to wait before taking the |
| /// alternate action. +optional |
| core.int? retryAfterSeconds; |
| |
| /// UID of the resource. |
| /// |
| /// (when there is a single resource which can be described). More info: |
| /// http://kubernetes.io/docs/user-guide/identifiers#uids +optional |
| core.String? uid; |
| |
| StatusDetails(); |
| |
| StatusDetails.fromJson(core.Map _json) { |
| if (_json.containsKey('causes')) { |
| causes = (_json['causes'] as core.List) |
| .map<StatusCause>((value) => StatusCause.fromJson( |
| value as core.Map<core.String, core.dynamic>)) |
| .toList(); |
| } |
| if (_json.containsKey('group')) { |
| group = _json['group'] as core.String; |
| } |
| if (_json.containsKey('kind')) { |
| kind = _json['kind'] as core.String; |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('retryAfterSeconds')) { |
| retryAfterSeconds = _json['retryAfterSeconds'] as core.int; |
| } |
| if (_json.containsKey('uid')) { |
| uid = _json['uid'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (causes != null) |
| 'causes': causes!.map((value) => value.toJson()).toList(), |
| if (group != null) 'group': group!, |
| if (kind != null) 'kind': kind!, |
| if (name != null) 'name': name!, |
| if (retryAfterSeconds != null) 'retryAfterSeconds': retryAfterSeconds!, |
| if (uid != null) 'uid': uid!, |
| }; |
| } |
| |
| /// Not supported by Cloud Run TCPSocketAction describes an action based on |
| /// opening a socket |
| class TCPSocketAction { |
| /// (Optional) Optional: Host name to connect to, defaults to the pod IP. |
| core.String? host; |
| |
| /// Number or name of the port to access on the container. |
| /// |
| /// Number must be in the range 1 to 65535. Name must be an IANA_SVC_NAME. |
| /// This field is currently limited to integer types only because of proto's |
| /// inability to properly support the IntOrString golang type. |
| core.int? port; |
| |
| TCPSocketAction(); |
| |
| TCPSocketAction.fromJson(core.Map _json) { |
| if (_json.containsKey('host')) { |
| host = _json['host'] as core.String; |
| } |
| if (_json.containsKey('port')) { |
| port = _json['port'] as core.int; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (host != null) 'host': host!, |
| if (port != null) 'port': port!, |
| }; |
| } |
| |
| /// Request message for `TestIamPermissions` method. |
| class TestIamPermissionsRequest { |
| /// The set of permissions to check for the `resource`. |
| /// |
| /// Permissions with wildcards (such as '*' or 'storage.*') are not allowed. |
| /// For more information see |
| /// [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). |
| core.List<core.String>? permissions; |
| |
| TestIamPermissionsRequest(); |
| |
| TestIamPermissionsRequest.fromJson(core.Map _json) { |
| if (_json.containsKey('permissions')) { |
| permissions = (_json['permissions'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (permissions != null) 'permissions': permissions!, |
| }; |
| } |
| |
| /// Response message for `TestIamPermissions` method. |
| class TestIamPermissionsResponse { |
| /// A subset of `TestPermissionsRequest.permissions` that the caller is |
| /// allowed. |
| core.List<core.String>? permissions; |
| |
| TestIamPermissionsResponse(); |
| |
| TestIamPermissionsResponse.fromJson(core.Map _json) { |
| if (_json.containsKey('permissions')) { |
| permissions = (_json['permissions'] as core.List) |
| .map<core.String>((value) => value as core.String) |
| .toList(); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (permissions != null) 'permissions': permissions!, |
| }; |
| } |
| |
| /// TrafficTarget holds a single entry of the routing table for a Route. |
| class TrafficTarget { |
| /// ConfigurationName of a configuration to whose latest revision we will send |
| /// this portion of traffic. |
| /// |
| /// When the "status.latestReadyRevisionName" of the referenced configuration |
| /// changes, we will automatically migrate traffic from the prior "latest |
| /// ready" revision to the new one. This field is never set in Route's status, |
| /// only its spec. This is mutually exclusive with RevisionName. Cloud Run |
| /// currently supports a single ConfigurationName. |
| core.String? configurationName; |
| |
| /// LatestRevision may be optionally provided to indicate that the latest |
| /// ready Revision of the Configuration should be used for this traffic |
| /// target. |
| /// |
| /// When provided LatestRevision must be true if RevisionName is empty; it |
| /// must be false when RevisionName is non-empty. +optional |
| core.bool? latestRevision; |
| |
| /// Percent specifies percent of the traffic to this Revision or |
| /// Configuration. |
| /// |
| /// This defaults to zero if unspecified. Cloud Run currently requires 100 |
| /// percent for a single ConfigurationName TrafficTarget entry. |
| core.int? percent; |
| |
| /// RevisionName of a specific revision to which to send this portion of |
| /// traffic. |
| /// |
| /// This is mutually exclusive with ConfigurationName. Providing RevisionName |
| /// in spec is not currently supported by Cloud Run. |
| core.String? revisionName; |
| |
| /// Tag is optionally used to expose a dedicated url for referencing this |
| /// target exclusively. |
| /// |
| /// +optional |
| core.String? tag; |
| |
| /// URL displays the URL for accessing tagged traffic targets. |
| /// |
| /// URL is displayed in status, and is disallowed on spec. URL must contain a |
| /// scheme (e.g. http://) and a hostname, but may not contain anything else |
| /// (e.g. basic auth, url path, etc.) |
| /// |
| /// Output only. |
| core.String? url; |
| |
| TrafficTarget(); |
| |
| TrafficTarget.fromJson(core.Map _json) { |
| if (_json.containsKey('configurationName')) { |
| configurationName = _json['configurationName'] as core.String; |
| } |
| if (_json.containsKey('latestRevision')) { |
| latestRevision = _json['latestRevision'] as core.bool; |
| } |
| if (_json.containsKey('percent')) { |
| percent = _json['percent'] as core.int; |
| } |
| if (_json.containsKey('revisionName')) { |
| revisionName = _json['revisionName'] as core.String; |
| } |
| if (_json.containsKey('tag')) { |
| tag = _json['tag'] as core.String; |
| } |
| if (_json.containsKey('url')) { |
| url = _json['url'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (configurationName != null) 'configurationName': configurationName!, |
| if (latestRevision != null) 'latestRevision': latestRevision!, |
| if (percent != null) 'percent': percent!, |
| if (revisionName != null) 'revisionName': revisionName!, |
| if (tag != null) 'tag': tag!, |
| if (url != null) 'url': url!, |
| }; |
| } |
| |
| /// Not supported by Cloud Run Volume represents a named volume in a container. |
| class Volume { |
| ConfigMapVolumeSource? configMap; |
| |
| /// Volume's name. |
| core.String? name; |
| SecretVolumeSource? secret; |
| |
| Volume(); |
| |
| Volume.fromJson(core.Map _json) { |
| if (_json.containsKey('configMap')) { |
| configMap = ConfigMapVolumeSource.fromJson( |
| _json['configMap'] as core.Map<core.String, core.dynamic>); |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('secret')) { |
| secret = SecretVolumeSource.fromJson( |
| _json['secret'] as core.Map<core.String, core.dynamic>); |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (configMap != null) 'configMap': configMap!.toJson(), |
| if (name != null) 'name': name!, |
| if (secret != null) 'secret': secret!.toJson(), |
| }; |
| } |
| |
| /// Not supported by Cloud Run VolumeMount describes a mounting of a Volume |
| /// within a container. |
| class VolumeMount { |
| /// Path within the container at which the volume should be mounted. |
| /// |
| /// Must not contain ':'. |
| core.String? mountPath; |
| |
| /// This must match the Name of a Volume. |
| core.String? name; |
| |
| /// (Optional) Only true is accepted. |
| /// |
| /// Defaults to true. |
| core.bool? readOnly; |
| |
| /// (Optional) Path within the volume from which the container's volume should |
| /// be mounted. |
| /// |
| /// Defaults to "" (volume's root). |
| core.String? subPath; |
| |
| VolumeMount(); |
| |
| VolumeMount.fromJson(core.Map _json) { |
| if (_json.containsKey('mountPath')) { |
| mountPath = _json['mountPath'] as core.String; |
| } |
| if (_json.containsKey('name')) { |
| name = _json['name'] as core.String; |
| } |
| if (_json.containsKey('readOnly')) { |
| readOnly = _json['readOnly'] as core.bool; |
| } |
| if (_json.containsKey('subPath')) { |
| subPath = _json['subPath'] as core.String; |
| } |
| } |
| |
| core.Map<core.String, core.dynamic> toJson() => { |
| if (mountPath != null) 'mountPath': mountPath!, |
| if (name != null) 'name': name!, |
| if (readOnly != null) 'readOnly': readOnly!, |
| if (subPath != null) 'subPath': subPath!, |
| }; |
| } |