Constructor

Disk

new Disk(zone, name)

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

Parameter

zone

Zone

name

string

See also

Disks Overview

Disk Resource

Example

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

Properties

formattedName

string

id

string

name

string

zone

Zone

The parent Zone instance of this Disk instance.

Methods

create

create(config)

Create a persistent disk.

Parameter

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

createSnapshot(name, options, callback)

Create a snapshot of a disk.

Parameter

name

string

Name of the snapshot.

options

Optional

object

See the Disks: createSnapshot request body.

callback

function()

The callback function.

Values in callback have the following properties:

Parameter

err

error

An error returned while making this request.

Value may be null.

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 also

Snapshots Overview

Disks: createSnapshot API Documentation

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

delete(callback)

Delete the disk.

Parameter

callback

Optional

function()

The callback function.

Values in callback have the following properties:

Parameter

err

error

An error returned while making this request.

Value may be null.

operation

Operation

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

apiResponse

object

The full API response.

See also

Disks: delete API Documentation

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

exists(callback)

Check if the disk exists.

Parameter

callback

function()

The callback function.

Values in callback have the following properties:

Parameter

err

error

An error returned while making this request.

Value may be null.

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

get(options)

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.

Parameter

options

Optional

options

Configuration object.

Values in options have the following properties:

Parameter

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

getMetadata(callback)

Get the disk's metadata.

Parameter

callback

Optional

function()

The callback function.

Values in callback have the following properties:

Parameter

err

error

An error returned while making this request.

Value may be null.

metadata

object

The disk's metadata.

apiResponse

object

The full API response.

See also

Disk Resource

Disks: get API Documentation

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

snapshot(name) returns Snapshot

Get a reference to a snapshot from this disk.

Parameter

name

string

Name of the snapshot.

See also

Snapshots Overview

Returns

Snapshot 

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');