Class v1.RegionInstanceGroupManagersClient (4.5.0)

The RegionInstanceGroupManagers API. v1

Package

@google-cloud/compute

Constructors

(constructor)(opts, gaxInstance)

constructor(opts?: ClientOptions, gaxInstance?: typeof gax | typeof gax.fallback);

Construct an instance of RegionInstanceGroupManagersClient.

Parameters
Name Description
opts ClientOptions
gaxInstance typeof gax | typeof fallback

: loaded instance of google-gax. Useful if you need to avoid loading the default gRPC version and want to use the fallback HTTP implementation. Load only fallback version and pass it to the constructor: ``` const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC const client = new RegionInstanceGroupManagersClient({fallback: true}, gax); ```

Properties

apiEndpoint

get apiEndpoint(): string;

The DNS address for this API service.

apiEndpoint

static get apiEndpoint(): string;

The DNS address for this API service - same as servicePath.

auth

auth: gax.GoogleAuth;

descriptors

descriptors: Descriptors;

innerApiCalls

innerApiCalls: {
        [name: string]: Function;
    };

port

static get port(): number;

The port for this API service.

regionInstanceGroupManagersStub

regionInstanceGroupManagersStub?: Promise<{
        [name: string]: Function;
    }>;

scopes

static get scopes(): string[];

The scopes needed to make gRPC calls for every method defined in this service.

servicePath

static get servicePath(): string;

The DNS address for this API service.

universeDomain

get universeDomain(): string;

warn

warn: (code: string, message: string, warnType?: string) => void;

Methods

abandonInstances(request, options)

abandonInstances(request?: protos.google.cloud.compute.v1.IAbandonInstancesRegionInstanceGroupManagerRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.compute.v1.IOperation, null>,
        protos.google.cloud.compute.v1.IOperation | undefined,
        {} | undefined
    ]>;

Flags the specified instances to be immediately removed from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. You can specify a maximum of 1000 instances with this method per request.

Parameters
Name Description
request IAbandonInstancesRegionInstanceGroupManagerRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ LROperation<protos.google.cloud.compute.v1.IOperation, null>, protos.google.cloud.compute.v1.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Please see the documentation for more details and examples. This method is considered to be in beta. This means while stable it is still a work-in-progress and under active development, and might get backwards-incompatible changes at any time. .promise() is not supported yet.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Name of the managed instance group.
   */
  // const instanceGroupManager = 'abc123'
  /**
   *  Project ID for this request.
   */
  // const project = 'my-project'
  /**
   *  Name of the region scoping this request.
   */
  // const region = 'us-central1'
  /**
   *  The body resource for this request
   */
  // const regionInstanceGroupManagersAbandonInstancesRequestResource = {}
  /**
   *  An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
   */
  // const requestId = 'abc123'

  // Imports the Compute library
  const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

  // Instantiates a client
  const computeClient = new RegionInstanceGroupManagersClient();

  async function callAbandonInstances() {
    // Construct request
    const request = {
      instanceGroupManager,
      project,
      region,
      regionInstanceGroupManagersAbandonInstancesRequestResource,
    };

    // Run request
    const response = await computeClient.abandonInstances(request);
    console.log(response);
  }

  callAbandonInstances();

abandonInstances(request, options, callback)

