Index: generated/googleapis_beta/lib/appengine/v1beta.dart |
diff --git a/generated/googleapis_beta/lib/appengine/v1beta.dart b/generated/googleapis_beta/lib/appengine/v1beta.dart |
index 107b1307fdace455fc6d263a1d43aa8bcbdbaa36..45861e72e0268fa2ab738d28a152b4fd2d685c54 100644 |
--- a/generated/googleapis_beta/lib/appengine/v1beta.dart |
+++ b/generated/googleapis_beta/lib/appengine/v1beta.dart |
@@ -44,6 +44,7 @@ class AppsResourceApi { |
AppsAuthorizedCertificatesResourceApi get authorizedCertificates => new AppsAuthorizedCertificatesResourceApi(_requester); |
AppsAuthorizedDomainsResourceApi get authorizedDomains => new AppsAuthorizedDomainsResourceApi(_requester); |
AppsDomainMappingsResourceApi get domainMappings => new AppsDomainMappingsResourceApi(_requester); |
+ AppsFirewallResourceApi get firewall => new AppsFirewallResourceApi(_requester); |
AppsLocationsResourceApi get locations => new AppsLocationsResourceApi(_requester); |
AppsOperationsResourceApi get operations => new AppsOperationsResourceApi(_requester); |
AppsServicesResourceApi get services => new AppsServicesResourceApi(_requester); |
@@ -398,10 +399,10 @@ class AppsAuthorizedCertificatesResourceApi { |
* [appsId] - Part of `parent`. Name of the parent Application resource. |
* Example: apps/myapp. |
* |
- * [pageSize] - Maximum results to return per page. |
- * |
* [pageToken] - Continuation token for fetching the next page of results. |
* |
+ * [pageSize] - Maximum results to return per page. |
+ * |
* Completes with a [ListAuthorizedCertificatesResponse]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
@@ -410,7 +411,7 @@ class AppsAuthorizedCertificatesResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<ListAuthorizedCertificatesResponse> list(core.String appsId, {core.int pageSize, core.String pageToken}) { |
+ async.Future<ListAuthorizedCertificatesResponse> list(core.String appsId, {core.String pageToken, core.int pageSize}) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -421,12 +422,12 @@ class AppsAuthorizedCertificatesResourceApi { |
if (appsId == null) { |
throw new core.ArgumentError("Parameter appsId is required."); |
} |
- if (pageSize != null) { |
- _queryParams["pageSize"] = ["${pageSize}"]; |
- } |
if (pageToken != null) { |
_queryParams["pageToken"] = [pageToken]; |
} |
+ if (pageSize != null) { |
+ _queryParams["pageSize"] = ["${pageSize}"]; |
+ } |
_url = 'v1beta/apps/' + commons.Escaper.ecapeVariable('$appsId') + '/authorizedCertificates'; |
@@ -715,10 +716,10 @@ class AppsDomainMappingsResourceApi { |
* [appsId] - Part of `parent`. Name of the parent Application resource. |
* Example: apps/myapp. |
* |
- * [pageSize] - Maximum results to return per page. |
- * |
* [pageToken] - Continuation token for fetching the next page of results. |
* |
+ * [pageSize] - Maximum results to return per page. |
+ * |
* Completes with a [ListDomainMappingsResponse]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
@@ -727,7 +728,7 @@ class AppsDomainMappingsResourceApi { |
* 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 appsId, {core.int pageSize, core.String pageToken}) { |
+ async.Future<ListDomainMappingsResponse> list(core.String appsId, {core.String pageToken, core.int pageSize}) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -738,12 +739,12 @@ class AppsDomainMappingsResourceApi { |
if (appsId == null) { |
throw new core.ArgumentError("Parameter appsId is required."); |
} |
- if (pageSize != null) { |
- _queryParams["pageSize"] = ["${pageSize}"]; |
- } |
if (pageToken != null) { |
_queryParams["pageToken"] = [pageToken]; |
} |
+ if (pageSize != null) { |
+ _queryParams["pageSize"] = ["${pageSize}"]; |
+ } |
_url = 'v1beta/apps/' + commons.Escaper.ecapeVariable('$appsId') + '/domainMappings'; |
@@ -818,6 +819,320 @@ class AppsDomainMappingsResourceApi { |
} |
+class AppsFirewallResourceApi { |
+ final commons.ApiRequester _requester; |
+ |
+ AppsFirewallIngressRulesResourceApi get ingressRules => new AppsFirewallIngressRulesResourceApi(_requester); |
+ |
+ AppsFirewallResourceApi(commons.ApiRequester client) : |
+ _requester = client; |
+} |
+ |
+ |
+class AppsFirewallIngressRulesResourceApi { |
+ final commons.ApiRequester _requester; |
+ |
+ AppsFirewallIngressRulesResourceApi(commons.ApiRequester client) : |
+ _requester = client; |
+ |
+ /** |
+ * Replaces the entire firewall ruleset in one bulk operation. This overrides |
+ * and replaces the rules of an existing firewall with the new rules.If the |
+ * final rule does not match traffic with the '*' wildcard IP range, then an |
+ * "allow all" rule is explicitly added to the end of the list. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [appsId] - Part of `name`. Name of the Firewall collection to set. Example: |
+ * apps/myapp/firewall/ingressRules. |
+ * |
+ * Completes with a [BatchUpdateIngressRulesResponse]. |
+ * |
+ * 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<BatchUpdateIngressRulesResponse> batchUpdate(BatchUpdateIngressRulesRequest request, core.String appsId) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (appsId == null) { |
+ throw new core.ArgumentError("Parameter appsId is required."); |
+ } |
+ |
+ _url = 'v1beta/apps/' + commons.Escaper.ecapeVariable('$appsId') + '/firewall/ingressRules:batchUpdate'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new BatchUpdateIngressRulesResponse.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Creates a firewall rule for the application. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [appsId] - Part of `parent`. Name of the parent Firewall collection in |
+ * which to create a new rule. Example: apps/myapp/firewall/ingressRules. |
+ * |
+ * Completes with a [FirewallRule]. |
+ * |
+ * 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<FirewallRule> create(FirewallRule request, core.String appsId) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (appsId == null) { |
+ throw new core.ArgumentError("Parameter appsId is required."); |
+ } |
+ |
+ _url = 'v1beta/apps/' + commons.Escaper.ecapeVariable('$appsId') + '/firewall/ingressRules'; |
+ |
+ var _response = _requester.request(_url, |
+ "POST", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new FirewallRule.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Deletes the specified firewall rule. |
+ * |
+ * Request parameters: |
+ * |
+ * [appsId] - Part of `name`. Name of the Firewall resource to delete. |
+ * Example: apps/myapp/firewall/ingressRules/100. |
+ * |
+ * [ingressRulesId] - Part of `name`. See documentation of `appsId`. |
+ * |
+ * Completes with a [Empty]. |
+ * |
+ * 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<Empty> delete(core.String appsId, core.String ingressRulesId) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (appsId == null) { |
+ throw new core.ArgumentError("Parameter appsId is required."); |
+ } |
+ if (ingressRulesId == null) { |
+ throw new core.ArgumentError("Parameter ingressRulesId is required."); |
+ } |
+ |
+ _url = 'v1beta/apps/' + commons.Escaper.ecapeVariable('$appsId') + '/firewall/ingressRules/' + commons.Escaper.ecapeVariable('$ingressRulesId'); |
+ |
+ var _response = _requester.request(_url, |
+ "DELETE", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new Empty.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Gets the specified firewall rule. |
+ * |
+ * Request parameters: |
+ * |
+ * [appsId] - Part of `name`. Name of the Firewall resource to retrieve. |
+ * Example: apps/myapp/firewall/ingressRules/100. |
+ * |
+ * [ingressRulesId] - Part of `name`. See documentation of `appsId`. |
+ * |
+ * Completes with a [FirewallRule]. |
+ * |
+ * 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<FirewallRule> get(core.String appsId, core.String ingressRulesId) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (appsId == null) { |
+ throw new core.ArgumentError("Parameter appsId is required."); |
+ } |
+ if (ingressRulesId == null) { |
+ throw new core.ArgumentError("Parameter ingressRulesId is required."); |
+ } |
+ |
+ _url = 'v1beta/apps/' + commons.Escaper.ecapeVariable('$appsId') + '/firewall/ingressRules/' + commons.Escaper.ecapeVariable('$ingressRulesId'); |
+ |
+ var _response = _requester.request(_url, |
+ "GET", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new FirewallRule.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Lists the firewall rules of an application. |
+ * |
+ * Request parameters: |
+ * |
+ * [appsId] - Part of `parent`. Name of the Firewall collection to retrieve. |
+ * Example: apps/myapp/firewall/ingressRules. |
+ * |
+ * [pageToken] - Continuation token for fetching the next page of results. |
+ * |
+ * [pageSize] - Maximum results to return per page. |
+ * |
+ * [matchingAddress] - A valid IP Address. If set, only rules matching this |
+ * address will be returned. The first returned rule will be the rule that |
+ * fires on requests from this IP. |
+ * |
+ * Completes with a [ListIngressRulesResponse]. |
+ * |
+ * 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<ListIngressRulesResponse> list(core.String appsId, {core.String pageToken, core.int pageSize, core.String matchingAddress}) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (appsId == null) { |
+ throw new core.ArgumentError("Parameter appsId is required."); |
+ } |
+ if (pageToken != null) { |
+ _queryParams["pageToken"] = [pageToken]; |
+ } |
+ if (pageSize != null) { |
+ _queryParams["pageSize"] = ["${pageSize}"]; |
+ } |
+ if (matchingAddress != null) { |
+ _queryParams["matchingAddress"] = [matchingAddress]; |
+ } |
+ |
+ _url = 'v1beta/apps/' + commons.Escaper.ecapeVariable('$appsId') + '/firewall/ingressRules'; |
+ |
+ var _response = _requester.request(_url, |
+ "GET", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new ListIngressRulesResponse.fromJson(data)); |
+ } |
+ |
+ /** |
+ * Updates the specified firewall rule. |
+ * |
+ * [request] - The metadata request object. |
+ * |
+ * Request parameters: |
+ * |
+ * [appsId] - Part of `name`. Name of the Firewall resource to update. |
+ * Example: apps/myapp/firewall/ingressRules/100. |
+ * |
+ * [ingressRulesId] - Part of `name`. See documentation of `appsId`. |
+ * |
+ * [updateMask] - Standard field mask for the set of fields to be updated. |
+ * |
+ * Completes with a [FirewallRule]. |
+ * |
+ * 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<FirewallRule> patch(FirewallRule request, core.String appsId, core.String ingressRulesId, {core.String updateMask}) { |
+ var _url = null; |
+ var _queryParams = new core.Map(); |
+ var _uploadMedia = null; |
+ var _uploadOptions = null; |
+ var _downloadOptions = commons.DownloadOptions.Metadata; |
+ var _body = null; |
+ |
+ if (request != null) { |
+ _body = convert.JSON.encode((request).toJson()); |
+ } |
+ if (appsId == null) { |
+ throw new core.ArgumentError("Parameter appsId is required."); |
+ } |
+ if (ingressRulesId == null) { |
+ throw new core.ArgumentError("Parameter ingressRulesId is required."); |
+ } |
+ if (updateMask != null) { |
+ _queryParams["updateMask"] = [updateMask]; |
+ } |
+ |
+ _url = 'v1beta/apps/' + commons.Escaper.ecapeVariable('$appsId') + '/firewall/ingressRules/' + commons.Escaper.ecapeVariable('$ingressRulesId'); |
+ |
+ var _response = _requester.request(_url, |
+ "PATCH", |
+ body: _body, |
+ queryParams: _queryParams, |
+ uploadOptions: _uploadOptions, |
+ uploadMedia: _uploadMedia, |
+ downloadOptions: _downloadOptions); |
+ return _response.then((data) => new FirewallRule.fromJson(data)); |
+ } |
+ |
+} |
+ |
+ |
class AppsLocationsResourceApi { |
final commons.ApiRequester _requester; |
@@ -876,12 +1191,12 @@ class AppsLocationsResourceApi { |
* [appsId] - Part of `name`. The resource that owns the locations collection, |
* if applicable. |
* |
+ * [pageToken] - The standard list page token. |
+ * |
* [pageSize] - The standard list page size. |
* |
* [filter] - The standard list filter. |
* |
- * [pageToken] - The standard list page token. |
- * |
* Completes with a [ListLocationsResponse]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
@@ -890,7 +1205,7 @@ class AppsLocationsResourceApi { |
* 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 appsId, {core.int pageSize, core.String filter, core.String pageToken}) { |
+ async.Future<ListLocationsResponse> list(core.String appsId, {core.String pageToken, core.int pageSize, core.String filter}) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -901,15 +1216,15 @@ class AppsLocationsResourceApi { |
if (appsId == null) { |
throw new core.ArgumentError("Parameter appsId is required."); |
} |
+ if (pageToken != null) { |
+ _queryParams["pageToken"] = [pageToken]; |
+ } |
if (pageSize != null) { |
_queryParams["pageSize"] = ["${pageSize}"]; |
} |
if (filter != null) { |
_queryParams["filter"] = [filter]; |
} |
- if (pageToken != null) { |
- _queryParams["pageToken"] = [pageToken]; |
- } |
_url = 'v1beta/apps/' + commons.Escaper.ecapeVariable('$appsId') + '/locations'; |
@@ -993,12 +1308,12 @@ class AppsOperationsResourceApi { |
* |
* [appsId] - Part of `name`. The name of the operation's parent resource. |
* |
+ * [pageSize] - The standard list page size. |
+ * |
* [filter] - The standard list filter. |
* |
* [pageToken] - The standard list page token. |
* |
- * [pageSize] - The standard list page size. |
- * |
* Completes with a [ListOperationsResponse]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
@@ -1007,7 +1322,7 @@ class AppsOperationsResourceApi { |
* If the used [http.Client] completes with an error when making a REST call, |
* this method will complete with the same error. |
*/ |
- async.Future<ListOperationsResponse> list(core.String appsId, {core.String filter, core.String pageToken, core.int pageSize}) { |
+ async.Future<ListOperationsResponse> list(core.String appsId, {core.int pageSize, core.String filter, core.String pageToken}) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -1018,15 +1333,15 @@ class AppsOperationsResourceApi { |
if (appsId == null) { |
throw new core.ArgumentError("Parameter appsId is required."); |
} |
+ if (pageSize != null) { |
+ _queryParams["pageSize"] = ["${pageSize}"]; |
+ } |
if (filter != null) { |
_queryParams["filter"] = [filter]; |
} |
if (pageToken != null) { |
_queryParams["pageToken"] = [pageToken]; |
} |
- if (pageSize != null) { |
- _queryParams["pageSize"] = ["${pageSize}"]; |
- } |
_url = 'v1beta/apps/' + commons.Escaper.ecapeVariable('$appsId') + '/operations'; |
@@ -1149,10 +1464,10 @@ class AppsServicesResourceApi { |
* [appsId] - Part of `parent`. Name of the parent Application resource. |
* Example: apps/myapp. |
* |
- * [pageSize] - Maximum results to return per page. |
- * |
* [pageToken] - Continuation token for fetching the next page of results. |
* |
+ * [pageSize] - Maximum results to return per page. |
+ * |
* Completes with a [ListServicesResponse]. |
* |
* Completes with a [commons.ApiRequestError] if the API endpoint returned an |
@@ -1161,7 +1476,7 @@ class AppsServicesResourceApi { |
* 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 appsId, {core.int pageSize, core.String pageToken}) { |
+ async.Future<ListServicesResponse> list(core.String appsId, {core.String pageToken, core.int pageSize}) { |
var _url = null; |
var _queryParams = new core.Map(); |
var _uploadMedia = null; |
@@ -1172,12 +1487,12 @@ class AppsServicesResourceApi { |
if (appsId == null) { |
throw new core.ArgumentError("Parameter appsId is required."); |
} |
- if (pageSize != null) { |
- _queryParams["pageSize"] = ["${pageSize}"]; |
- } |
if (pageToken != null) { |
_queryParams["pageToken"] = [pageToken]; |
} |
+ if (pageSize != null) { |
+ _queryParams["pageSize"] = ["${pageSize}"]; |
+ } |
_url = 'v1beta/apps/' + commons.Escaper.ecapeVariable('$appsId') + '/services'; |
@@ -1974,6 +2289,8 @@ class Application { |
* dispatch rules can be supported.@OutputOnly |
*/ |
core.List<UrlDispatchRule> dispatchRules; |
+ /** The feature specific settings to be used in the application. */ |
+ FeatureSettings featureSettings; |
/** |
* The Google Container Registry domain used for storing managed build docker |
* images for this application. |
@@ -2030,6 +2347,9 @@ class Application { |
if (_json.containsKey("dispatchRules")) { |
dispatchRules = _json["dispatchRules"].map((value) => new UrlDispatchRule.fromJson(value)).toList(); |
} |
+ if (_json.containsKey("featureSettings")) { |
+ featureSettings = new FeatureSettings.fromJson(_json["featureSettings"]); |
+ } |
if (_json.containsKey("gcrDomain")) { |
gcrDomain = _json["gcrDomain"]; |
} |
@@ -2070,6 +2390,9 @@ class Application { |
if (dispatchRules != null) { |
_json["dispatchRules"] = dispatchRules.map((value) => (value).toJson()).toList(); |
} |
+ if (featureSettings != null) { |
+ _json["featureSettings"] = (featureSettings).toJson(); |
+ } |
if (gcrDomain != null) { |
_json["gcrDomain"] = gcrDomain; |
} |
@@ -2427,6 +2750,50 @@ class BasicScaling { |
} |
} |
+/** Request message for Firewall.BatchUpdateIngressRules. */ |
+class BatchUpdateIngressRulesRequest { |
+ /** A list of FirewallRules to replace the existing set. */ |
+ core.List<FirewallRule> ingressRules; |
+ |
+ BatchUpdateIngressRulesRequest(); |
+ |
+ BatchUpdateIngressRulesRequest.fromJson(core.Map _json) { |
+ if (_json.containsKey("ingressRules")) { |
+ ingressRules = _json["ingressRules"].map((value) => new FirewallRule.fromJson(value)).toList(); |
+ } |
+ } |
+ |
+ core.Map<core.String, core.Object> toJson() { |
+ final core.Map<core.String, core.Object> _json = new core.Map<core.String, core.Object>(); |
+ if (ingressRules != null) { |
+ _json["ingressRules"] = ingressRules.map((value) => (value).toJson()).toList(); |
+ } |
+ return _json; |
+ } |
+} |
+ |
+/** Response message for Firewall.UpdateAllIngressRules. */ |
+class BatchUpdateIngressRulesResponse { |
+ /** The full list of ingress FirewallRules for this application. */ |
+ core.List<FirewallRule> ingressRules; |
+ |
+ BatchUpdateIngressRulesResponse(); |
+ |
+ BatchUpdateIngressRulesResponse.fromJson(core.Map _json) { |
+ if (_json.containsKey("ingressRules")) { |
+ ingressRules = _json["ingressRules"].map((value) => new FirewallRule.fromJson(value)).toList(); |
+ } |
+ } |
+ |
+ core.Map<core.String, core.Object> toJson() { |
+ final core.Map<core.String, core.Object> _json = new core.Map<core.String, core.Object>(); |
+ if (ingressRules != null) { |
+ _json["ingressRules"] = ingressRules.map((value) => (value).toJson()).toList(); |
+ } |
+ return _json; |
+ } |
+} |
+ |
/** Google Cloud Container Builder build information. */ |
class BuildInfo { |
/** |
@@ -2853,6 +3220,37 @@ class ErrorHandler { |
} |
} |
+/** |
+ * The feature specific settings to be used in the application. These define |
+ * behaviors that are user configurable. |
+ */ |
+class FeatureSettings { |
+ /** |
+ * Boolean value indicating if split health checks should be used instead of |
+ * the legacy health checks. At an app.yaml level, this means defaulting to |
+ * 'readiness_check' and 'liveness_check' values instead of 'health_check' |
+ * ones. Once the legacy 'health_check' behavior is deprecated, and this value |
+ * is always true, this setting can be removed. |
+ */ |
+ core.bool splitHealthChecks; |
+ |
+ FeatureSettings(); |
+ |
+ FeatureSettings.fromJson(core.Map _json) { |
+ if (_json.containsKey("splitHealthChecks")) { |
+ splitHealthChecks = _json["splitHealthChecks"]; |
+ } |
+ } |
+ |
+ core.Map<core.String, core.Object> toJson() { |
+ final core.Map<core.String, core.Object> _json = new core.Map<core.String, core.Object>(); |
+ if (splitHealthChecks != null) { |
+ _json["splitHealthChecks"] = splitHealthChecks; |
+ } |
+ return _json; |
+ } |
+} |
+ |
/** |
* Single source file that is part of the version to be deployed. Each source |
* file that is deployed must be specified separately. |
@@ -2900,6 +3298,79 @@ class FileInfo { |
} |
} |
+/** |
+ * A single firewall rule that is evaluated against incoming traffic and |
+ * provides an action to take on matched requests. |
+ */ |
+class FirewallRule { |
+ /** |
+ * The action to take on matched requests. |
+ * Possible string values are: |
+ * - "UNSPECIFIED_ACTION" |
+ * - "ALLOW" : Matching requests are allowed. |
+ * - "DENY" : Matching requests are denied. |
+ */ |
+ core.String action; |
+ /** |
+ * An optional string description of this rule. This field has a maximum |
+ * length of 100 characters. |
+ */ |
+ core.String description; |
+ /** |
+ * A positive integer between 1, Int32.MaxValue-1 that defines the order of |
+ * rule evaluation. Rules with the lowest priority are evaluated first.A |
+ * default rule at priority Int32.MaxValue matches all IPv4 and IPv6 traffic |
+ * when no previous rule matches. Only the action of this rule can be modified |
+ * by the user. |
+ */ |
+ core.int priority; |
+ /** |
+ * IP address or range, defined using CIDR notation, of requests that this |
+ * rule applies to. You can use the wildcard character "*" to match all IPs |
+ * equivalent to "0/0" and "::/0" together. Examples: 192.168.1.1 or |
+ * 192.168.0.0/16 or 2001:db8::/32 or |
+ * 2001:0db8:0000:0042:0000:8a2e:0370:7334.<p>Truncation will be silently |
+ * performed on addresses which are not properly truncated. For example, |
+ * 1.2.3.4/24 is accepted as the same address as 1.2.3.0/24. Similarly, for |
+ * IPv6, 2001:db8::1/32 is accepted as the same address as 2001:db8::/32. |
+ */ |
+ core.String sourceRange; |
+ |
+ FirewallRule(); |
+ |
+ FirewallRule.fromJson(core.Map _json) { |
+ if (_json.containsKey("action")) { |
+ action = _json["action"]; |
+ } |
+ if (_json.containsKey("description")) { |
+ description = _json["description"]; |
+ } |
+ if (_json.containsKey("priority")) { |
+ priority = _json["priority"]; |
+ } |
+ if (_json.containsKey("sourceRange")) { |
+ sourceRange = _json["sourceRange"]; |
+ } |
+ } |
+ |
+ core.Map<core.String, core.Object> toJson() { |
+ final core.Map<core.String, core.Object> _json = new core.Map<core.String, core.Object>(); |
+ if (action != null) { |
+ _json["action"] = action; |
+ } |
+ if (description != null) { |
+ _json["description"] = description; |
+ } |
+ if (priority != null) { |
+ _json["priority"] = priority; |
+ } |
+ if (sourceRange != null) { |
+ _json["sourceRange"] = sourceRange; |
+ } |
+ return _json; |
+ } |
+} |
+ |
/** |
* Health checking configuration for VM instances. Unhealthy instances are |
* killed and replaced with new instances. Only applicable for instances in App |
@@ -3336,6 +3807,36 @@ class ListDomainMappingsResponse { |
} |
} |
+/** Response message for Firewall.ListIngressRules. */ |
+class ListIngressRulesResponse { |
+ /** The ingress FirewallRules for this application. */ |
+ core.List<FirewallRule> ingressRules; |
+ /** Continuation token for fetching the next page of results. */ |
+ core.String nextPageToken; |
+ |
+ ListIngressRulesResponse(); |
+ |
+ ListIngressRulesResponse.fromJson(core.Map _json) { |
+ if (_json.containsKey("ingressRules")) { |
+ ingressRules = _json["ingressRules"].map((value) => new FirewallRule.fromJson(value)).toList(); |
+ } |
+ if (_json.containsKey("nextPageToken")) { |
+ nextPageToken = _json["nextPageToken"]; |
+ } |
+ } |
+ |
+ core.Map<core.String, core.Object> toJson() { |
+ final core.Map<core.String, core.Object> _json = new core.Map<core.String, core.Object>(); |
+ if (ingressRules != null) { |
+ _json["ingressRules"] = ingressRules.map((value) => (value).toJson()).toList(); |
+ } |
+ if (nextPageToken != null) { |
+ _json["nextPageToken"] = nextPageToken; |
+ } |
+ return _json; |
+ } |
+} |
+ |
/** Response message for Instances.ListInstances. */ |
class ListInstancesResponse { |
/** The instances belonging to the requested version. */ |
@@ -4322,6 +4823,12 @@ class OperationMetadataV1Beta5 { |
* removed from traffic rotation. |
*/ |
class ReadinessCheck { |
+ /** |
+ * A maximum time limit on application initialization, measured from moment |
+ * the application successfully replies to a healthcheck until it is ready to |
+ * serve traffic. |
+ */ |
+ core.String appStartTimeout; |
/** Interval between health checks. */ |
core.String checkInterval; |
/** Number of consecutive failed checks required before removing traffic. */ |
@@ -4343,6 +4850,9 @@ class ReadinessCheck { |
ReadinessCheck(); |
ReadinessCheck.fromJson(core.Map _json) { |
+ if (_json.containsKey("appStartTimeout")) { |
+ appStartTimeout = _json["appStartTimeout"]; |
+ } |
if (_json.containsKey("checkInterval")) { |
checkInterval = _json["checkInterval"]; |
} |
@@ -4365,6 +4875,9 @@ class ReadinessCheck { |
core.Map<core.String, core.Object> toJson() { |
final core.Map<core.String, core.Object> _json = new core.Map<core.String, core.Object>(); |
+ if (appStartTimeout != null) { |
+ _json["appStartTimeout"] = appStartTimeout; |
+ } |
if (checkInterval != null) { |
_json["checkInterval"] = checkInterval; |
} |
@@ -4630,6 +5143,16 @@ class SslSettings { |
/** Scheduler settings for standard environment. */ |
class StandardSchedulerSettings { |
+ /** |
+ * Maximum number of instances for an app version. Set to a non-positive value |
+ * (0 by convention) to disable max_instances configuration. |
+ */ |
+ core.int maxInstances; |
+ /** |
+ * Minimum number of instances for an app version. Set to a non-positive value |
+ * (0 by convention) to disable min_instances configuration. |
+ */ |
+ core.int minInstances; |
/** Target CPU utilization ratio to maintain when scaling. */ |
core.double targetCpuUtilization; |
/** Target throughput utilization ratio to maintain when scaling */ |
@@ -4638,6 +5161,12 @@ class StandardSchedulerSettings { |
StandardSchedulerSettings(); |
StandardSchedulerSettings.fromJson(core.Map _json) { |
+ if (_json.containsKey("maxInstances")) { |
+ maxInstances = _json["maxInstances"]; |
+ } |
+ if (_json.containsKey("minInstances")) { |
+ minInstances = _json["minInstances"]; |
+ } |
if (_json.containsKey("targetCpuUtilization")) { |
targetCpuUtilization = _json["targetCpuUtilization"]; |
} |
@@ -4648,6 +5177,12 @@ class StandardSchedulerSettings { |
core.Map<core.String, core.Object> toJson() { |
final core.Map<core.String, core.Object> _json = new core.Map<core.String, core.Object>(); |
+ if (maxInstances != null) { |
+ _json["maxInstances"] = maxInstances; |
+ } |
+ if (minInstances != null) { |
+ _json["minInstances"] = minInstances; |
+ } |
if (targetCpuUtilization != null) { |
_json["targetCpuUtilization"] = targetCpuUtilization; |
} |