Disk

Disk

A Disk object allows you to interact with a Google Compute Engine disk.

Constructor

new Disk(zone, name)

Parameters:
Name Type Description
zone Zone
name string
See:
Example
const Compute = require('@google-cloud/compute');
const compute = new Compute();
const zone = compute.zone('us-central1-a');
const disk = zone.disk('disk1');

Members

formattedName :string

id :string

name :string

zone :Zone

The parent Zone instance of this Disk instance.

Methods

create(config)

Create a persistent disk.

Parameters:
Name Type Description
config object

See {Zone#createDisk}.

Example
const Compute = require('@google-cloud/compute');
const compute = new Compute();
const zone = compute.zone('us-central1-a');
const disk = zone.disk('disk1');

const config = {
  // ...
};

disk.create(config, function(err, disk, operation, apiResponse) {
  // `disk` is a Disk object.

  // `operation` is an Operation object that can be used to check the
  // status of the request.
});

//-
// If the callback is omitted, we'll return a Promise.
//-
disk.create(config).then(function(data) {
  const disk = data[0];
  const operation = data[1];
  const apiResponse = data[2];
});

createSnapshot(name, optionsopt, callback)

Create a snapshot of a disk.

Parameters:
Name Type Attributes Description
name string

Name of the snapshot.

options object <optional>

See the Disks: createSnapshot request body.

callback function

The callback function.

Properties
Name Type Attributes Description
err error <nullable>

An error returned while making this request.

snapshot Snapshot

The created Snapshot object.

operation Operation

An operation object that can be used to check the status of the request.

apiResponse object

The full API response.

See:
Example
const Compute = require('@google-cloud/compute');
const compute = new Compute();
const zone = compute.zone('us-central1-a');
const disk = zone.disk('disk1');

function callback(err, snapshot, operation, apiResponse) {
  // `snapshot` is a Snapshot object.

  // `operation` is an Operation object that can be used to check the status
  // of the request.
}

disk.createSnapshot('new-snapshot-name', callback);

//-
// If the callback is omitted, we'll return a Promise.
//-
disk.createSnapshot('new-snapshot-name').then(function(data) {
  const snapshot = data[0];
  const operation = data[1];
  const apiResponse = data[2];
});

delete(callbackopt)

Delete the disk.

Parameters:
Name Type Attributes Description
callback function <optional>

The callback function.

Properties
Name Type Attributes Description
err error <nullable>

An error returned while making this request.

operation Operation

An operation object that can be used to check the status of the request.

apiResponse object

The full API response.

See:
Example
const Compute = require('@google-cloud/compute');
const compute = new Compute();
const zone = compute.zone('us-central1-a');
const disk = zone.disk('disk1');

disk.delete(function(err, operation, apiResponse) {
  // `operation` is an Operation object that can be used to check the status
  // of the request.
});

//-
// If the callback is omitted, we'll return a Promise.
//-
disk.delete().then(function(data) {
  const operation = data[0];
  const apiResponse = data[1];
});

exists(callback)

Check if the disk exists.

Parameters:
Name Type Description
callback function

The callback function.

Properties
Name Type Attributes Description
err error <nullable>

An error returned while making this request.

exists boolean

Whether the disk exists or not.

Example
const Compute = require('@google-cloud/compute');
const compute = new Compute();
const zone = compute.zone('us-central1-a');
const disk = zone.disk('disk1');

disk.exists(function(err, exists) {});

//-
// If the callback is omitted, we'll return a Promise.
//-
disk.exists().then(function(data) {
  const exists = data[0];
});

get(optionsopt)

Get a disk if it exists.

You may optionally use this to "get or create" an object by providing an object with autoCreate set to true. Any extra configuration that is normally required for the create method must be contained within this object as well.

Parameters:
Name Type Attributes Description
options options <optional>

Configuration object.

Properties
Name Type Description
autoCreate boolean

Automatically create the object if it does not exist. Default: false

Example
const Compute = require('@google-cloud/compute');
const compute = new Compute();
const zone = compute.zone('us-central1-a');
const disk = zone.disk('disk1');

disk.get(function(err, disk, apiResponse) {
  // `disk` is a Disk object.
});

//-
// If the callback is omitted, we'll return a Promise.
//-
disk.get().then(function(data) {
  const disk = data[0];
  const apiResponse = data[1];
});

getMetadata(callbackopt)

Get the disk's metadata.

Parameters:
Name Type Attributes Description
callback function <optional>

The callback function.

Properties
Name Type Attributes Description
err error <nullable>

An error returned while making this request.

metadata object

The disk's metadata.

apiResponse object

The full API response.

See:
Example
const Compute = require('@google-cloud/compute');
const compute = new Compute();
const zone = compute.zone('us-central1-a');
const disk = zone.disk('disk1');

disk.getMetadata(function(err, metadata, apiResponse) {});

//-
// If the callback is omitted, we'll return a Promise.
//-
disk.getMetadata().then(function(data) {
  const metadata = data[0];
  const apiResponse = data[1];
});

snapshot(name) → {Snapshot}

Get a reference to a snapshot from this disk.

Parameters:
Name Type Description
name string

Name of the snapshot.

See:
Example
const Compute = require('@google-cloud/compute');
const compute = new Compute();
const zone = compute.zone('us-central1-a');
const disk = zone.disk('disk1');
const snapshot = disk.snapshot('snapshot-name');