@pulumi/gcp 8.3.1 → 8.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/apigee/natAddress.d.ts +76 -1
  2. package/apigee/natAddress.js +66 -1
  3. package/apigee/natAddress.js.map +1 -1
  4. package/bigquery/table.d.ts +12 -0
  5. package/bigquery/table.js +2 -0
  6. package/bigquery/table.js.map +1 -1
  7. package/cloudrun/service.d.ts +39 -0
  8. package/cloudrun/service.js +39 -0
  9. package/cloudrun/service.js.map +1 -1
  10. package/cloudrunv2/service.d.ts +33 -0
  11. package/cloudrunv2/service.js +33 -0
  12. package/cloudrunv2/service.js.map +1 -1
  13. package/compute/getRegionInstanceGroupManager.d.ts +135 -0
  14. package/compute/getRegionInstanceGroupManager.js +82 -0
  15. package/compute/getRegionInstanceGroupManager.js.map +1 -0
  16. package/compute/getRouterNat.d.ts +1 -0
  17. package/compute/getRouterNat.js.map +1 -1
  18. package/compute/index.d.ts +9 -0
  19. package/compute/index.js +17 -4
  20. package/compute/index.js.map +1 -1
  21. package/compute/instance.d.ts +3 -3
  22. package/compute/instanceFromMachineImage.d.ts +3 -3
  23. package/compute/instanceFromTemplate.d.ts +3 -3
  24. package/compute/interconnect.d.ts +22 -16
  25. package/compute/interconnect.js +0 -6
  26. package/compute/interconnect.js.map +1 -1
  27. package/compute/regionCommitment.d.ts +12 -0
  28. package/compute/regionCommitment.js +2 -0
  29. package/compute/regionCommitment.js.map +1 -1
  30. package/compute/regionNetworkFirewallPolicyWithRules.d.ts +304 -0
  31. package/compute/regionNetworkFirewallPolicyWithRules.js +210 -0
  32. package/compute/regionNetworkFirewallPolicyWithRules.js.map +1 -0
  33. package/compute/routerNat.d.ts +17 -2
  34. package/compute/routerNat.js +2 -0
  35. package/compute/routerNat.js.map +1 -1
  36. package/compute/routerNatAddress.d.ts +171 -0
  37. package/compute/routerNatAddress.js +113 -0
  38. package/compute/routerNatAddress.js.map +1 -0
  39. package/compute/subnetwork.d.ts +6 -6
  40. package/logging/index.d.ts +3 -0
  41. package/logging/index.js +6 -1
  42. package/logging/index.js.map +1 -1
  43. package/logging/logScope.d.ts +163 -0
  44. package/logging/logScope.js +106 -0
  45. package/logging/logScope.js.map +1 -0
  46. package/looker/instance.d.ts +49 -0
  47. package/looker/instance.js +26 -0
  48. package/looker/instance.js.map +1 -1
  49. package/networkconnectivity/spoke.d.ts +174 -0
  50. package/networkconnectivity/spoke.js +174 -0
  51. package/networkconnectivity/spoke.js.map +1 -1
  52. package/networksecurity/securityProfile.d.ts +1 -1
  53. package/networksecurity/securityProfile.js +1 -1
  54. package/package.json +2 -2
  55. package/privilegedaccessmanager/getEntitlement.d.ts +43 -0
  56. package/privilegedaccessmanager/getEntitlement.js +28 -0
  57. package/privilegedaccessmanager/getEntitlement.js.map +1 -0
  58. package/privilegedaccessmanager/index.d.ts +3 -0
  59. package/privilegedaccessmanager/index.js +4 -1
  60. package/privilegedaccessmanager/index.js.map +1 -1
  61. package/secretmanager/getRegionalSecretVersion.d.ts +2 -2
  62. package/secretmanager/getRegionalSecretVersion.js +2 -2
  63. package/secretmanager/getRegionalSecretVersionAccess.d.ts +105 -0
  64. package/secretmanager/getRegionalSecretVersionAccess.js +58 -0
  65. package/secretmanager/getRegionalSecretVersionAccess.js.map +1 -0
  66. package/secretmanager/getRegionalSecrets.d.ts +88 -0
  67. package/secretmanager/getRegionalSecrets.js +54 -0
  68. package/secretmanager/getRegionalSecrets.js.map +1 -0
  69. package/secretmanager/index.d.ts +6 -0
  70. package/secretmanager/index.js +7 -1
  71. package/secretmanager/index.js.map +1 -1
  72. package/types/input.d.ts +578 -3
  73. package/types/output.d.ts +1055 -5
package/types/output.d.ts CHANGED
@@ -6452,6 +6452,28 @@ export declare namespace bigquery {
6452
6452
  */
6453
6453
  runtimeVersion?: string;
6454
6454
  }