abandonInstances(request: protos.google.cloud.compute.v1.IAbandonInstancesRegionInstanceGroupManagerRequest, options: CallOptions, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IAbandonInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IAbandonInstancesRegionInstanceGroupManagerRequest
options CallOptions
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IAbandonInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

abandonInstances(request, callback)

abandonInstances(request: protos.google.cloud.compute.v1.IAbandonInstancesRegionInstanceGroupManagerRequest, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IAbandonInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IAbandonInstancesRegionInstanceGroupManagerRequest
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IAbandonInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

applyUpdatesToInstances(request, options)

applyUpdatesToInstances(request?: protos.google.cloud.compute.v1.IApplyUpdatesToInstancesRegionInstanceGroupManagerRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.compute.v1.IOperation, null>,
        protos.google.cloud.compute.v1.IOperation | undefined,
        {} | undefined
    ]>;

Apply updates to selected instances the managed instance group.

Parameters
Name Description
request IApplyUpdatesToInstancesRegionInstanceGroupManagerRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ LROperation<protos.google.cloud.compute.v1.IOperation, null>, protos.google.cloud.compute.v1.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Please see the documentation for more details and examples. This method is considered to be in beta. This means while stable it is still a work-in-progress and under active development, and might get backwards-incompatible changes at any time. .promise() is not supported yet.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  The name of the managed instance group, should conform to RFC1035.
   */
  // const instanceGroupManager = 'abc123'
  /**
   *  Project ID for this request.
   */
  // const project = 'my-project'
  /**
   *  Name of the region scoping this request, should conform to RFC1035.
   */
  // const region = 'us-central1'
  /**
   *  The body resource for this request
   */
  // const regionInstanceGroupManagersApplyUpdatesRequestResource = {}

  // Imports the Compute library
  const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

  // Instantiates a client
  const computeClient = new RegionInstanceGroupManagersClient();

  async function callApplyUpdatesToInstances() {
    // Construct request
    const request = {
      instanceGroupManager,
      project,
      region,
      regionInstanceGroupManagersApplyUpdatesRequestResource,
    };

    // Run request
    const response = await computeClient.applyUpdatesToInstances(request);
    console.log(response);
  }

  callApplyUpdatesToInstances();

applyUpdatesToInstances(request, options, callback)

applyUpdatesToInstances(request: protos.google.cloud.compute.v1.IApplyUpdatesToInstancesRegionInstanceGroupManagerRequest, options: CallOptions, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IApplyUpdatesToInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IApplyUpdatesToInstancesRegionInstanceGroupManagerRequest
options CallOptions
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IApplyUpdatesToInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

applyUpdatesToInstances(request, callback)

applyUpdatesToInstances(request: protos.google.cloud.compute.v1.IApplyUpdatesToInstancesRegionInstanceGroupManagerRequest, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IApplyUpdatesToInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IApplyUpdatesToInstancesRegionInstanceGroupManagerRequest
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IApplyUpdatesToInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

close()

close(): Promise<void>;

Terminate the gRPC channel and close the client.

The client will no longer be usable and all future behavior is undefined.

Returns
Type Description
Promise<void>

{Promise} A promise that resolves when the client is closed.

createInstances(request, options)

createInstances(request?: protos.google.cloud.compute.v1.ICreateInstancesRegionInstanceGroupManagerRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.compute.v1.IOperation, null>,
        protos.google.cloud.compute.v1.IOperation | undefined,
        {} | undefined
    ]>;

Creates instances with per-instance configurations in this regional managed instance group. Instances are created using the current instance template. The create instances operation is marked DONE if the createInstances request is successful. The underlying actions take additional time. You must separately verify the status of the creating or actions with the listmanagedinstances method.

Parameters
Name Description
request ICreateInstancesRegionInstanceGroupManagerRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ LROperation<protos.google.cloud.compute.v1.IOperation, null>, protos.google.cloud.compute.v1.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Please see the documentation for more details and examples. This method is considered to be in beta. This means while stable it is still a work-in-progress and under active development, and might get backwards-incompatible changes at any time. .promise() is not supported yet.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  The name of the managed instance group. It should conform to RFC1035.
   */
  // const instanceGroupManager = 'abc123'
  /**
   *  Project ID for this request.
   */
  // const project = 'my-project'
  /**
   *  The name of the region where the managed instance group is located. It should conform to RFC1035.
   */
  // const region = 'us-central1'
  /**
   *  The body resource for this request
   */
  // const regionInstanceGroupManagersCreateInstancesRequestResource = {}
  /**
   *  An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
   */
  // const requestId = 'abc123'

  // Imports the Compute library
  const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

  // Instantiates a client
  const computeClient = new RegionInstanceGroupManagersClient();

  async function callCreateInstances() {
    // Construct request
    const request = {
      instanceGroupManager,
      project,
      region,
      regionInstanceGroupManagersCreateInstancesRequestResource,
    };

    // Run request
    const response = await computeClient.createInstances(request);
    console.log(response);
  }

  callCreateInstances();

createInstances(request, options, callback)

createInstances(request: protos.google.cloud.compute.v1.ICreateInstancesRegionInstanceGroupManagerRequest, options: CallOptions, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.ICreateInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request ICreateInstancesRegionInstanceGroupManagerRequest
options CallOptions
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.ICreateInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

createInstances(request, callback)

createInstances(request: protos.google.cloud.compute.v1.ICreateInstancesRegionInstanceGroupManagerRequest, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.ICreateInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request ICreateInstancesRegionInstanceGroupManagerRequest
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.ICreateInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

delete(request, options)

delete(request?: protos.google.cloud.compute.v1.IDeleteRegionInstanceGroupManagerRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.compute.v1.IOperation, null>,
        protos.google.cloud.compute.v1.IOperation | undefined,
        {} | undefined
    ]>;

Deletes the specified managed instance group and all of the instances in that group.

Parameters
Name Description
request IDeleteRegionInstanceGroupManagerRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ LROperation<protos.google.cloud.compute.v1.IOperation, null>, protos.google.cloud.compute.v1.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Please see the documentation for more details and examples. This method is considered to be in beta. This means while stable it is still a work-in-progress and under active development, and might get backwards-incompatible changes at any time. .promise() is not supported yet.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Name of the managed instance group to delete.
   */
  // const instanceGroupManager = 'abc123'
  /**
   *  Project ID for this request.
   */
  // const project = 'my-project'
  /**
   *  Name of the region scoping this request.
   */
  // const region = 'us-central1'
  /**
   *  An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
   */
  // const requestId = 'abc123'

  // Imports the Compute library
  const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

  // Instantiates a client
  const computeClient = new RegionInstanceGroupManagersClient();

  async function callDelete() {
    // Construct request
    const request = {
      instanceGroupManager,
      project,
      region,
    };

    // Run request
    const response = await computeClient.delete(request);
    console.log(response);
  }

  callDelete();

delete(request, options, callback)

delete(request: protos.google.cloud.compute.v1.IDeleteRegionInstanceGroupManagerRequest, options: CallOptions, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IDeleteRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IDeleteRegionInstanceGroupManagerRequest
options CallOptions
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IDeleteRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

delete(request, callback)

delete(request: protos.google.cloud.compute.v1.IDeleteRegionInstanceGroupManagerRequest, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IDeleteRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IDeleteRegionInstanceGroupManagerRequest
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IDeleteRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

deleteInstances(request, options)

deleteInstances(request?: protos.google.cloud.compute.v1.IDeleteInstancesRegionInstanceGroupManagerRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.compute.v1.IOperation, null>,
        protos.google.cloud.compute.v1.IOperation | undefined,
        {} | undefined
    ]>;

Flags the specified instances in the managed instance group to be immediately deleted. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. The deleteInstances operation is marked DONE if the deleteInstances request is successful. The underlying actions take additional time. You must separately verify the status of the deleting action with the listmanagedinstances method. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. You can specify a maximum of 1000 instances with this method per request.

Parameters
Name Description
request IDeleteInstancesRegionInstanceGroupManagerRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ LROperation<protos.google.cloud.compute.v1.IOperation, null>, protos.google.cloud.compute.v1.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Please see the documentation for more details and examples. This method is considered to be in beta. This means while stable it is still a work-in-progress and under active development, and might get backwards-incompatible changes at any time. .promise() is not supported yet.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Name of the managed instance group.
   */
  // const instanceGroupManager = 'abc123'
  /**
   *  Project ID for this request.
   */
  // const project = 'my-project'
  /**
   *  Name of the region scoping this request.
   */
  // const region = 'us-central1'
  /**
   *  The body resource for this request
   */
  // const regionInstanceGroupManagersDeleteInstancesRequestResource = {}
  /**
   *  An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
   */
  // const requestId = 'abc123'

  // Imports the Compute library
  const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

  // Instantiates a client
  const computeClient = new RegionInstanceGroupManagersClient();

  async function callDeleteInstances() {
    // Construct request
    const request = {
      instanceGroupManager,
      project,
      region,
      regionInstanceGroupManagersDeleteInstancesRequestResource,
    };

    // Run request
    const response = await computeClient.deleteInstances(request);
    console.log(response);
  }

  callDeleteInstances();

deleteInstances(request, options, callback)

deleteInstances(request: protos.google.cloud.compute.v1.IDeleteInstancesRegionInstanceGroupManagerRequest, options: CallOptions, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IDeleteInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IDeleteInstancesRegionInstanceGroupManagerRequest
options CallOptions
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IDeleteInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

deleteInstances(request, callback)

deleteInstances(request: protos.google.cloud.compute.v1.IDeleteInstancesRegionInstanceGroupManagerRequest, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IDeleteInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IDeleteInstancesRegionInstanceGroupManagerRequest
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IDeleteInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

deletePerInstanceConfigs(request, options)

deletePerInstanceConfigs(request?: protos.google.cloud.compute.v1.IDeletePerInstanceConfigsRegionInstanceGroupManagerRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.compute.v1.IOperation, null>,
        protos.google.cloud.compute.v1.IOperation | undefined,
        {} | undefined
    ]>;

Deletes selected per-instance configurations for the managed instance group.

Parameters
Name Description
request IDeletePerInstanceConfigsRegionInstanceGroupManagerRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ LROperation<protos.google.cloud.compute.v1.IOperation, null>, protos.google.cloud.compute.v1.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Please see the documentation for more details and examples. This method is considered to be in beta. This means while stable it is still a work-in-progress and under active development, and might get backwards-incompatible changes at any time. .promise() is not supported yet.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  The name of the managed instance group. It should conform to RFC1035.
   */
  // const instanceGroupManager = 'abc123'
  /**
   *  Project ID for this request.
   */
  // const project = 'my-project'
  /**
   *  Name of the region scoping this request, should conform to RFC1035.
   */
  // const region = 'us-central1'
  /**
   *  The body resource for this request
   */
  // const regionInstanceGroupManagerDeleteInstanceConfigReqResource = {}

  // Imports the Compute library
  const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

  // Instantiates a client
  const computeClient = new RegionInstanceGroupManagersClient();

  async function callDeletePerInstanceConfigs() {
    // Construct request
    const request = {
      instanceGroupManager,
      project,
      region,
      regionInstanceGroupManagerDeleteInstanceConfigReqResource,
    };

    // Run request
    const response = await computeClient.deletePerInstanceConfigs(request);
    console.log(response);
  }

  callDeletePerInstanceConfigs();

deletePerInstanceConfigs(request, options, callback)

deletePerInstanceConfigs(request: protos.google.cloud.compute.v1.IDeletePerInstanceConfigsRegionInstanceGroupManagerRequest, options: CallOptions, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IDeletePerInstanceConfigsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IDeletePerInstanceConfigsRegionInstanceGroupManagerRequest
options CallOptions
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IDeletePerInstanceConfigsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

deletePerInstanceConfigs(request, callback)

deletePerInstanceConfigs(request: protos.google.cloud.compute.v1.IDeletePerInstanceConfigsRegionInstanceGroupManagerRequest, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IDeletePerInstanceConfigsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IDeletePerInstanceConfigsRegionInstanceGroupManagerRequest
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IDeletePerInstanceConfigsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

get(request, options)

get(request?: protos.google.cloud.compute.v1.IGetRegionInstanceGroupManagerRequest, options?: CallOptions): Promise<[
        protos.google.cloud.compute.v1.IInstanceGroupManager,
        (protos.google.cloud.compute.v1.IGetRegionInstanceGroupManagerRequest | undefined),
        {} | undefined
    ]>;

Returns all of the details about the specified managed instance group.

Parameters
Name Description
request IGetRegionInstanceGroupManagerRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ protos.google.cloud.compute.v1.IInstanceGroupManager, (protos.google.cloud.compute.v1.IGetRegionInstanceGroupManagerRequest | undefined), {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing . Please see the documentation for more details and examples.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Name of the managed instance group to return.
   */
  // const instanceGroupManager = 'abc123'
  /**
   *  Project ID for this request.
   */
  // const project = 'my-project'
  /**
   *  Name of the region scoping this request.
   */
  // const region = 'us-central1'

  // Imports the Compute library
  const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

  // Instantiates a client
  const computeClient = new RegionInstanceGroupManagersClient();

  async function callGet() {
    // Construct request
    const request = {
      instanceGroupManager,
      project,
      region,
    };

    // Run request
    const response = await computeClient.get(request);
    console.log(response);
  }

  callGet();

get(request, options, callback)

get(request: protos.google.cloud.compute.v1.IGetRegionInstanceGroupManagerRequest, options: CallOptions, callback: Callback<protos.google.cloud.compute.v1.IInstanceGroupManager, protos.google.cloud.compute.v1.IGetRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IGetRegionInstanceGroupManagerRequest
options CallOptions
callback Callback<protos.google.cloud.compute.v1.IInstanceGroupManager, protos.google.cloud.compute.v1.IGetRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

get(request, callback)

get(request: protos.google.cloud.compute.v1.IGetRegionInstanceGroupManagerRequest, callback: Callback<protos.google.cloud.compute.v1.IInstanceGroupManager, protos.google.cloud.compute.v1.IGetRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IGetRegionInstanceGroupManagerRequest
callback Callback<protos.google.cloud.compute.v1.IInstanceGroupManager, protos.google.cloud.compute.v1.IGetRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

getProjectId()

getProjectId(): Promise<string>;
Returns
Type Description
Promise<string>

getProjectId(callback)

getProjectId(callback: Callback<string, undefined, undefined>): void;
Parameter
Name Description
callback Callback<string, undefined, undefined>
Returns
Type Description
void

initialize()

initialize(): Promise<{
        [name: string]: Function;
    }>;

Initialize the client. Performs asynchronous operations (such as authentication) and prepares the client. This function will be called automatically when any class method is called for the first time, but if you need to initialize it before calling an actual method, feel free to call initialize() directly.

You can await on this method if you want to make sure the client is initialized.

Returns
Type Description
Promise<{ [name: string]: Function; }>

{Promise} A promise that resolves to an authenticated service stub.

insert(request, options)

insert(request?: protos.google.cloud.compute.v1.IInsertRegionInstanceGroupManagerRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.compute.v1.IOperation, null>,
        protos.google.cloud.compute.v1.IOperation | undefined,
        {} | undefined
    ]>;

Creates a managed instance group using the information that you specify in the request. After the group is created, instances in the group are created using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method. A regional managed instance group can contain up to 2000 instances.

Parameters
Name Description
request IInsertRegionInstanceGroupManagerRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ LROperation<protos.google.cloud.compute.v1.IOperation, null>, protos.google.cloud.compute.v1.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Please see the documentation for more details and examples. This method is considered to be in beta. This means while stable it is still a work-in-progress and under active development, and might get backwards-incompatible changes at any time. .promise() is not supported yet.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  The body resource for this request
   */
  // const instanceGroupManagerResource = {}
  /**
   *  Project ID for this request.
   */
  // const project = 'my-project'
  /**
   *  Name of the region scoping this request.
   */
  // const region = 'us-central1'
  /**
   *  An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
   */
  // const requestId = 'abc123'

  // Imports the Compute library
  const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

  // Instantiates a client
  const computeClient = new RegionInstanceGroupManagersClient();

  async function callInsert() {
    // Construct request
    const request = {
      instanceGroupManagerResource,
      project,
      region,
    };

    // Run request
    const response = await computeClient.insert(request);
    console.log(response);
  }

  callInsert();

insert(request, options, callback)

insert(request: protos.google.cloud.compute.v1.IInsertRegionInstanceGroupManagerRequest, options: CallOptions, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IInsertRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IInsertRegionInstanceGroupManagerRequest
options CallOptions
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IInsertRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

insert(request, callback)

insert(request: protos.google.cloud.compute.v1.IInsertRegionInstanceGroupManagerRequest, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IInsertRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IInsertRegionInstanceGroupManagerRequest
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IInsertRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

list(request, options)

list(request?: protos.google.cloud.compute.v1.IListRegionInstanceGroupManagersRequest, options?: CallOptions): Promise<[
        protos.google.cloud.compute.v1.IInstanceGroupManager[],
        protos.google.cloud.compute.v1.IListRegionInstanceGroupManagersRequest | null,
        protos.google.cloud.compute.v1.IRegionInstanceGroupManagerList
    ]>;

Retrieves the list of managed instance groups that are contained within the specified region.

Parameters
Name Description
request IListRegionInstanceGroupManagersRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ protos.google.cloud.compute.v1.IInstanceGroupManager[], protos.google.cloud.compute.v1.IListRegionInstanceGroupManagersRequest | null, protos.google.cloud.compute.v1.IRegionInstanceGroupManagerList ]>

{Promise} - The promise which resolves to an array. The first element of the array is Array of . The client library will perform auto-pagination by default: it will call the API as many times as needed and will merge results from all the pages into this array. Note that it can affect your quota. We recommend using listAsync() method described below for async iteration which you can stop as needed. Please see the documentation for more details and examples.

list(request, options, callback)

list(request: protos.google.cloud.compute.v1.IListRegionInstanceGroupManagersRequest, options: CallOptions, callback: PaginationCallback<protos.google.cloud.compute.v1.IListRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagerList | null | undefined, protos.google.cloud.compute.v1.IInstanceGroupManager>): void;
Parameters
Name Description
request IListRegionInstanceGroupManagersRequest
options CallOptions
callback PaginationCallback<protos.google.cloud.compute.v1.IListRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagerList | null | undefined, protos.google.cloud.compute.v1.IInstanceGroupManager>
Returns
Type Description
void

list(request, callback)

list(request: protos.google.cloud.compute.v1.IListRegionInstanceGroupManagersRequest, callback: PaginationCallback<protos.google.cloud.compute.v1.IListRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagerList | null | undefined, protos.google.cloud.compute.v1.IInstanceGroupManager>): void;
Parameters
Name Description
request IListRegionInstanceGroupManagersRequest
callback PaginationCallback<protos.google.cloud.compute.v1.IListRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagerList | null | undefined, protos.google.cloud.compute.v1.IInstanceGroupManager>
Returns
Type Description
void

listAsync(request, options)

listAsync(request?: protos.google.cloud.compute.v1.IListRegionInstanceGroupManagersRequest, options?: CallOptions): AsyncIterable<protos.google.cloud.compute.v1.IInstanceGroupManager>;

Equivalent to list, but returns an iterable object.

for-await-of syntax is used with the iterable to get response elements on-demand.

Parameters
Name Description
request IListRegionInstanceGroupManagersRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
AsyncIterable<protos.google.cloud.compute.v1.IInstanceGroupManager>

{Object} An iterable Object that allows async iteration. When you iterate the returned iterable, each element will be an object representing . The API will be called under the hood as needed, once per the page, so you can stop the iteration when you don't need more results. Please see the documentation for more details and examples.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`,><=`, `="">=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: 
 labels.owner:* 
You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example:
 (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") 
By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example:
 (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) 
If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.

/ // const filter = 'abc123' /*

  • The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) / // const maxResults = 1234 /*
  • Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported. / // const orderBy = 'abc123' /*
  • Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results. / // const pageToken = 'abc123' /*
  • Project ID for this request. / // const project = 'my-project' /*
  • Name of the region scoping this request. / // const region = 'us-central1' /*
  • Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code. */ // const returnPartialSuccess = true

    // Imports the Compute library const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

    // Instantiates a client const computeClient = new RegionInstanceGroupManagersClient();

    async function callList() { // Construct request const request = { project, region, };

    // Run request const iterable = computeClient.listAsync(request); for await (const response of iterable) { console.log(response); } }

    callList();

listErrors(request, options)

listErrors(request?: protos.google.cloud.compute.v1.IListErrorsRegionInstanceGroupManagersRequest, options?: CallOptions): Promise<[
        protos.google.cloud.compute.v1.IInstanceManagedByIgmError[],
        protos.google.cloud.compute.v1.IListErrorsRegionInstanceGroupManagersRequest | null,
        protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListErrorsResponse
    ]>;

Lists all errors thrown by actions on instances for a given regional managed instance group. The filter and orderBy query parameters are not supported.

Parameters
Name Description
request IListErrorsRegionInstanceGroupManagersRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ protos.google.cloud.compute.v1.IInstanceManagedByIgmError[], protos.google.cloud.compute.v1.IListErrorsRegionInstanceGroupManagersRequest | null, protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListErrorsResponse ]>

{Promise} - The promise which resolves to an array. The first element of the array is Array of InstanceManagedByIgmError. The client library will perform auto-pagination by default: it will call the API as many times as needed and will merge results from all the pages into this array. Note that it can affect your quota. We recommend using listErrorsAsync() method described below for async iteration which you can stop as needed. Please see the documentation for more details and examples.

listErrors(request, options, callback)

listErrors(request: protos.google.cloud.compute.v1.IListErrorsRegionInstanceGroupManagersRequest, options: CallOptions, callback: PaginationCallback<protos.google.cloud.compute.v1.IListErrorsRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListErrorsResponse | null | undefined, protos.google.cloud.compute.v1.IInstanceManagedByIgmError>): void;
Parameters
Name Description
request IListErrorsRegionInstanceGroupManagersRequest
options CallOptions
callback PaginationCallback<protos.google.cloud.compute.v1.IListErrorsRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListErrorsResponse | null | undefined, protos.google.cloud.compute.v1.IInstanceManagedByIgmError>
Returns
Type Description
void

listErrors(request, callback)

listErrors(request: protos.google.cloud.compute.v1.IListErrorsRegionInstanceGroupManagersRequest, callback: PaginationCallback<protos.google.cloud.compute.v1.IListErrorsRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListErrorsResponse | null | undefined, protos.google.cloud.compute.v1.IInstanceManagedByIgmError>): void;
Parameters
Name Description
request IListErrorsRegionInstanceGroupManagersRequest
callback PaginationCallback<protos.google.cloud.compute.v1.IListErrorsRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListErrorsResponse | null | undefined, protos.google.cloud.compute.v1.IInstanceManagedByIgmError>
Returns
Type Description
void

listErrorsAsync(request, options)

listErrorsAsync(request?: protos.google.cloud.compute.v1.IListErrorsRegionInstanceGroupManagersRequest, options?: CallOptions): AsyncIterable<protos.google.cloud.compute.v1.IInstanceManagedByIgmError>;

Equivalent to listErrors, but returns an iterable object.

for-await-of syntax is used with the iterable to get response elements on-demand.

Parameters
Name Description
request IListErrorsRegionInstanceGroupManagersRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
AsyncIterable<protos.google.cloud.compute.v1.IInstanceManagedByIgmError>

{Object} An iterable Object that allows async iteration. When you iterate the returned iterable, each element will be an object representing InstanceManagedByIgmError. The API will be called under the hood as needed, once per the page, so you can stop the iteration when you don't need more results. Please see the documentation for more details and examples.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`,><=`, `="">=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: 
 labels.owner:* 
You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example:
 (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") 
By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example:
 (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) 
If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.

/ // const filter = 'abc123' /*

  • The name of the managed instance group. It must be a string that meets the requirements in RFC1035, or an unsigned long integer: must match regexp pattern: (?:a-z?)|1-9{0,19}. / // const instanceGroupManager = 'abc123' /*
  • The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) / // const maxResults = 1234 /*
  • Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported. / // const orderBy = 'abc123' /*
  • Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results. / // const pageToken = 'abc123' /*
  • Project ID for this request. / // const project = 'my-project' /*
  • Name of the region scoping this request. This should conform to RFC1035. / // const region = 'us-central1' /*
  • Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code. */ // const returnPartialSuccess = true

    // Imports the Compute library const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

    // Instantiates a client const computeClient = new RegionInstanceGroupManagersClient();

    async function callListErrors() { // Construct request const request = { instanceGroupManager, project, region, };

    // Run request const iterable = computeClient.listErrorsAsync(request); for await (const response of iterable) { console.log(response); } }

    callListErrors();

listErrorsStream(request, options)

listErrorsStream(request?: protos.google.cloud.compute.v1.IListErrorsRegionInstanceGroupManagersRequest, options?: CallOptions): Transform;

Equivalent to method.name.toCamelCase(), but returns a NodeJS Stream object.

Parameters
Name Description
request IListErrorsRegionInstanceGroupManagersRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Transform

{Stream} An object stream which emits an object representing InstanceManagedByIgmError on 'data' event. The client library will perform auto-pagination by default: it will call the API as many times as needed. Note that it can affect your quota. We recommend using listErrorsAsync() method described below for async iteration which you can stop as needed. Please see the documentation for more details and examples.

listManagedInstances(request, options)

listManagedInstances(request?: protos.google.cloud.compute.v1.IListManagedInstancesRegionInstanceGroupManagersRequest, options?: CallOptions): Promise<[
        protos.google.cloud.compute.v1.IManagedInstance[],
        protos.google.cloud.compute.v1.IListManagedInstancesRegionInstanceGroupManagersRequest | null,
        protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListInstancesResponse
    ]>;

Lists the instances in the managed instance group and instances that are scheduled to be created. The list includes any current actions that the group has scheduled for its instances. The orderBy query parameter is not supported. The pageToken query parameter is supported only if the group's listManagedInstancesResults field is set to PAGINATED.

Parameters
Name Description
request IListManagedInstancesRegionInstanceGroupManagersRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ protos.google.cloud.compute.v1.IManagedInstance[], protos.google.cloud.compute.v1.IListManagedInstancesRegionInstanceGroupManagersRequest | null, protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListInstancesResponse ]>

{Promise} - The promise which resolves to an array. The first element of the array is Array of . The client library will perform auto-pagination by default: it will call the API as many times as needed and will merge results from all the pages into this array. Note that it can affect your quota. We recommend using listManagedInstancesAsync() method described below for async iteration which you can stop as needed. Please see the documentation for more details and examples.

listManagedInstances(request, options, callback)

listManagedInstances(request: protos.google.cloud.compute.v1.IListManagedInstancesRegionInstanceGroupManagersRequest, options: CallOptions, callback: PaginationCallback<protos.google.cloud.compute.v1.IListManagedInstancesRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListInstancesResponse | null | undefined, protos.google.cloud.compute.v1.IManagedInstance>): void;
Parameters
Name Description
request IListManagedInstancesRegionInstanceGroupManagersRequest
options CallOptions
callback PaginationCallback<protos.google.cloud.compute.v1.IListManagedInstancesRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListInstancesResponse | null | undefined, protos.google.cloud.compute.v1.IManagedInstance>
Returns
Type Description
void

listManagedInstances(request, callback)

listManagedInstances(request: protos.google.cloud.compute.v1.IListManagedInstancesRegionInstanceGroupManagersRequest, callback: PaginationCallback<protos.google.cloud.compute.v1.IListManagedInstancesRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListInstancesResponse | null | undefined, protos.google.cloud.compute.v1.IManagedInstance>): void;
Parameters
Name Description
request IListManagedInstancesRegionInstanceGroupManagersRequest
callback PaginationCallback<protos.google.cloud.compute.v1.IListManagedInstancesRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListInstancesResponse | null | undefined, protos.google.cloud.compute.v1.IManagedInstance>
Returns
Type Description
void

listManagedInstancesAsync(request, options)

listManagedInstancesAsync(request?: protos.google.cloud.compute.v1.IListManagedInstancesRegionInstanceGroupManagersRequest, options?: CallOptions): AsyncIterable<protos.google.cloud.compute.v1.IManagedInstance>;

Equivalent to listManagedInstances, but returns an iterable object.

for-await-of syntax is used with the iterable to get response elements on-demand.

Parameters
Name Description
request IListManagedInstancesRegionInstanceGroupManagersRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
AsyncIterable<protos.google.cloud.compute.v1.IManagedInstance>

{Object} An iterable Object that allows async iteration. When you iterate the returned iterable, each element will be an object representing . The API will be called under the hood as needed, once per the page, so you can stop the iteration when you don't need more results. Please see the documentation for more details and examples.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`,><=`, `="">=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: 
 labels.owner:* 
You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example:
 (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") 
By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example:
 (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) 
If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.

/ // const filter = 'abc123' /*

  • The name of the managed instance group. / // const instanceGroupManager = 'abc123' /*
  • The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) / // const maxResults = 1234 /*
  • Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported. / // const orderBy = 'abc123' /*
  • Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results. / // const pageToken = 'abc123' /*
  • Project ID for this request. / // const project = 'my-project' /*
  • Name of the region scoping this request. / // const region = 'us-central1' /*
  • Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code. */ // const returnPartialSuccess = true

    // Imports the Compute library const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

    // Instantiates a client const computeClient = new RegionInstanceGroupManagersClient();

    async function callListManagedInstances() { // Construct request const request = { instanceGroupManager, project, region, };

    // Run request const iterable = computeClient.listManagedInstancesAsync(request); for await (const response of iterable) { console.log(response); } }

    callListManagedInstances();

listManagedInstancesStream(request, options)

listManagedInstancesStream(request?: protos.google.cloud.compute.v1.IListManagedInstancesRegionInstanceGroupManagersRequest, options?: CallOptions): Transform;

Equivalent to method.name.toCamelCase(), but returns a NodeJS Stream object.

Parameters
Name Description
request IListManagedInstancesRegionInstanceGroupManagersRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Transform

{Stream} An object stream which emits an object representing on 'data' event. The client library will perform auto-pagination by default: it will call the API as many times as needed. Note that it can affect your quota. We recommend using listManagedInstancesAsync() method described below for async iteration which you can stop as needed. Please see the documentation for more details and examples.

listPerInstanceConfigs(request, options)

listPerInstanceConfigs(request?: protos.google.cloud.compute.v1.IListPerInstanceConfigsRegionInstanceGroupManagersRequest, options?: CallOptions): Promise<[
        protos.google.cloud.compute.v1.IPerInstanceConfig[],
        protos.google.cloud.compute.v1.IListPerInstanceConfigsRegionInstanceGroupManagersRequest | null,
        protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListInstanceConfigsResp
    ]>;

Lists all of the per-instance configurations defined for the managed instance group. The orderBy query parameter is not supported.

Parameters
Name Description
request IListPerInstanceConfigsRegionInstanceGroupManagersRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ protos.google.cloud.compute.v1.IPerInstanceConfig[], protos.google.cloud.compute.v1.IListPerInstanceConfigsRegionInstanceGroupManagersRequest | null, protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListInstanceConfigsResp ]>

{Promise} - The promise which resolves to an array. The first element of the array is Array of . The client library will perform auto-pagination by default: it will call the API as many times as needed and will merge results from all the pages into this array. Note that it can affect your quota. We recommend using listPerInstanceConfigsAsync() method described below for async iteration which you can stop as needed. Please see the documentation for more details and examples.

listPerInstanceConfigs(request, options, callback)

listPerInstanceConfigs(request: protos.google.cloud.compute.v1.IListPerInstanceConfigsRegionInstanceGroupManagersRequest, options: CallOptions, callback: PaginationCallback<protos.google.cloud.compute.v1.IListPerInstanceConfigsRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListInstanceConfigsResp | null | undefined, protos.google.cloud.compute.v1.IPerInstanceConfig>): void;
Parameters
Name Description
request IListPerInstanceConfigsRegionInstanceGroupManagersRequest
options CallOptions
callback PaginationCallback<protos.google.cloud.compute.v1.IListPerInstanceConfigsRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListInstanceConfigsResp | null | undefined, protos.google.cloud.compute.v1.IPerInstanceConfig>
Returns
Type Description
void

listPerInstanceConfigs(request, callback)

listPerInstanceConfigs(request: protos.google.cloud.compute.v1.IListPerInstanceConfigsRegionInstanceGroupManagersRequest, callback: PaginationCallback<protos.google.cloud.compute.v1.IListPerInstanceConfigsRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListInstanceConfigsResp | null | undefined, protos.google.cloud.compute.v1.IPerInstanceConfig>): void;
Parameters
Name Description
request IListPerInstanceConfigsRegionInstanceGroupManagersRequest
callback PaginationCallback<protos.google.cloud.compute.v1.IListPerInstanceConfigsRegionInstanceGroupManagersRequest, protos.google.cloud.compute.v1.IRegionInstanceGroupManagersListInstanceConfigsResp | null | undefined, protos.google.cloud.compute.v1.IPerInstanceConfig>
Returns
Type Description
void

listPerInstanceConfigsAsync(request, options)

listPerInstanceConfigsAsync(request?: protos.google.cloud.compute.v1.IListPerInstanceConfigsRegionInstanceGroupManagersRequest, options?: CallOptions): AsyncIterable<protos.google.cloud.compute.v1.IPerInstanceConfig>;

Equivalent to listPerInstanceConfigs, but returns an iterable object.

for-await-of syntax is used with the iterable to get response elements on-demand.

Parameters
Name Description
request IListPerInstanceConfigsRegionInstanceGroupManagersRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
AsyncIterable<protos.google.cloud.compute.v1.IPerInstanceConfig>

{Object} An iterable Object that allows async iteration. When you iterate the returned iterable, each element will be an object representing . The API will be called under the hood as needed, once per the page, so you can stop the iteration when you don't need more results. Please see the documentation for more details and examples.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  A filter expression that filters resources listed in the response. Most Compute resources support two types of filter expressions: expressions that support regular expressions and expressions that follow API improvement proposal AIP-160. These two types of filter expressions cannot be mixed in one request. If you want to use AIP-160, your expression must specify the field name, an operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The operator must be either `=`, `!=`, `>`, `<`,><=`, `="">=` or `:`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. The `:*` comparison can be used to test whether a key has been defined. For example, to find all objects with `owner` label use: 
 labels.owner:* 
You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example:
 (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") 
By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example:
 (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) 
If you want to use a regular expression, use the `eq` (equal) or `ne` (not equal) operator against a single un-parenthesized expression with or without quotes or against multiple parenthesized expressions. Examples: `fieldname eq unquoted literal` `fieldname eq 'single quoted literal'` `fieldname eq "double quoted literal"` `(fieldname1 eq literal) (fieldname2 ne "literal")` The literal value is interpreted as a regular expression using Google RE2 library syntax. The literal value must match the entire field. For example, to filter for instances that do not end with name "instance", you would use `name ne .*instance`. You cannot combine constraints on multiple fields using regular expressions.

/ // const filter = 'abc123' /*

  • The name of the managed instance group. It should conform to RFC1035. / // const instanceGroupManager = 'abc123' /*
  • The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) / // const maxResults = 1234 /*
  • Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by name or creationTimestamp desc is supported. / // const orderBy = 'abc123' /*
  • Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results. / // const pageToken = 'abc123' /*
  • Project ID for this request. / // const project = 'my-project' /*
  • Name of the region scoping this request, should conform to RFC1035. / // const region = 'us-central1' /*
  • Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. For example, when partial success behavior is enabled, aggregatedList for a single zone scope either returns all resources in the zone or no resources, with an error code. */ // const returnPartialSuccess = true

    // Imports the Compute library const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

    // Instantiates a client const computeClient = new RegionInstanceGroupManagersClient();

    async function callListPerInstanceConfigs() { // Construct request const request = { instanceGroupManager, project, region, };

    // Run request const iterable = computeClient.listPerInstanceConfigsAsync(request); for await (const response of iterable) { console.log(response); } }

    callListPerInstanceConfigs();

listPerInstanceConfigsStream(request, options)

listPerInstanceConfigsStream(request?: protos.google.cloud.compute.v1.IListPerInstanceConfigsRegionInstanceGroupManagersRequest, options?: CallOptions): Transform;

Equivalent to method.name.toCamelCase(), but returns a NodeJS Stream object.

Parameters
Name Description
request IListPerInstanceConfigsRegionInstanceGroupManagersRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Transform

{Stream} An object stream which emits an object representing on 'data' event. The client library will perform auto-pagination by default: it will call the API as many times as needed. Note that it can affect your quota. We recommend using listPerInstanceConfigsAsync() method described below for async iteration which you can stop as needed. Please see the documentation for more details and examples.

listStream(request, options)

listStream(request?: protos.google.cloud.compute.v1.IListRegionInstanceGroupManagersRequest, options?: CallOptions): Transform;

Equivalent to method.name.toCamelCase(), but returns a NodeJS Stream object.

Parameters
Name Description
request IListRegionInstanceGroupManagersRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Transform

{Stream} An object stream which emits an object representing on 'data' event. The client library will perform auto-pagination by default: it will call the API as many times as needed. Note that it can affect your quota. We recommend using listAsync() method described below for async iteration which you can stop as needed. Please see the documentation for more details and examples.

patch(request, options)

patch(request?: protos.google.cloud.compute.v1.IPatchRegionInstanceGroupManagerRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.compute.v1.IOperation, null>,
        protos.google.cloud.compute.v1.IOperation | undefined,
        {} | undefined
    ]>;

Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is patched even if the instances in the group are still in the process of being patched. You must separately verify the status of the individual instances with the listmanagedinstances method. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. If you update your group to specify a new template or instance configuration, it's possible that your intended specification for each VM in the group is different from the current state of that VM. To learn how to apply an updated configuration to the VMs in a MIG, see Updating instances in a MIG.

Parameters
Name Description
request IPatchRegionInstanceGroupManagerRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ LROperation<protos.google.cloud.compute.v1.IOperation, null>, protos.google.cloud.compute.v1.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Please see the documentation for more details and examples. This method is considered to be in beta. This means while stable it is still a work-in-progress and under active development, and might get backwards-incompatible changes at any time. .promise() is not supported yet.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  The name of the instance group manager.
   */
  // const instanceGroupManager = 'abc123'
  /**
   *  The body resource for this request
   */
  // const instanceGroupManagerResource = {}
  /**
   *  Project ID for this request.
   */
  // const project = 'my-project'
  /**
   *  Name of the region scoping this request.
   */
  // const region = 'us-central1'
  /**
   *  An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
   */
  // const requestId = 'abc123'

  // Imports the Compute library
  const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

  // Instantiates a client
  const computeClient = new RegionInstanceGroupManagersClient();

  async function callPatch() {
    // Construct request
    const request = {
      instanceGroupManager,
      instanceGroupManagerResource,
      project,
      region,
    };

    // Run request
    const response = await computeClient.patch(request);
    console.log(response);
  }

  callPatch();

patch(request, options, callback)

patch(request: protos.google.cloud.compute.v1.IPatchRegionInstanceGroupManagerRequest, options: CallOptions, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IPatchRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IPatchRegionInstanceGroupManagerRequest
options CallOptions
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IPatchRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

patch(request, callback)

patch(request: protos.google.cloud.compute.v1.IPatchRegionInstanceGroupManagerRequest, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IPatchRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IPatchRegionInstanceGroupManagerRequest
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IPatchRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

patchPerInstanceConfigs(request, options)

patchPerInstanceConfigs(request?: protos.google.cloud.compute.v1.IPatchPerInstanceConfigsRegionInstanceGroupManagerRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.compute.v1.IOperation, null>,
        protos.google.cloud.compute.v1.IOperation | undefined,
        {} | undefined
    ]>;

Inserts or patches per-instance configurations for the managed instance group. perInstanceConfig.name serves as a key used to distinguish whether to perform insert or patch.

Parameters
Name Description
request IPatchPerInstanceConfigsRegionInstanceGroupManagerRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ LROperation<protos.google.cloud.compute.v1.IOperation, null>, protos.google.cloud.compute.v1.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Please see the documentation for more details and examples. This method is considered to be in beta. This means while stable it is still a work-in-progress and under active development, and might get backwards-incompatible changes at any time. .promise() is not supported yet.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  The name of the managed instance group. It should conform to RFC1035.
   */
  // const instanceGroupManager = 'abc123'
  /**
   *  Project ID for this request.
   */
  // const project = 'my-project'
  /**
   *  Name of the region scoping this request, should conform to RFC1035.
   */
  // const region = 'us-central1'
  /**
   *  The body resource for this request
   */
  // const regionInstanceGroupManagerPatchInstanceConfigReqResource = {}
  /**
   *  An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
   */
  // const requestId = 'abc123'

  // Imports the Compute library
  const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

  // Instantiates a client
  const computeClient = new RegionInstanceGroupManagersClient();

  async function callPatchPerInstanceConfigs() {
    // Construct request
    const request = {
      instanceGroupManager,
      project,
      region,
      regionInstanceGroupManagerPatchInstanceConfigReqResource,
    };

    // Run request
    const response = await computeClient.patchPerInstanceConfigs(request);
    console.log(response);
  }

  callPatchPerInstanceConfigs();

patchPerInstanceConfigs(request, options, callback)

patchPerInstanceConfigs(request: protos.google.cloud.compute.v1.IPatchPerInstanceConfigsRegionInstanceGroupManagerRequest, options: CallOptions, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IPatchPerInstanceConfigsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IPatchPerInstanceConfigsRegionInstanceGroupManagerRequest
options CallOptions
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IPatchPerInstanceConfigsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

patchPerInstanceConfigs(request, callback)

patchPerInstanceConfigs(request: protos.google.cloud.compute.v1.IPatchPerInstanceConfigsRegionInstanceGroupManagerRequest, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IPatchPerInstanceConfigsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IPatchPerInstanceConfigsRegionInstanceGroupManagerRequest
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IPatchPerInstanceConfigsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

recreateInstances(request, options)

recreateInstances(request?: protos.google.cloud.compute.v1.IRecreateInstancesRegionInstanceGroupManagerRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.compute.v1.IOperation, null>,
        protos.google.cloud.compute.v1.IOperation | undefined,
        {} | undefined
    ]>;

Flags the specified VM instances in the managed instance group to be immediately recreated. Each instance is recreated using the group's current configuration. This operation is marked as DONE when the flag is set even if the instances have not yet been recreated. You must separately verify the status of each instance by checking its currentAction field; for more information, see Checking the status of managed instances. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. You can specify a maximum of 1000 instances with this method per request.

Parameters
Name Description
request IRecreateInstancesRegionInstanceGroupManagerRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ LROperation<protos.google.cloud.compute.v1.IOperation, null>, protos.google.cloud.compute.v1.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Please see the documentation for more details and examples. This method is considered to be in beta. This means while stable it is still a work-in-progress and under active development, and might get backwards-incompatible changes at any time. .promise() is not supported yet.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Name of the managed instance group.
   */
  // const instanceGroupManager = 'abc123'
  /**
   *  Project ID for this request.
   */
  // const project = 'my-project'
  /**
   *  Name of the region scoping this request.
   */
  // const region = 'us-central1'
  /**
   *  The body resource for this request
   */
  // const regionInstanceGroupManagersRecreateRequestResource = {}
  /**
   *  An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
   */
  // const requestId = 'abc123'

  // Imports the Compute library
  const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

  // Instantiates a client
  const computeClient = new RegionInstanceGroupManagersClient();

  async function callRecreateInstances() {
    // Construct request
    const request = {
      instanceGroupManager,
      project,
      region,
      regionInstanceGroupManagersRecreateRequestResource,
    };

    // Run request
    const response = await computeClient.recreateInstances(request);
    console.log(response);
  }

  callRecreateInstances();

recreateInstances(request, options, callback)

recreateInstances(request: protos.google.cloud.compute.v1.IRecreateInstancesRegionInstanceGroupManagerRequest, options: CallOptions, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IRecreateInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IRecreateInstancesRegionInstanceGroupManagerRequest
options CallOptions
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IRecreateInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

recreateInstances(request, callback)

recreateInstances(request: protos.google.cloud.compute.v1.IRecreateInstancesRegionInstanceGroupManagerRequest, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IRecreateInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IRecreateInstancesRegionInstanceGroupManagerRequest
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IRecreateInstancesRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

resize(request, options)

resize(request?: protos.google.cloud.compute.v1.IResizeRegionInstanceGroupManagerRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.compute.v1.IOperation, null>,
        protos.google.cloud.compute.v1.IOperation | undefined,
        {} | undefined
    ]>;

Changes the intended size of the managed instance group. If you increase the size, the group creates new instances using the current instance template. If you decrease the size, the group deletes one or more instances. The resize operation is marked DONE if the resize request is successful. The underlying actions take additional time. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.

Parameters
Name Description
request IResizeRegionInstanceGroupManagerRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ LROperation<protos.google.cloud.compute.v1.IOperation, null>, protos.google.cloud.compute.v1.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Please see the documentation for more details and examples. This method is considered to be in beta. This means while stable it is still a work-in-progress and under active development, and might get backwards-incompatible changes at any time. .promise() is not supported yet.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Name of the managed instance group.
   */
  // const instanceGroupManager = 'abc123'
  /**
   *  Project ID for this request.
   */
  // const project = 'my-project'
  /**
   *  Name of the region scoping this request.
   */
  // const region = 'us-central1'
  /**
   *  An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
   */
  // const requestId = 'abc123'
  /**
   *  Number of instances that should exist in this instance group manager.
   */
  // const size = 1234

  // Imports the Compute library
  const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

  // Instantiates a client
  const computeClient = new RegionInstanceGroupManagersClient();

  async function callResize() {
    // Construct request
    const request = {
      instanceGroupManager,
      project,
      region,
      size,
    };

    // Run request
    const response = await computeClient.resize(request);
    console.log(response);
  }

  callResize();

resize(request, options, callback)

resize(request: protos.google.cloud.compute.v1.IResizeRegionInstanceGroupManagerRequest, options: CallOptions, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IResizeRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IResizeRegionInstanceGroupManagerRequest
options CallOptions
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IResizeRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

resize(request, callback)

resize(request: protos.google.cloud.compute.v1.IResizeRegionInstanceGroupManagerRequest, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IResizeRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IResizeRegionInstanceGroupManagerRequest
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IResizeRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

setInstanceTemplate(request, options)

setInstanceTemplate(request?: protos.google.cloud.compute.v1.ISetInstanceTemplateRegionInstanceGroupManagerRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.compute.v1.IOperation, null>,
        protos.google.cloud.compute.v1.IOperation | undefined,
        {} | undefined
    ]>;

Sets the instance template to use when creating new instances or recreating instances in this group. Existing instances are not affected.

Parameters
Name Description
request ISetInstanceTemplateRegionInstanceGroupManagerRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ LROperation<protos.google.cloud.compute.v1.IOperation, null>, protos.google.cloud.compute.v1.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Please see the documentation for more details and examples. This method is considered to be in beta. This means while stable it is still a work-in-progress and under active development, and might get backwards-incompatible changes at any time. .promise() is not supported yet.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  The name of the managed instance group.
   */
  // const instanceGroupManager = 'abc123'
  /**
   *  Project ID for this request.
   */
  // const project = 'my-project'
  /**
   *  Name of the region scoping this request.
   */
  // const region = 'us-central1'
  /**
   *  The body resource for this request
   */
  // const regionInstanceGroupManagersSetTemplateRequestResource = {}
  /**
   *  An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
   */
  // const requestId = 'abc123'

  // Imports the Compute library
  const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

  // Instantiates a client
  const computeClient = new RegionInstanceGroupManagersClient();

  async function callSetInstanceTemplate() {
    // Construct request
    const request = {
      instanceGroupManager,
      project,
      region,
      regionInstanceGroupManagersSetTemplateRequestResource,
    };

    // Run request
    const response = await computeClient.setInstanceTemplate(request);
    console.log(response);
  }

  callSetInstanceTemplate();

setInstanceTemplate(request, options, callback)

setInstanceTemplate(request: protos.google.cloud.compute.v1.ISetInstanceTemplateRegionInstanceGroupManagerRequest, options: CallOptions, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.ISetInstanceTemplateRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request ISetInstanceTemplateRegionInstanceGroupManagerRequest
options CallOptions
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.ISetInstanceTemplateRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

setInstanceTemplate(request, callback)

setInstanceTemplate(request: protos.google.cloud.compute.v1.ISetInstanceTemplateRegionInstanceGroupManagerRequest, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.ISetInstanceTemplateRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request ISetInstanceTemplateRegionInstanceGroupManagerRequest
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.ISetInstanceTemplateRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

setTargetPools(request, options)

setTargetPools(request?: protos.google.cloud.compute.v1.ISetTargetPoolsRegionInstanceGroupManagerRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.compute.v1.IOperation, null>,
        protos.google.cloud.compute.v1.IOperation | undefined,
        {} | undefined
    ]>;

Modifies the target pools to which all new instances in this group are assigned. Existing instances in the group are not affected.

Parameters
Name Description
request ISetTargetPoolsRegionInstanceGroupManagerRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ LROperation<protos.google.cloud.compute.v1.IOperation, null>, protos.google.cloud.compute.v1.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Please see the documentation for more details and examples. This method is considered to be in beta. This means while stable it is still a work-in-progress and under active development, and might get backwards-incompatible changes at any time. .promise() is not supported yet.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Name of the managed instance group.
   */
  // const instanceGroupManager = 'abc123'
  /**
   *  Project ID for this request.
   */
  // const project = 'my-project'
  /**
   *  Name of the region scoping this request.
   */
  // const region = 'us-central1'
  /**
   *  The body resource for this request
   */
  // const regionInstanceGroupManagersSetTargetPoolsRequestResource = {}
  /**
   *  An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
   */
  // const requestId = 'abc123'

  // Imports the Compute library
  const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

  // Instantiates a client
  const computeClient = new RegionInstanceGroupManagersClient();

  async function callSetTargetPools() {
    // Construct request
    const request = {
      instanceGroupManager,
      project,
      region,
      regionInstanceGroupManagersSetTargetPoolsRequestResource,
    };

    // Run request
    const response = await computeClient.setTargetPools(request);
    console.log(response);
  }

  callSetTargetPools();

setTargetPools(request, options, callback)

setTargetPools(request: protos.google.cloud.compute.v1.ISetTargetPoolsRegionInstanceGroupManagerRequest, options: CallOptions, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.ISetTargetPoolsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request ISetTargetPoolsRegionInstanceGroupManagerRequest
options CallOptions
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.ISetTargetPoolsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

setTargetPools(request, callback)

setTargetPools(request: protos.google.cloud.compute.v1.ISetTargetPoolsRegionInstanceGroupManagerRequest, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.ISetTargetPoolsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request ISetTargetPoolsRegionInstanceGroupManagerRequest
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.ISetTargetPoolsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

updatePerInstanceConfigs(request, options)

updatePerInstanceConfigs(request?: protos.google.cloud.compute.v1.IUpdatePerInstanceConfigsRegionInstanceGroupManagerRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.compute.v1.IOperation, null>,
        protos.google.cloud.compute.v1.IOperation | undefined,
        {} | undefined
    ]>;

Inserts or updates per-instance configurations for the managed instance group. perInstanceConfig.name serves as a key used to distinguish whether to perform insert or patch.

Parameters
Name Description
request IUpdatePerInstanceConfigsRegionInstanceGroupManagerRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
Type Description
Promise<[ LROperation<protos.google.cloud.compute.v1.IOperation, null>, protos.google.cloud.compute.v1.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Please see the documentation for more details and examples. This method is considered to be in beta. This means while stable it is still a work-in-progress and under active development, and might get backwards-incompatible changes at any time. .promise() is not supported yet.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  The name of the managed instance group. It should conform to RFC1035.
   */
  // const instanceGroupManager = 'abc123'
  /**
   *  Project ID for this request.
   */
  // const project = 'my-project'
  /**
   *  Name of the region scoping this request, should conform to RFC1035.
   */
  // const region = 'us-central1'
  /**
   *  The body resource for this request
   */
  // const regionInstanceGroupManagerUpdateInstanceConfigReqResource = {}
  /**
   *  An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
   */
  // const requestId = 'abc123'

  // Imports the Compute library
  const {RegionInstanceGroupManagersClient} = require('@google-cloud/compute').v1;

  // Instantiates a client
  const computeClient = new RegionInstanceGroupManagersClient();

  async function callUpdatePerInstanceConfigs() {
    // Construct request
    const request = {
      instanceGroupManager,
      project,
      region,
      regionInstanceGroupManagerUpdateInstanceConfigReqResource,
    };

    // Run request
    const response = await computeClient.updatePerInstanceConfigs(request);
    console.log(response);
  }

  callUpdatePerInstanceConfigs();

updatePerInstanceConfigs(request, options, callback)

updatePerInstanceConfigs(request: protos.google.cloud.compute.v1.IUpdatePerInstanceConfigsRegionInstanceGroupManagerRequest, options: CallOptions, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IUpdatePerInstanceConfigsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IUpdatePerInstanceConfigsRegionInstanceGroupManagerRequest
options CallOptions
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IUpdatePerInstanceConfigsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void

updatePerInstanceConfigs(request, callback)

updatePerInstanceConfigs(request: protos.google.cloud.compute.v1.IUpdatePerInstanceConfigsRegionInstanceGroupManagerRequest, callback: Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IUpdatePerInstanceConfigsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>): void;
Parameters
Name Description
request IUpdatePerInstanceConfigsRegionInstanceGroupManagerRequest
callback Callback<protos.google.cloud.compute.v1.IOperation, protos.google.cloud.compute.v1.IUpdatePerInstanceConfigsRegionInstanceGroupManagerRequest | null | undefined, {} | null | undefined>
Returns
Type Description
void