Compute V1 Client - Class LocationPolicy (2.7.0)

Reference documentation and code samples for the Compute V1 Client class LocationPolicy.

Configuration for location policy among multiple possible locations (e.g. preferences for zone selection among zones in a single region).

Generated from protobuf message google.cloud.compute.v1.LocationPolicy

Namespace

Google \ Cloud \ Compute \ V1

Methods

__construct

Constructor.

Parameters
Name Description
data array

Optional. Data for populating the Message object.

↳ locations array|Google\Protobuf\Internal\MapField

Location configurations mapped by location name. Currently only zone names are supported and must be represented as valid internal URLs, such as zones/us-central1-a. The bulkInsert operation doesn't create instances in an AI zone, even if an AI zone is available in the specified region. For example, if you set a DENY preference for us-central1-a, Compute Engine will consider us-central1-b and us-central1-c for instance creation, but not us-central1-ai1a. Also, you can't use the locations[] configuration to allow instance creation in an AI zone. To include an AI zone in bulkInsert operations, use the locationPolicy.zones[] field.

↳ target_shape string

Strategy for distributing VMs across zones in a region. Check the TargetShape enum for the list of possible values.

↳ zones array<LocationPolicyZoneConfiguration>

The bulkInsert operation applies any preferences set in the locations field to the specific zones listed in the zones field if the same zones are specified in both fields.

getLocations

Location configurations mapped by location name.

Currently only zone names are supported and must be represented as valid internal URLs, such as zones/us-central1-a. The bulkInsert operation doesn't create instances in an AI zone, even if an AI zone is available in the specified region. For example, if you set a DENY preference for us-central1-a, Compute Engine will consider us-central1-b and us-central1-c for instance creation, but not us-central1-ai1a. Also, you can't use the locations[] configuration to allow instance creation in an AI zone. To include an AI zone in bulkInsert operations, use the locationPolicy.zones[] field.

Returns
Type Description
Google\Protobuf\Internal\MapField

setLocations

Location configurations mapped by location name.

Currently only zone names are supported and must be represented as valid internal URLs, such as zones/us-central1-a. The bulkInsert operation doesn't create instances in an AI zone, even if an AI zone is available in the specified region. For example, if you set a DENY preference for us-central1-a, Compute Engine will consider us-central1-b and us-central1-c for instance creation, but not us-central1-ai1a. Also, you can't use the locations[] configuration to allow instance creation in an AI zone. To include an AI zone in bulkInsert operations, use the locationPolicy.zones[] field.

Parameter
Name Description
var array|Google\Protobuf\Internal\MapField
Returns
Type Description
$this

getTargetShape

Strategy for distributing VMs across zones in a region.

Check the TargetShape enum for the list of possible values.

Returns
Type Description
string

hasTargetShape

clearTargetShape

setTargetShape

Strategy for distributing VMs across zones in a region.

Check the TargetShape enum for the list of possible values.

Parameter
Name Description
var string
Returns
Type Description
$this

getZones

The bulkInsert operation applies any preferences set in the locations field to the specific zones listed in the zones field if the same zones are specified in both fields.

Returns
Type Description
Google\Protobuf\Internal\RepeatedField

setZones

The bulkInsert operation applies any preferences set in the locations field to the specific zones listed in the zones field if the same zones are specified in both fields.

Parameter
Name Description
var array<LocationPolicyZoneConfiguration>
Returns
Type Description
$this