6455
+ interface TableBiglakeConfiguration {
6456
+ /**
6457
+ * The connection specifying the credentials to be used to
6458
+ * read and write to external storage, such as Cloud Storage. The connectionId can
6459
+ * have the form "<project\_id>.<location\_id>.<connection\_id>" or
6460
+ * projects/<project\_id>/locations/<location\_id>/connections/<connection\_id>".
6461
+ */
6462
+ connectionId: string;
6463
+ /**
6464
+ * The file format the table data is stored in.
6465
+ */
6466
+ fileFormat: string;
6467
+ /**
6468
+ * The fully qualified location prefix of the external folder where table data
6469
+ * is stored. The '*' wildcard character is not allowed. The URI should be in the format "gs://bucket/path_to_table/"
6470
+ */
6471
+ storageUri: string;
6472
+ /**
6473
+ * The table format the metadata only snapshots are stored in.
6474
+ */
6475
+ tableFormat: string;
6476
+ }
6455
6477
  interface TableEncryptionConfiguration {
6456
6478
  /**
6457
6479
  * The self link or full name of a key which should be used to
@@ -14839,6 +14861,14 @@ export declare namespace cloudrun {
14839
14861
  * Containers defines the unit of execution for this Revision.
14840
14862
  */
14841
14863
  containers: outputs.cloudrun.GetServiceTemplateSpecContainer[];
14864
+ /**
14865
+ * Node Selector describes the hardware requirements of the resources.
14866
+ * Use the following node selector keys to configure features on a Revision:
14867
+ * - 'run.googleapis.com/accelerator' sets the [type of GPU](https://cloud.google.com/run/docs/configuring/services/gpu) required by the Revision to run.
14868
+ */
14869
+ nodeSelector: {
14870
+ [key: string]: string;
14871
+ };
14842
14872
  /**
14843
14873
  * Email address of the IAM service account associated with the revision of the
14844
14874
  * service. The service account represents the identity of the running revision,
@@ -15635,6 +15665,14 @@ export declare namespace cloudrun {
15635
15665
  * Structure is documented below.
15636
15666
  */
15637
15667
  containers: outputs.cloudrun.ServiceTemplateSpecContainer[];
15668
+ /**
15669
+ * Node Selector describes the hardware requirements of the resources.
15670
+ * Use the following node selector keys to configure features on a Revision:
15671
+ * - `run.googleapis.com/accelerator` sets the [type of GPU](https://cloud.google.com/run/docs/configuring/services/gpu) required by the Revision to run.
15672
+ */
15673
+ nodeSelector?: {
15674
+ [key: string]: string;
15675
+ };
15638
15676
  /**
15639
15677
  * Email address of the IAM service account associated with the revision of the
15640
15678
  * service. The service account represents the identity of the running revision,
@@ -16685,6 +16723,10 @@ export declare namespace cloudrunv2 {
16685
16723
  * If not specified or 0, defaults to 80 when requested CPU >= 1 and defaults to 1 when requested CPU < 1.
16686
16724
  */
16687
16725
  maxInstanceRequestConcurrency: number;
16726
+ /**
16727
+ * Node Selector describes the hardware requirements of the resources.
16728
+ */
16729
+ nodeSelectors: outputs.cloudrunv2.GetServiceTemplateNodeSelector[];
16688
16730
  /**
16689
16731
  * The unique name for the revision. If this field is omitted, it will be automatically generated based on the Service name.
16690
16732
  */
@@ -16895,7 +16937,7 @@ export declare namespace cloudrunv2 {
16895
16937
  */
16896
16938
  cpuIdle: boolean;
16897
16939
  /**
16898
- * Only memory and CPU are supported. Use key 'cpu' for CPU limit and 'memory' for memory limit. Note: The only supported values for CPU are '1', '2', '4', and '8'. Setting 4 CPU requires at least 2Gi of memory. 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
16940
+ * Only memory, CPU, and nvidia.com/gpu are supported. Use key 'cpu' for CPU limit, 'memory' for memory limit, 'nvidia.com/gpu' for gpu limit. Note: The only supported values for CPU are '1', '2', '4', and '8'. Setting 4 CPU requires at least 2Gi of memory. 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
16899
16941
  */
16900
16942
  limits: {
16901
16943
  [key: string]: string;
@@ -16990,6 +17032,12 @@ export declare namespace cloudrunv2 {
16990
17032
  */
16991
17033
  name: string;
16992
17034
  }
17035
+ interface GetServiceTemplateNodeSelector {
17036
+ /**
17037
+ * The GPU to attach to an instance. See https://cloud.google.com/run/docs/configuring/services/gpu for configuring GPU.
17038
+ */
17039
+ accelerator: string;
17040
+ }
16993
17041
  interface GetServiceTemplateScaling {
16994
17042
  /**
16995
17043
  * Maximum number of serving instances that this resource should have.
@@ -17759,6 +17807,11 @@ export declare namespace cloudrunv2 {
17759
17807
  * If not specified or 0, defaults to 80 when requested CPU >= 1 and defaults to 1 when requested CPU < 1.
17760
17808
  */
17761
17809
  maxInstanceRequestConcurrency: number;
17810
+ /**
17811
+ * Node Selector describes the hardware requirements of the resources.
17812
+ * Structure is documented below.
17813
+ */
17814
+ nodeSelector?: outputs.cloudrunv2.ServiceTemplateNodeSelector;
17762
17815
  /**
17763
17816
  * The unique name for the revision. If this field is omitted, it will be automatically generated based on the Service name.
17764
17817
  */
@@ -17982,7 +18035,7 @@ export declare namespace cloudrunv2 {
17982
18035
  */
17983
18036
  cpuIdle?: boolean;
17984
18037
  /**
17985
- * Only memory and CPU are supported. Use key `cpu` for CPU limit and `memory` for memory limit. Note: The only supported values for CPU are '1', '2', '4', and '8'. Setting 4 CPU requires at least 2Gi of memory. 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
18038
+ * Only memory, CPU, and nvidia.com/gpu are supported. Use key `cpu` for CPU limit, `memory` for memory limit, `nvidia.com/gpu` for gpu limit. Note: The only supported values for CPU are '1', '2', '4', and '8'. Setting 4 CPU requires at least 2Gi of memory. 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
17986
18039
  */
17987
18040
  limits: {
17988
18041
  [key: string]: string;
@@ -18081,6 +18134,14 @@ export declare namespace cloudrunv2 {
18081
18134
  */
18082
18135
  name: string;
18083
18136
  }
18137
+ interface ServiceTemplateNodeSelector {
18138
+ /**
18139
+ * The GPU to attach to an instance. See https://cloud.google.com/run/docs/configuring/services/gpu for configuring GPU.
18140
+ *
18141
+ * - - -
18142
+ */
18143
+ accelerator: string;
18144
+ }
18084
18145
  interface ServiceTemplateScaling {
18085
18146
  /**
18086
18147
  * Maximum number of serving instances that this resource should have.
@@ -18094,8 +18155,6 @@ export declare namespace cloudrunv2 {
18094
18155
  interface ServiceTemplateServiceMesh {
18095
18156
  /**
18096
18157
  * The Mesh resource name. For more information see https://cloud.google.com/service-mesh/docs/reference/network-services/rest/v1/projects.locations.meshes#resource:-mesh.
18097
- *
18098
- * - - -
18099
18158
  */
18100
18159
  mesh?: string;
18101
18160
  }
@@ -23157,6 +23216,10 @@ export declare namespace compute {
23157
23216
  * restarted if it was terminated by Compute Engine (not a user).
23158
23217
  */
23159
23218
  automaticRestart: boolean;
23219
+ /**
23220
+ * Beta Time in seconds for host error detection.
23221
+ */
23222
+ hostErrorTimeoutSeconds: number;
23160
23223
  /**
23161
23224
  * Describe the type of termination action for `SPOT` VM. Can be `STOP` or `DELETE`. Read more on [here](https://cloud.google.com/compute/docs/instances/create-use-spot)
23162
23225
  */
@@ -23626,6 +23689,10 @@ export declare namespace compute {
23626
23689
  * terminated by a user). This defaults to true.
23627
23690
  */
23628
23691
  automaticRestart: boolean;
23692
+ /**
23693
+ * Beta Time in seconds for host error detection.
23694
+ */
23695
+ hostErrorTimeoutSeconds: number;
23629
23696
  /**
23630
23697
  * Describe the type of termination action for `SPOT` VM. Can be `STOP` or `DELETE`. Read more on [here](https://cloud.google.com/compute/docs/instances/create-use-spot)
23631
23698
  */
@@ -23894,6 +23961,214 @@ export declare namespace compute {
23894
23961
  */
23895
23962
  port: number;
23896
23963
  }
23964
+ interface GetRegionInstanceGroupManagerAllInstancesConfig {
23965
+ /**
23966
+ * The label key-value pairs that you want to patch onto the instance,
23967
+ */
23968
+ labels: {
23969
+ [key: string]: string;
23970
+ };
23971
+ /**
23972
+ * The metadata key-value pairs that you want to patch onto the instance. For more information, see Project and instance metadata,
23973
+ */
23974
+ metadata: {
23975
+ [key: string]: string;
23976
+ };
23977
+ }
23978
+ interface GetRegionInstanceGroupManagerAutoHealingPolicy {
23979
+ /**
23980
+ * The health check resource that signals autohealing.
23981
+ */
23982
+ healthCheck: string;
23983
+ /**
23984
+ * The number of seconds that the managed instance group waits before it applies autohealing policies to new instances or recently recreated instances. Between 0 and 3600.
23985
+ */
23986
+ initialDelaySec: number;
23987
+ }
23988
+ interface GetRegionInstanceGroupManagerInstanceLifecyclePolicy {
23989
+ /**
23990
+ * Default behavior for all instance or health check failures.
23991
+ */
23992
+ defaultActionOnFailure: string;
23993
+ /**
23994
+ * Specifies whether to apply the group's latest configuration when repairing a VM. Valid options are: YES, NO. If YES and you updated the group's instance template or per-instance configurations after the VM was created, then these changes are applied when VM is repaired. If NO (default), then updates are applied in accordance with the group's update policy type.
23995
+ */
23996
+ forceUpdateOnRepair: string;
23997
+ }
23998
+ interface GetRegionInstanceGroupManagerNamedPort {
23999
+ /**
24000
+ * The name of the instance group. Either `name` or `selfLink` must be provided.
24001
+ */
24002
+ name: string;
24003
+ /**
24004
+ * The port number.
24005
+ */
24006
+ port: number;
24007
+ }
24008
+ interface GetRegionInstanceGroupManagerParam {
24009
+ /**
24010
+ * Resource manager tags to bind to the managed instance group. The tags are key-value pairs. Keys must be in the format tagKeys/123 and values in the format tagValues/456.
24011
+ */
24012
+ resourceManagerTags: {
24013
+ [key: string]: string;
24014
+ };
24015
+ }
24016
+ interface GetRegionInstanceGroupManagerStandbyPolicy {
24017
+ /**
24018
+ * Specifies the number of seconds that the MIG should wait to suspend or stop a VM after that VM was created. The initial delay gives the initialization script the time to prepare your VM for a quick scale out. The value of initial delay must be between 0 and 3600 seconds. The default value is 0.
24019
+ */
24020
+ initialDelaySec: number;
24021
+ /**
24022
+ * Defines how a MIG resumes or starts VMs from a standby pool when the group scales out. The default mode is "MANUAL".
24023
+ */
24024
+ mode: string;
24025
+ }
24026
+ interface GetRegionInstanceGroupManagerStatefulDisk {
24027
+ /**
24028
+ * A value that prescribes what should happen to the stateful disk when the VM instance is deleted. The available options are NEVER and ON_PERMANENT_INSTANCE_DELETION. NEVER - detach the disk when the VM is deleted, but do not delete the disk. ON_PERMANENT_INSTANCE_DELETION will delete the stateful disk when the VM is permanently deleted from the instance group. The default is NEVER.
24029
+ */
24030
+ deleteRule: string;
24031
+ /**
24032
+ * The device name of the disk to be attached.
24033
+ */
24034
+ deviceName: string;
24035
+ }
24036
+ interface GetRegionInstanceGroupManagerStatefulExternalIp {
24037
+ /**
24038
+ * A value that prescribes what should happen to an associated static Address resource when a VM instance is permanently deleted. The available options are NEVER and ON_PERMANENT_INSTANCE_DELETION. NEVER - detach the IP when the VM is deleted, but do not delete the address resource. ON_PERMANENT_INSTANCE_DELETION will delete the stateful address when the VM is permanently deleted from the instance group. The default is NEVER.
24039
+ */
24040
+ deleteRule: string;
24041
+ /**
24042
+ * The network interface name
24043
+ */
24044
+ interfaceName: string;
24045
+ }
24046
+ interface GetRegionInstanceGroupManagerStatefulInternalIp {
24047
+ /**
24048
+ * A value that prescribes what should happen to an associated static Address resource when a VM instance is permanently deleted. The available options are NEVER and ON_PERMANENT_INSTANCE_DELETION. NEVER - detach the IP when the VM is deleted, but do not delete the address resource. ON_PERMANENT_INSTANCE_DELETION will delete the stateful address when the VM is permanently deleted from the instance group. The default is NEVER.
24049
+ */
24050
+ deleteRule: string;
24051
+ /**
24052
+ * The network interface name
24053
+ */
24054
+ interfaceName: string;
24055
+ }
24056
+ interface GetRegionInstanceGroupManagerStatus {
24057
+ /**
24058
+ * Status of all-instances configuration on the group.
24059
+ */
24060
+ allInstancesConfigs: outputs.compute.GetRegionInstanceGroupManagerStatusAllInstancesConfig[];
24061
+ /**
24062
+ * A bit indicating whether the managed instance group is in a stable state. A stable state means that: none of the instances in the managed instance group is currently undergoing any type of change (for example, creation, restart, or deletion); no future changes are scheduled for instances in the managed instance group; and the managed instance group itself is not being modified.
24063
+ */
24064
+ isStable: boolean;
24065
+ /**
24066
+ * Stateful status of the given Instance Group Manager.
24067
+ */
24068
+ statefuls: outputs.compute.GetRegionInstanceGroupManagerStatusStateful[];
24069
+ /**
24070
+ * A status of consistency of Instances' versions with their target version specified by version field on Instance Group Manager.
24071
+ */
24072
+ versionTargets: outputs.compute.GetRegionInstanceGroupManagerStatusVersionTarget[];
24073
+ }
24074
+ interface GetRegionInstanceGroupManagerStatusAllInstancesConfig {
24075
+ /**
24076
+ * Current all-instances configuration revision. This value is in RFC3339 text format.
24077
+ */
24078
+ currentRevision: string;
24079
+ /**
24080
+ * A bit indicating whether this configuration has been applied to all managed instances in the group.
24081
+ */
24082
+ effective: boolean;
24083
+ }
24084
+ interface GetRegionInstanceGroupManagerStatusStateful {
24085
+ /**
24086
+ * A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful config even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions.
24087
+ */
24088
+ hasStatefulConfig: boolean;
24089
+ /**
24090
+ * Status of per-instance configs on the instances.
24091
+ */
24092
+ perInstanceConfigs: outputs.compute.GetRegionInstanceGroupManagerStatusStatefulPerInstanceConfig[];
24093
+ }
24094
+ interface GetRegionInstanceGroupManagerStatusStatefulPerInstanceConfig {
24095
+ /**
24096
+ * A bit indicating if all of the group's per-instance configs (listed in the output of a listPerInstanceConfigs API call) have status EFFECTIVE or there are no per-instance-configs.
24097
+ */
24098
+ allEffective: boolean;
24099
+ }
24100
+ interface GetRegionInstanceGroupManagerStatusVersionTarget {
24101
+ /**
24102
+ * A bit indicating whether version target has been reached in this managed instance group, i.e. all instances are in their target version. Instances' target version are specified by version field on Instance Group Manager.
24103
+ */
24104
+ isReached: boolean;
24105
+ }
24106
+ interface GetRegionInstanceGroupManagerUpdatePolicy {
24107
+ /**
24108
+ * The instance redistribution policy for regional managed instance groups. Valid values are: "PROACTIVE", "NONE". If PROACTIVE (default), the group attempts to maintain an even distribution of VM instances across zones in the region. If NONE, proactive redistribution is disabled.
24109
+ */
24110
+ instanceRedistributionType: string;
24111
+ /**
24112
+ * Specifies a fixed number of VM instances. This must be a positive integer. Conflicts with max_surge_percent. Both cannot be 0
24113
+ */
24114
+ maxSurgeFixed: number;
24115
+ /**
24116
+ * Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%. Conflicts with max_surge_fixed.
24117
+ */
24118
+ maxSurgePercent: number;
24119
+ /**
24120
+ * Specifies a fixed number of VM instances. This must be a positive integer.
24121
+ */
24122
+ maxUnavailableFixed: number;
24123
+ /**
24124
+ * Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.
24125
+ */
24126
+ maxUnavailablePercent: number;
24127
+ /**
24128
+ * Minimum number of seconds to wait for after a newly created instance becomes available. This value must be from range [0, 3600].
24129
+ */
24130
+ minReadySec: number;
24131
+ /**
24132
+ * Minimal action to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to update without stopping instances, RESTART to restart existing instances or REPLACE to delete and create new instances from the target template. If you specify a REFRESH, the Updater will attempt to perform that action only. However, if the Updater determines that the minimal action you specify is not enough to perform the update, it might perform a more disruptive action.
24133
+ */
24134
+ minimalAction: string;
24135
+ /**
24136
+ * Most disruptive action that is allowed to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to allow actions that do not need instance restart, RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all.
24137
+ */
24138
+ mostDisruptiveAllowedAction: string;
24139
+ /**
24140
+ * The instance replacement method for regional managed instance groups. Valid values are: "RECREATE", "SUBSTITUTE". If SUBSTITUTE (default), the group replaces VM instances with new instances that have randomly generated names. If RECREATE, instance names are preserved. You must also set maxUnavailableFixed or maxUnavailablePercent to be greater than 0.
24141
+ */
24142
+ replacementMethod: string;
24143
+ /**
24144
+ * The type of update process. You can specify either PROACTIVE so that the instance group manager proactively executes actions in order to bring instances to their target versions or OPPORTUNISTIC so that no action is proactively executed but the update will be performed as part of other actions (for example, resizes or recreateInstances calls).
24145
+ */
24146
+ type: string;
24147
+ }
24148
+ interface GetRegionInstanceGroupManagerVersion {
24149
+ /**
24150
+ * The full URL to an instance template from which all new instances of this version will be created.
24151
+ */
24152
+ instanceTemplate: string;
24153
+ /**
24154
+ * The name of the instance group. Either `name` or `selfLink` must be provided.
24155
+ */
24156
+ name: string;
24157
+ /**
24158
+ * The number of instances calculated as a fixed number or a percentage depending on the settings.
24159
+ */
24160
+ targetSizes: outputs.compute.GetRegionInstanceGroupManagerVersionTargetSize[];
24161
+ }
24162
+ interface GetRegionInstanceGroupManagerVersionTargetSize {
24163
+ /**
24164
+ * The number of instances which are managed for this version. Conflicts with percent.
24165
+ */
24166
+ fixed: number;
24167
+ /**
24168
+ * The number of instances (calculated as percentage) which are managed for this version. Conflicts with fixed. Note that when using percent, rounding will be in favor of explicitly set targetSize values; a managed instance group with 2 instances and 2 versions, one of which has a target_size.percent of 60 will create 2 instances of that version.
24169
+ */
24170
+ percent: number;
24171
+ }
23897
24172
  interface GetRegionInstanceTemplateAdvancedMachineFeature {
23898
24173
  /**
23899
24174
  * Whether to enable nested virtualization or not.
@@ -24230,6 +24505,10 @@ export declare namespace compute {
24230
24505
  * terminated by a user). This defaults to true.
24231
24506
  */
24232
24507
  automaticRestart: boolean;
24508
+ /**
24509
+ * Beta Time in seconds for host error detection.
24510
+ */
24511
+ hostErrorTimeoutSeconds: number;
24233
24512
  /**
24234
24513
  * Describe the type of termination action for `SPOT` VM. Can be `STOP` or `DELETE`. Read more on [here](https://cloud.google.com/compute/docs/instances/create-use-spot)
24235
24514
  */
@@ -26356,6 +26635,10 @@ export declare namespace compute {
26356
26635
  * Specifies if the instance should be restarted if it was terminated by Compute Engine (not a user).
26357
26636
  */
26358
26637
  automaticRestart: boolean;
26638
+ /**
26639
+ * Specify the time in seconds for host error detection, the value must be within the range of [90, 330] with the increment of 30, if unset, the default behavior of host error recovery will be used.
26640
+ */
26641
+ hostErrorTimeoutSeconds: number;
26359
26642
  /**
26360
26643
  * Specifies the action GCE should take when SPOT VM is preempted.
26361
26644
  */
@@ -26782,6 +27065,10 @@ export declare namespace compute {
26782
27065
  * Specifies if the instance should be restarted if it was terminated by Compute Engine (not a user).
26783
27066
  */
26784
27067
  automaticRestart: boolean;
27068
+ /**
27069
+ * Specify the time in seconds for host error detection, the value must be within the range of [90, 330] with the increment of 30, if unset, the default behavior of host error recovery will be used.
27070
+ */
27071
+ hostErrorTimeoutSeconds: number;
26785
27072
  /**
26786
27073
  * Specifies the action GCE should take when SPOT VM is preempted.
26787
27074
  */
@@ -27364,6 +27651,10 @@ export declare namespace compute {
27364
27651
  * Defaults to true.
27365
27652
  */
27366
27653
  automaticRestart?: boolean;
27654
+ /**
27655
+ * Specifies the time in seconds for host error detection, the value must be within the range of [90, 330] with the increment of 30, if unset, the default behavior of host error recovery will be used.
27656
+ */
27657
+ hostErrorTimeoutSeconds?: number;
27367
27658
  /**
27368
27659
  * Describe the type of termination action for VM. Can be `STOP` or `DELETE`. Read more on [here](https://cloud.google.com/compute/docs/instances/create-use-spot)
27369
27660
  */
@@ -27880,6 +28171,10 @@ export declare namespace compute {
27880
28171
  * terminated by a user). This defaults to true.
27881
28172
  */
27882
28173
  automaticRestart?: boolean;
28174
+ /**
28175
+ * Specifies the time in seconds for host error detection, the value must be within the range of [90, 330] with the increment of 30, if unset, the default behavior of host error recovery will be used.
28176
+ */
28177
+ hostErrorTimeoutSeconds?: number;
27883
28178
  /**
27884
28179
  * Describe the type of termination action for `SPOT` VM. Can be `STOP` or `DELETE`. Read more on [here](https://cloud.google.com/compute/docs/instances/create-use-spot)
27885
28180
  */
@@ -28104,6 +28399,14 @@ export declare namespace compute {
28104
28399
  state: string;
28105
28400
  }
28106
28401
  interface InterconnectMacsec {
28402
+ /**
28403
+ * If set to true, the Interconnect connection is configured with a should-secure
28404
+ * MACsec security policy, that allows the Google router to fallback to cleartext
28405
+ * traffic if the MKA session cannot be established. By default, the Interconnect
28406
+ * connection is configured with a must-secure security policy that drops all traffic
28407
+ * if the MKA session cannot be established with your router.
28408
+ */
28409
+ failOpen?: boolean;
28107
28410
  /**
28108
28411
  * A keychain placeholder describing a set of named key objects along with their
28109
28412
  * start times. A MACsec CKN/CAK is generated for each key in the key chain.
@@ -28115,11 +28418,16 @@ export declare namespace compute {
28115
28418
  }
28116
28419
  interface InterconnectMacsecPreSharedKey {
28117
28420
  /**
28421
+ * (Optional, Deprecated)
28118
28422
  * If set to true, the Interconnect connection is configured with a should-secure
28119
28423
  * MACsec security policy, that allows the Google router to fallback to cleartext
28120
28424
  * traffic if the MKA session cannot be established. By default, the Interconnect
28121
28425
  * connection is configured with a must-secure security policy that drops all traffic
28122
28426
  * if the MKA session cannot be established with your router.
28427
+ *
28428
+ * > **Warning:** `failOpen` is deprecated and will be removed in a future major release. Use other `failOpen` instead.
28429
+ *
28430
+ * @deprecated `failOpen` is deprecated and will be removed in a future major release. Use other `failOpen` instead.
28123
28431
  */
28124
28432
  failOpen?: boolean;
28125
28433
  /**
@@ -30789,6 +31097,10 @@ export declare namespace compute {
30789
31097
  * terminated by a user). This defaults to true.
30790
31098
  */
30791
31099
  automaticRestart?: boolean;
31100
+ /**
31101
+ * Specifies the time in seconds for host error detection, the value must be within the range of [90, 330] with the increment of 30, if unset, the default behavior of host error recovery will be used.
31102
+ */
31103
+ hostErrorTimeoutSeconds?: number;
30792
31104
  /**
30793
31105
  * Describe the type of termination action for `SPOT` VM. Can be `STOP` or `DELETE`. Read more on [here](https://cloud.google.com/compute/docs/instances/create-use-spot)
30794
31106
  */
@@ -31100,6 +31412,419 @@ export declare namespace compute {
31100
31412
  */
31101
31413
  state: string;
31102
31414
  }
31415
+ interface RegionNetworkFirewallPolicyWithRulesPredefinedRule {
31416
+ /**
31417
+ * (Output)
31418
+ * The Action to perform when the client connection triggers the rule. Can currently be either
31419
+ * "allow", "deny", "applySecurityProfileGroup" or "gotoNext".
31420
+ */
31421
+ action: string;
31422
+ /**
31423
+ * (Output)
31424
+ * A description of the rule.
31425
+ */
31426
+ description: string;
31427
+ /**
31428
+ * (Output)
31429
+ * The direction in which this rule applies. If unspecified an INGRESS rule is created.
31430
+ */
31431
+ direction: string;
31432
+ /**
31433
+ * (Output)
31434
+ * Denotes whether the firewall policy rule is disabled. When set to true,
31435
+ * the firewall policy rule is not enforced and traffic behaves as if it did
31436
+ * not exist. If this is unspecified, the firewall policy rule will be
31437
+ * enabled.
31438
+ */
31439
+ disabled: boolean;
31440
+ /**
31441
+ * (Output)
31442
+ * Denotes whether to enable logging for a particular rule.
31443
+ * If logging is enabled, logs will be exported to the
31444
+ * configured export destination in Stackdriver.
31445
+ */
31446
+ enableLogging: boolean;
31447
+ /**
31448
+ * (Output)
31449
+ * A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
31450
+ * Structure is documented below.
31451
+ */
31452
+ matches: outputs.compute.RegionNetworkFirewallPolicyWithRulesPredefinedRuleMatch[];
31453
+ /**
31454
+ * (Output)
31455
+ * An integer indicating the priority of a rule in the list. The priority must be a value
31456
+ * between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the
31457
+ * highest priority and 2147483647 is the lowest priority.
31458
+ */
31459
+ priority: number;
31460
+ /**
31461
+ * (Output)
31462
+ * An optional name for the rule. This field is not a unique identifier
31463
+ * and can be updated.
31464
+ */
31465
+ ruleName: string;
31466
+ /**
31467
+ * (Output)
31468
+ * A fully-qualified URL of a SecurityProfile resource instance.
31469
+ * Example:
31470
+ * https://networksecurity.googleapis.com/v1/projects/{project}/locations/{location}/securityProfileGroups/my-security-profile-group
31471
+ * Must be specified if action is 'apply_security_profile_group'.
31472
+ */
31473
+ securityProfileGroup: string;
31474
+ /**
31475
+ * (Output)
31476
+ * A list of secure tags that controls which instances the firewall rule
31477
+ * applies to. If <code>targetSecureTag</code> are specified, then the
31478
+ * firewall rule applies only to instances in the VPC network that have one
31479
+ * of those EFFECTIVE secure tags, if all the targetSecureTag are in
31480
+ * INEFFECTIVE state, then this rule will be ignored.
31481
+ * <code>targetSecureTag</code> may not be set at the same time as
31482
+ * <code>targetServiceAccounts</code>.
31483
+ * If neither <code>targetServiceAccounts</code> nor
31484
+ * <code>targetSecureTag</code> are specified, the firewall rule applies
31485
+ * to all instances on the specified network.
31486
+ * Maximum number of target label tags allowed is 256.
31487
+ * Structure is documented below.
31488
+ */
31489
+ targetSecureTags: outputs.compute.RegionNetworkFirewallPolicyWithRulesPredefinedRuleTargetSecureTag[];
31490
+ /**
31491
+ * (Output)
31492
+ * A list of service accounts indicating the sets of
31493
+ * instances that are applied with this rule.
31494
+ */
31495
+ targetServiceAccounts: string[];
31496
+ /**
31497
+ * (Output)
31498
+ * Boolean flag indicating if the traffic should be TLS decrypted.
31499
+ * It can be set only if action = 'apply_security_profile_group' and cannot be set for other actions.
31500
+ */
31501
+ tlsInspect: boolean;
31502
+ }
31503
+ interface RegionNetworkFirewallPolicyWithRulesPredefinedRuleMatch {
31504
+ /**
31505
+ * Address groups which should be matched against the traffic destination.
31506
+ * Maximum number of destination address groups is 10.
31507
+ */
31508
+ destAddressGroups: string[];
31509
+ /**
31510
+ * Fully Qualified Domain Name (FQDN) which should be matched against
31511
+ * traffic destination. Maximum number of destination fqdn allowed is 100.
31512
+ */
31513
+ destFqdns: string[];
31514
+ /**
31515
+ * Destination IP address range in CIDR format. Required for
31516
+ * EGRESS rules.
31517
+ */
31518
+ destIpRanges: string[];
31519
+ /**
31520
+ * Region codes whose IP addresses will be used to match for destination
31521
+ * of traffic. Should be specified as 2 letter country code defined as per
31522
+ * ISO 3166 alpha-2 country codes. ex."US"
31523
+ * Maximum number of destination region codes allowed is 5000.
31524
+ */
31525
+ destRegionCodes: string[];
31526
+ /**
31527
+ * Names of Network Threat Intelligence lists.
31528
+ * The IPs in these lists will be matched against traffic destination.
31529
+ */
31530
+ destThreatIntelligences: string[];
31531
+ /**
31532
+ * Pairs of IP protocols and ports that the rule should match.
31533
+ * Structure is documented below.
31534
+ */
31535
+ layer4Configs: outputs.compute.RegionNetworkFirewallPolicyWithRulesPredefinedRuleMatchLayer4Config[];
31536
+ /**
31537
+ * Address groups which should be matched against the traffic source.
31538
+ * Maximum number of source address groups is 10.
31539
+ */
31540
+ srcAddressGroups: string[];
31541
+ /**
31542
+ * Fully Qualified Domain Name (FQDN) which should be matched against
31543
+ * traffic source. Maximum number of source fqdn allowed is 100.
31544
+ */
31545
+ srcFqdns: string[];
31546
+ /**
31547
+ * Source IP address range in CIDR format. Required for
31548
+ * INGRESS rules.
31549
+ */
31550
+ srcIpRanges: string[];
31551
+ /**
31552
+ * Region codes whose IP addresses will be used to match for source
31553
+ * of traffic. Should be specified as 2 letter country code defined as per
31554
+ * ISO 3166 alpha-2 country codes. ex."US"
31555
+ * Maximum number of source region codes allowed is 5000.
31556
+ */
31557
+ srcRegionCodes: string[];
31558
+ /**
31559
+ * List of secure tag values, which should be matched at the source
31560
+ * of the traffic.
31561
+ * For INGRESS rule, if all the <code>srcSecureTag</code> are INEFFECTIVE,
31562
+ * and there is no <code>srcIpRange</code>, this rule will be ignored.
31563
+ * Maximum number of source tag values allowed is 256.
31564
+ * Structure is documented below.
31565
+ *
31566
+ *
31567
+ * <a name="nestedLayer4Config"></a>The `layer4Config` block supports:
31568
+ */
31569
+ srcSecureTags: outputs.compute.RegionNetworkFirewallPolicyWithRulesPredefinedRuleMatchSrcSecureTag[];
31570
+ /**
31571
+ * Names of Network Threat Intelligence lists.
31572
+ * The IPs in these lists will be matched against traffic source.
31573
+ */
31574
+ srcThreatIntelligences: string[];
31575
+ }
31576
+ interface RegionNetworkFirewallPolicyWithRulesPredefinedRuleMatchLayer4Config {
31577
+ /**
31578
+ * (Output)
31579
+ * The IP protocol to which this rule applies. The protocol
31580
+ * type is required when creating a firewall rule.
31581
+ * This value can either be one of the following well
31582
+ * known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp),
31583
+ * or the IP protocol number.
31584
+ */
31585
+ ipProtocol: string;
31586
+ /**
31587
+ * (Output)
31588
+ * An optional list of ports to which this rule applies. This field
31589
+ * is only applicable for UDP or TCP protocol. Each entry must be
31590
+ * either an integer or a range. If not specified, this rule
31591
+ * applies to connections through any port.
31592
+ * Example inputs include: ["22"], ["80","443"], and
31593
+ * ["12345-12349"].
31594
+ */
31595
+ ports: string[];
31596
+ }
31597
+ interface RegionNetworkFirewallPolicyWithRulesPredefinedRuleMatchSrcSecureTag {
31598
+ /**
31599
+ * Name of the secure tag, created with TagManager's TagValue API.
31600
+ * @pattern tagValues/[0-9]+
31601
+ */
31602
+ name: string;
31603
+ /**
31604
+ * (Output)
31605
+ * [Output Only] State of the secure tag, either `EFFECTIVE` or
31606
+ * `INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
31607
+ * or its network is deleted.
31608
+ */
31609
+ state: string;
31610
+ }
31611
+ interface RegionNetworkFirewallPolicyWithRulesPredefinedRuleTargetSecureTag {
31612
+ /**
31613
+ * Name of the secure tag, created with TagManager's TagValue API.
31614
+ * @pattern tagValues/[0-9]+
31615
+ */
31616
+ name: string;
31617
+ /**
31618
+ * (Output)
31619
+ * [Output Only] State of the secure tag, either `EFFECTIVE` or
31620
+ * `INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
31621
+ * or its network is deleted.
31622
+ *
31623
+ * - - -
31624
+ */
31625
+ state: string;
31626
+ }
31627
+ interface RegionNetworkFirewallPolicyWithRulesRule {
31628
+ /**
31629
+ * The Action to perform when the client connection triggers the rule. Can currently be either
31630
+ * "allow", "deny", "applySecurityProfileGroup" or "gotoNext".
31631
+ */
31632
+ action: string;
31633
+ /**
31634
+ * A description of the rule.
31635
+ */
31636
+ description?: string;
31637
+ /**
31638
+ * The direction in which this rule applies. If unspecified an INGRESS rule is created.
31639
+ * Possible values are: `INGRESS`, `EGRESS`.
31640
+ */
31641
+ direction?: string;
31642
+ /**
31643
+ * Denotes whether the firewall policy rule is disabled. When set to true,
31644
+ * the firewall policy rule is not enforced and traffic behaves as if it did
31645
+ * not exist. If this is unspecified, the firewall policy rule will be
31646
+ * enabled.
31647
+ */
31648
+ disabled?: boolean;
31649
+ /**
31650
+ * Denotes whether to enable logging for a particular rule.
31651
+ * If logging is enabled, logs will be exported to the
31652
+ * configured export destination in Stackdriver.
31653
+ */
31654
+ enableLogging?: boolean;
31655
+ /**
31656
+ * A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
31657
+ * Structure is documented below.
31658
+ */
31659
+ match: outputs.compute.RegionNetworkFirewallPolicyWithRulesRuleMatch;
31660
+ /**
31661
+ * An integer indicating the priority of a rule in the list. The priority must be a value
31662
+ * between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the
31663
+ * highest priority and 2147483647 is the lowest priority.
31664
+ */
31665
+ priority: number;
31666
+ /**
31667
+ * An optional name for the rule. This field is not a unique identifier
31668
+ * and can be updated.
31669
+ */
31670
+ ruleName?: string;
31671
+ /**
31672
+ * A fully-qualified URL of a SecurityProfile resource instance.
31673
+ * Example:
31674
+ * https://networksecurity.googleapis.com/v1/projects/{project}/locations/{location}/securityProfileGroups/my-security-profile-group
31675
+ * Must be specified if action is 'apply_security_profile_group'.
31676
+ */
31677
+ securityProfileGroup?: string;
31678
+ /**
31679
+ * A list of secure tags that controls which instances the firewall rule
31680
+ * applies to. If <code>targetSecureTag</code> are specified, then the
31681
+ * firewall rule applies only to instances in the VPC network that have one
31682
+ * of those EFFECTIVE secure tags, if all the targetSecureTag are in
31683
+ * INEFFECTIVE state, then this rule will be ignored.
31684
+ * <code>targetSecureTag</code> may not be set at the same time as
31685
+ * <code>targetServiceAccounts</code>.
31686
+ * If neither <code>targetServiceAccounts</code> nor
31687
+ * <code>targetSecureTag</code> are specified, the firewall rule applies
31688
+ * to all instances on the specified network.
31689
+ * Maximum number of target label tags allowed is 256.
31690
+ * Structure is documented below.
31691
+ */
31692
+ targetSecureTags?: outputs.compute.RegionNetworkFirewallPolicyWithRulesRuleTargetSecureTag[];
31693
+ /**
31694
+ * A list of service accounts indicating the sets of
31695
+ * instances that are applied with this rule.
31696
+ */
31697
+ targetServiceAccounts?: string[];
31698
+ /**
31699
+ * Boolean flag indicating if the traffic should be TLS decrypted.
31700
+ * It can be set only if action = 'apply_security_profile_group' and cannot be set for other actions.
31701
+ */
31702
+ tlsInspect?: boolean;
31703
+ }
31704
+ interface RegionNetworkFirewallPolicyWithRulesRuleMatch {
31705
+ /**
31706
+ * Address groups which should be matched against the traffic destination.
31707
+ * Maximum number of destination address groups is 10.
31708
+ */
31709
+ destAddressGroups?: string[];
31710
+ /**
31711
+ * Fully Qualified Domain Name (FQDN) which should be matched against
31712
+ * traffic destination. Maximum number of destination fqdn allowed is 100.
31713
+ */
31714
+ destFqdns?: string[];
31715
+ /**
31716
+ * Destination IP address range in CIDR format. Required for
31717
+ * EGRESS rules.
31718
+ */
31719
+ destIpRanges?: string[];
31720
+ /**
31721
+ * Region codes whose IP addresses will be used to match for destination
31722
+ * of traffic. Should be specified as 2 letter country code defined as per
31723
+ * ISO 3166 alpha-2 country codes. ex."US"
31724
+ * Maximum number of destination region codes allowed is 5000.
31725
+ */
31726
+ destRegionCodes?: string[];
31727
+ /**
31728
+ * Names of Network Threat Intelligence lists.
31729
+ * The IPs in these lists will be matched against traffic destination.
31730
+ */
31731
+ destThreatIntelligences?: string[];
31732
+ /**
31733
+ * Pairs of IP protocols and ports that the rule should match.
31734
+ * Structure is documented below.
31735
+ */
31736
+ layer4Configs: outputs.compute.RegionNetworkFirewallPolicyWithRulesRuleMatchLayer4Config[];
31737
+ /**
31738
+ * Address groups which should be matched against the traffic source.
31739
+ * Maximum number of source address groups is 10.
31740
+ */
31741
+ srcAddressGroups?: string[];
31742
+ /**
31743
+ * Fully Qualified Domain Name (FQDN) which should be matched against
31744
+ * traffic source. Maximum number of source fqdn allowed is 100.
31745
+ */
31746
+ srcFqdns?: string[];
31747
+ /**
31748
+ * Source IP address range in CIDR format. Required for
31749
+ * INGRESS rules.
31750
+ */
31751
+ srcIpRanges?: string[];
31752
+ /**
31753
+ * Region codes whose IP addresses will be used to match for source
31754
+ * of traffic. Should be specified as 2 letter country code defined as per
31755
+ * ISO 3166 alpha-2 country codes. ex."US"
31756
+ * Maximum number of source region codes allowed is 5000.
31757
+ */
31758
+ srcRegionCodes?: string[];
31759
+ /**
31760
+ * List of secure tag values, which should be matched at the source
31761
+ * of the traffic.
31762
+ * For INGRESS rule, if all the <code>srcSecureTag</code> are INEFFECTIVE,
31763
+ * and there is no <code>srcIpRange</code>, this rule will be ignored.
31764
+ * Maximum number of source tag values allowed is 256.
31765
+ * Structure is documented below.
31766
+ *
31767
+ *
31768
+ * <a name="nestedLayer4Config"></a>The `layer4Config` block supports:
31769
+ */
31770
+ srcSecureTags?: outputs.compute.RegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTag[];
31771
+ /**
31772
+ * Names of Network Threat Intelligence lists.
31773
+ * The IPs in these lists will be matched against traffic source.
31774
+ */
31775
+ srcThreatIntelligences?: string[];
31776
+ }
31777
+ interface RegionNetworkFirewallPolicyWithRulesRuleMatchLayer4Config {
31778
+ /**
31779
+ * (Output)
31780
+ * The IP protocol to which this rule applies. The protocol
31781
+ * type is required when creating a firewall rule.
31782
+ * This value can either be one of the following well
31783
+ * known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp),
31784
+ * or the IP protocol number.
31785
+ */
31786
+ ipProtocol: string;
31787
+ /**
31788
+ * (Output)
31789
+ * An optional list of ports to which this rule applies. This field
31790
+ * is only applicable for UDP or TCP protocol. Each entry must be
31791
+ * either an integer or a range. If not specified, this rule
31792
+ * applies to connections through any port.
31793
+ * Example inputs include: ["22"], ["80","443"], and
31794
+ * ["12345-12349"].
31795
+ */
31796
+ ports?: string[];
31797
+ }
31798
+ interface RegionNetworkFirewallPolicyWithRulesRuleMatchSrcSecureTag {
31799
+ /**
31800
+ * Name of the secure tag, created with TagManager's TagValue API.
31801
+ * @pattern tagValues/[0-9]+
31802
+ */
31803
+ name?: string;
31804
+ /**
31805
+ * (Output)
31806
+ * [Output Only] State of the secure tag, either `EFFECTIVE` or
31807
+ * `INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
31808
+ * or its network is deleted.
31809
+ */
31810
+ state: string;
31811
+ }
31812
+ interface RegionNetworkFirewallPolicyWithRulesRuleTargetSecureTag {
31813
+ /**
31814
+ * Name of the secure tag, created with TagManager's TagValue API.
31815
+ * @pattern tagValues/[0-9]+
31816
+ */
31817
+ name?: string;
31818
+ /**
31819
+ * (Output)
31820
+ * [Output Only] State of the secure tag, either `EFFECTIVE` or
31821
+ * `INEFFECTIVE`. A secure tag is `INEFFECTIVE` when it is deleted
31822
+ * or its network is deleted.
31823
+ *
31824
+ * - - -
31825
+ */
31826
+ state: string;
31827
+ }
31103
31828
  interface RegionPerInstanceConfigPreservedState {
31104
31829
  /**
31105
31830
  * Stateful disks for the instance.
@@ -38716,6 +39441,10 @@ export declare namespace container {
38716
39441
  * * `CGROUP_MODE_V2`: CGROUP_MODE_V2 specifies to use cgroupv2 for the cgroup configuration on the node image.
38717
39442
  */
38718
39443
  cgroupMode: string;
39444
+ /**
39445
+ * Amounts for 2M and 1G hugepages. Structure is documented below.
39446
+ */
39447
+ hugepagesConfig?: outputs.container.ClusterNodeConfigLinuxNodeConfigHugepagesConfig;
38719
39448
  /**
38720
39449
  * The Linux kernel parameters to be applied to the nodes
38721
39450
  * and all pods running on the nodes. Specified as a map from the key, such as
@@ -38726,6 +39455,16 @@ export declare namespace container {
38726
39455
  [key: string]: string;
38727
39456
  };
38728
39457
  }
39458
+ interface ClusterNodeConfigLinuxNodeConfigHugepagesConfig {
39459
+ /**
39460
+ * Amount of 1G hugepages.
39461
+ */
39462
+ hugepageSize1g?: number;
39463
+ /**
39464
+ * Amount of 2M hugepages.
39465
+ */
39466
+ hugepageSize2m?: number;
39467
+ }
38729
39468
  interface ClusterNodeConfigLocalNvmeSsdBlockConfig {
38730
39469
  /**
38731
39470
  * Number of raw-block local NVMe SSD disks to be attached to the node. Each local SSD is 375 GB in size. If zero, it means no raw-block local NVMe SSD disks to be attached to the node.
@@ -39531,6 +40270,10 @@ export declare namespace container {
39531
40270
  * * `CGROUP_MODE_V2`: CGROUP_MODE_V2 specifies to use cgroupv2 for the cgroup configuration on the node image.
39532
40271
  */
39533
40272
  cgroupMode: string;
40273
+ /**
40274
+ * Amounts for 2M and 1G hugepages. Structure is documented below.
40275
+ */
40276
+ hugepagesConfig?: outputs.container.ClusterNodePoolNodeConfigLinuxNodeConfigHugepagesConfig;
39534
40277
  /**
39535
40278
  * The Linux kernel parameters to be applied to the nodes
39536
40279
  * and all pods running on the nodes. Specified as a map from the key, such as
@@ -39541,6 +40284,16 @@ export declare namespace container {
39541
40284
  [key: string]: string;
39542
40285
  };
39543
40286
  }
40287
+ interface ClusterNodePoolNodeConfigLinuxNodeConfigHugepagesConfig {
40288
+ /**
40289
+ * Amount of 1G hugepages.
40290
+ */
40291
+ hugepageSize1g?: number;
40292
+ /**
40293
+ * Amount of 2M hugepages.
40294
+ */
40295
+ hugepageSize2m?: number;
40296
+ }
39544
40297
  interface ClusterNodePoolNodeConfigLocalNvmeSsdBlockConfig {
39545
40298
  /**
39546
40299
  * Number of raw-block local NVMe SSD disks to be attached to the node. Each local SSD is 375 GB in size. If zero, it means no raw-block local NVMe SSD disks to be attached to the node.
@@ -39927,7 +40680,7 @@ export declare namespace container {
39927
40680
  */
39928
40681
  gcePersistentDiskCsiDriverConfigs: outputs.container.GetClusterAddonsConfigGcePersistentDiskCsiDriverConfig[];
39929
40682
  /**
39930
- * The status of the Filestore CSI driver addon, which allows the usage of filestore instance as volumes. Defaults to disabled; set enabled = true to enable.
40683
+ * The status of the Filestore CSI driver addon, which allows the usage of filestore instance as volumes. Defaults to disabled for Standard clusters; set enabled = true to enable. It is enabled by default for Autopilot clusters; set enabled = true to enable it explicitly.
39931
40684
  */
39932
40685
  gcpFilestoreCsiDriverConfigs: outputs.container.GetClusterAddonsConfigGcpFilestoreCsiDriverConfig[];
39933
40686
  /**
@@ -40808,6 +41561,10 @@ export declare namespace container {
40808
41561
  * cgroupMode specifies the cgroup mode to be used on the node.
40809
41562
  */
40810
41563
  cgroupMode: string;
41564
+ /**
41565
+ * Amounts for 2M and 1G hugepages.
41566
+ */
41567
+ hugepagesConfigs: outputs.container.GetClusterNodeConfigLinuxNodeConfigHugepagesConfig[];
40811
41568
  /**
40812
41569
  * The Linux kernel parameters to be applied to the nodes and all pods running on the nodes.
40813
41570
  */
@@ -40815,6 +41572,16 @@ export declare namespace container {
40815
41572
  [key: string]: string;
40816
41573
  };
40817
41574
  }
41575
+ interface GetClusterNodeConfigLinuxNodeConfigHugepagesConfig {
41576
+ /**
41577
+ * Amount of 1G hugepages.
41578
+ */
41579
+ hugepageSize1g: number;
41580
+ /**
41581
+ * Amount of 2M hugepages.
41582
+ */
41583
+ hugepageSize2m: number;
41584
+ }
40818
41585
  interface GetClusterNodeConfigLocalNvmeSsdBlockConfig {
40819
41586
  /**
40820
41587
  * Number of raw-block local NVMe SSD disks to be attached to the node. Each local SSD is 375 GB in size.
@@ -41490,6 +42257,10 @@ export declare namespace container {
41490
42257
  * cgroupMode specifies the cgroup mode to be used on the node.
41491
42258
  */
41492
42259
  cgroupMode: string;
42260
+ /**
42261
+ * Amounts for 2M and 1G hugepages.
42262
+ */
42263
+ hugepagesConfigs: outputs.container.GetClusterNodePoolNodeConfigLinuxNodeConfigHugepagesConfig[];
41493
42264
  /**
41494
42265
  * The Linux kernel parameters to be applied to the nodes and all pods running on the nodes.
41495
42266
  */
@@ -41497,6 +42268,16 @@ export declare namespace container {
41497
42268
  [key: string]: string;
41498
42269
  };
41499
42270
  }
42271
+ interface GetClusterNodePoolNodeConfigLinuxNodeConfigHugepagesConfig {
42272
+ /**
42273
+ * Amount of 1G hugepages.
42274
+ */
42275
+ hugepageSize1g: number;
42276
+ /**
42277
+ * Amount of 2M hugepages.
42278
+ */
42279
+ hugepageSize2m: number;
42280
+ }
41500
42281
  interface GetClusterNodePoolNodeConfigLocalNvmeSsdBlockConfig {
41501
42282
  /**
41502
42283
  * Number of raw-block local NVMe SSD disks to be attached to the node. Each local SSD is 375 GB in size.
@@ -42272,6 +43053,10 @@ export declare namespace container {
42272
43053
  * cgroupMode specifies the cgroup mode to be used on the node.
42273
43054
  */
42274
43055
  cgroupMode: string;
43056
+ /**
43057
+ * Amounts for 2M and 1G hugepages.
43058
+ */
43059
+ hugepagesConfig?: outputs.container.NodePoolNodeConfigLinuxNodeConfigHugepagesConfig;
42275
43060
  /**
42276
43061
  * The Linux kernel parameters to be applied to the nodes and all pods running on the nodes.
42277
43062
  */
@@ -42279,6 +43064,16 @@ export declare namespace container {
42279
43064
  [key: string]: string;
42280
43065
  };
42281
43066
  }
43067
+ interface NodePoolNodeConfigLinuxNodeConfigHugepagesConfig {
43068
+ /**
43069
+ * Amount of 1G hugepages.
43070
+ */
43071
+ hugepageSize1g?: number;
43072
+ /**
43073
+ * Amount of 2M hugepages.
43074
+ */
43075
+ hugepageSize2m?: number;
43076
+ }
42282
43077
  interface NodePoolNodeConfigLocalNvmeSsdBlockConfig {
42283
43078
  /**
42284
43079
  * Number of raw-block local NVMe SSD disks to be attached to the node. Each local SSD is 375 GB in size.
@@ -65294,6 +66089,37 @@ export declare namespace looker {
65294
66089
  */
65295
66090
  clientSecret: string;
65296
66091
  }
66092
+ interface InstancePscConfig {
66093
+ /**
66094
+ * List of VPCs that are allowed ingress into the Looker instance.
66095
+ */
66096
+ allowedVpcs?: string[];
66097
+ /**
66098
+ * (Output)
66099
+ * URI of the Looker service attachment.
66100
+ */
66101
+ lookerServiceAttachmentUri: string;
66102
+ /**
66103
+ * List of egress service attachment configurations.
66104
+ * Structure is documented below.
66105
+ */
66106
+ serviceAttachments?: outputs.looker.InstancePscConfigServiceAttachment[];
66107
+ }
66108
+ interface InstancePscConfigServiceAttachment {
66109
+ /**
66110
+ * (Output)
66111
+ * Status of the service attachment connection.
66112
+ */
66113
+ connectionStatus: string;
66114
+ /**
66115
+ * Fully qualified domain name that will be used in the private DNS record created for the service attachment.
66116
+ */
66117
+ localFqdn?: string;
66118
+ /**
66119
+ * URI of the service attachment to connect to.
66120
+ */
66121
+ targetServiceAttachmentUri?: string;
66122
+ }
65297
66123
  interface InstanceUserMetadata {
65298
66124
  /**
65299
66125
  * Number of additional Developer Users to allocate to the Looker Instance.
@@ -67689,6 +68515,11 @@ export declare namespace networkconnectivity {
67689
68515
  reason?: string;
67690
68516
  }
67691
68517
  interface SpokeLinkedInterconnectAttachments {
68518
+ /**
68519
+ * IP ranges allowed to be included during import from hub (does not control transit connectivity).
68520
+ * The only allowed value for now is "ALL_IPV4_RANGES".
68521
+ */
68522
+ includeImportRanges?: string[];
67692
68523
  /**
67693
68524
  * A value that controls whether site-to-site data transfer is enabled for these resources. Note that data transfer is available only in supported locations.
67694
68525
  */
@@ -67699,6 +68530,11 @@ export declare namespace networkconnectivity {
67699
68530
  uris: string[];
67700
68531
  }
67701
68532
  interface SpokeLinkedRouterApplianceInstances {
68533
+ /**
68534
+ * IP ranges allowed to be included during import from hub (does not control transit connectivity).
68535
+ * The only allowed value for now is "ALL_IPV4_RANGES".
68536
+ */
68537
+ includeImportRanges?: string[];
67702
68538
  /**
67703
68539
  * The list of router appliance instances
67704
68540
  * Structure is documented below.
@@ -67734,6 +68570,11 @@ export declare namespace networkconnectivity {
67734
68570
  uri: string;
67735
68571
  }
67736
68572
  interface SpokeLinkedVpnTunnels {
68573
+ /**
68574
+ * IP ranges allowed to be included during import from hub (does not control transit connectivity).
68575
+ * The only allowed value for now is "ALL_IPV4_RANGES".
68576
+ */
68577
+ includeImportRanges?: string[];
67737
68578
  /**
67738
68579
  * A value that controls whether site-to-site data transfer is enabled for these resources. Note that data transfer is available only in supported locations.
67739
68580
  */
@@ -72306,6 +73147,112 @@ export declare namespace privilegedaccessmanager {
72306
73147
  }
72307
73148
  interface EntitlementRequesterJustificationConfigUnstructured {
72308
73149
  }
73150
+ interface GetEntitlementAdditionalNotificationTarget {
73151
+ /**
73152
+ * Optional. Additional email addresses to be notified when a principal(requester) is granted access.
73153
+ */
73154
+ adminEmailRecipients: string[];
73155
+ /**
73156
+ * Optional. Additional email address to be notified about an eligible entitlement.
73157
+ */
73158
+ requesterEmailRecipients: string[];
73159
+ }
73160
+ interface GetEntitlementApprovalWorkflow {
73161
+ /**
73162
+ * A manual approval workflow where users who are designated as approvers need to call the ApproveGrant/DenyGrant APIs for an Grant.
73163
+ * The workflow can consist of multiple serial steps where each step defines who can act as Approver in that step and how many of those users should approve before the workflow moves to the next step.
73164
+ * This can be used to create approval workflows such as
73165
+ * * Require an approval from any user in a group G.
73166
+ * * Require an approval from any k number of users from a Group G.
73167
+ * * Require an approval from any user in a group G and then from a user U. etc.
73168
+ * A single user might be part of 'approvers' ACL for multiple steps in this workflow but they can only approve once and that approval will only be considered to satisfy the approval step at which it was granted.
73169
+ */
73170
+ manualApprovals: outputs.privilegedaccessmanager.GetEntitlementApprovalWorkflowManualApproval[];
73171
+ }
73172
+ interface GetEntitlementApprovalWorkflowManualApproval {
73173
+ /**
73174
+ * Optional. Do the approvers need to provide a justification for their actions?
73175
+ */
73176
+ requireApproverJustification: boolean;
73177
+ /**
73178
+ * List of approval steps in this workflow. These steps would be followed in the specified order sequentially. 1 step is supported for now.
73179
+ */
73180
+ steps: outputs.privilegedaccessmanager.GetEntitlementApprovalWorkflowManualApprovalStep[];
73181
+ }
73182
+ interface GetEntitlementApprovalWorkflowManualApprovalStep {
73183
+ /**
73184
+ * How many users from the above list need to approve.
73185
+ * If there are not enough distinct users in the list above then the workflow
73186
+ * will indefinitely block. Should always be greater than 0. Currently 1 is the only
73187
+ * supported value.
73188
+ */
73189
+ approvalsNeeded: number;
73190
+ /**
73191
+ * Optional. Additional email addresses to be notified when a grant is pending approval.
73192
+ */
73193
+ approverEmailRecipients: string[];
73194
+ /**
73195
+ * The potential set of approvers in this step. This list should contain at only one entry.
73196
+ */
73197
+ approvers: outputs.privilegedaccessmanager.GetEntitlementApprovalWorkflowManualApprovalStepApprover[];
73198
+ }
73199
+ interface GetEntitlementApprovalWorkflowManualApprovalStepApprover {
73200
+ /**
73201
+ * Users who are being allowed for the operation. Each entry should be a valid v1 IAM Principal Identifier. Format for these is documented at: https://cloud.google.com/iam/docs/principal-identifiers#v1
73202
+ */
73203
+ principals: string[];
73204
+ }
73205
+ interface GetEntitlementEligibleUser {
73206
+ /**
73207
+ * Users who are being allowed for the operation. Each entry should be a valid v1 IAM Principal Identifier. Format for these is documented at "https://cloud.google.com/iam/docs/principal-identifiers#v1"
73208
+ */
73209
+ principals: string[];
73210
+ }
73211
+ interface GetEntitlementPrivilegedAccess {
73212
+ /**
73213
+ * GcpIamAccess represents IAM based access control on a GCP resource. Refer to https://cloud.google.com/iam/docs to understand more about IAM.
73214
+ */
73215
+ gcpIamAccesses: outputs.privilegedaccessmanager.GetEntitlementPrivilegedAccessGcpIamAccess[];
73216
+ }
73217
+ interface GetEntitlementPrivilegedAccessGcpIamAccess {
73218
+ /**
73219
+ * Name of the resource.
73220
+ */
73221
+ resource: string;
73222
+ /**
73223
+ * The type of this resource.
73224
+ */
73225
+ resourceType: string;
73226
+ /**
73227
+ * Role bindings to be created on successful grant.
73228
+ */
73229
+ roleBindings: outputs.privilegedaccessmanager.GetEntitlementPrivilegedAccessGcpIamAccessRoleBinding[];
73230
+ }
73231
+ interface GetEntitlementPrivilegedAccessGcpIamAccessRoleBinding {
73232
+ /**
73233
+ * The expression field of the IAM condition to be associated with the role. If specified, a user with an active grant for this entitlement would be able to access the resource only if this condition evaluates to true for their request.
73234
+ * https://cloud.google.com/iam/docs/conditions-overview#attributes.
73235
+ */
73236
+ conditionExpression: string;
73237
+ /**
73238
+ * IAM role to be granted. https://cloud.google.com/iam/docs/roles-overview.
73239
+ */
73240
+ role: string;
73241
+ }
73242
+ interface GetEntitlementRequesterJustificationConfig {
73243
+ /**
73244
+ * The justification is not mandatory but can be provided in any of the supported formats.
73245
+ */
73246
+ notMandatories: outputs.privilegedaccessmanager.GetEntitlementRequesterJustificationConfigNotMandatory[];
73247
+ /**
73248
+ * The requester has to provide a justification in the form of free flowing text.
73249
+ */
73250
+ unstructureds: outputs.privilegedaccessmanager.GetEntitlementRequesterJustificationConfigUnstructured[];
73251
+ }
73252
+ interface GetEntitlementRequesterJustificationConfigNotMandatory {
73253
+ }
73254
+ interface GetEntitlementRequesterJustificationConfigUnstructured {
73255
+ }
72309
73256
  }
72310
73257
  export declare namespace projects {
72311
73258
  interface AccessApprovalSettingsEnrolledService {
@@ -73827,6 +74774,109 @@ export declare namespace secretmanager {
73827
74774
  */
73828
74775
  kmsKeyVersionName: string;
73829
74776
  }
74777
+ interface GetRegionalSecretsSecret {
74778
+ /**
74779
+ * Custom metadata about the regional secret.
74780
+ */
74781
+ annotations: {
74782
+ [key: string]: string;
74783
+ };
74784
+ /**
74785
+ * The time at which the regional secret was created.
74786
+ */
74787
+ createTime: string;
74788
+ /**
74789
+ * Customer Managed Encryption for the regional secret.
74790
+ * Structure is documented below.
74791
+ */
74792
+ customerManagedEncryptions: outputs.secretmanager.GetRegionalSecretsSecretCustomerManagedEncryption[];
74793
+ effectiveAnnotations: {
74794
+ [key: string]: string;
74795
+ };
74796
+ effectiveLabels: {
74797
+ [key: string]: string;
74798
+ };
74799
+ /**
74800
+ * Timestamp in UTC when the regional secret is scheduled to expire.
74801
+ */
74802
+ expireTime: string;
74803
+ /**
74804
+ * The labels assigned to this regional secret.
74805
+ */
74806
+ labels: {
74807
+ [key: string]: string;
74808
+ };
74809
+ /**
74810
+ * The location of the regional secret.
74811
+ */
74812
+ location: string;
74813
+ /**
74814
+ * The resource name of the Pub/Sub topic that will be published to.
74815
+ */
74816
+ name: string;
74817
+ /**
74818
+ * The ID of the project.
74819
+ */
74820
+ project: string;
74821
+ /**
74822
+ * The combination of labels configured directly on the resource
74823
+ * and default labels configured on the provider.
74824
+ */
74825
+ pulumiLabels: {
74826
+ [key: string]: string;
74827
+ };
74828
+ /**
74829
+ * The rotation time and period for a regional secret.
74830
+ * Structure is documented below.
74831
+ */
74832
+ rotations: outputs.secretmanager.GetRegionalSecretsSecretRotation[];
74833
+ /**
74834
+ * The unique name of the resource.
74835
+ */
74836
+ secretId: string;
74837
+ /**
74838
+ * A list of up to 10 Pub/Sub topics to which messages are published when control plane operations are called on the regional secret or its versions.
74839
+ * Structure is documented below.
74840
+ */
74841
+ topics: outputs.secretmanager.GetRegionalSecretsSecretTopic[];
74842
+ /**
74843
+ * The TTL for the regional secret. A duration in seconds with up to nine fractional digits,
74844
+ * terminated by 's'. Example: "3.5s". Only one of 'ttl' or 'expire_time' can be provided.
74845
+ */
74846
+ ttl: string;
74847
+ /**
74848
+ * Mapping from version alias to version name.
74849
+ */
74850
+ versionAliases: {
74851
+ [key: string]: string;
74852
+ };
74853
+ /**
74854
+ * The version destroy ttl for the regional secret version.
74855
+ */
74856
+ versionDestroyTtl: string;
74857
+ }
74858
+ interface GetRegionalSecretsSecretCustomerManagedEncryption {
74859
+ /**
74860
+ * Describes the Cloud KMS encryption key that will be used to protect destination secret.
74861
+ */
74862
+ kmsKeyName: string;
74863
+ }
74864
+ interface GetRegionalSecretsSecretRotation {
74865
+ /**
74866
+ * Timestamp in UTC at which the secret is scheduled to rotate.
74867
+ */
74868
+ nextRotationTime: string;
74869
+ /**
74870
+ * The Duration between rotation notifications.
74871
+ */
74872
+ rotationPeriod: string;
74873
+ }
74874
+ interface GetRegionalSecretsSecretTopic {
74875
+ /**
74876
+ * The resource name of the Pub/Sub topic that will be published to.
74877
+ */
74878
+ name: string;
74879
+ }
73830
74880
  interface GetSecretReplication {
73831
74881
  /**
73832
74882
  * The Secret will automatically be replicated without any restrictions.