community.general.gce_snapshot – Create or destroy snapshots for GCE storage volumes

Note

This plugin is part of the community.general collection (version 1.3.6).

To install it use: ansible-galaxy collection install community.general.

To use it in a playbook, specify: community.general.gce_snapshot.

Synopsis

  • Manages snapshots for GCE instances. This module manages snapshots for the storage volumes of a GCE compute instance. If there are multiple volumes, each snapshot will be prepended with the disk name

Requirements

The below requirements are needed on the host that executes this module.

  • python >= 2.6

  • apache-libcloud >= 0.19.0

Parameters

Parameter Choices/Defaults Comments
credentials_file
path
The path to the credentials file associated with the service account
disks
list / elements=string
A list of disks to create snapshots for. If none is provided, all of the volumes will have snapshots created.
instance_name
string / required
The GCE instance to snapshot
project_id
string
The GCP project ID to use
service_account_email
string
GCP service account email for the project where the instance resides
snapshot_name
string / required
The name of the snapshot to manage
state
string
    Choices:
  • present ←
  • absent
Whether a snapshot should be present or absent

Examples

- name: Create gce snapshot
  community.general.gce_snapshot:
    instance_name: example-instance
    snapshot_name: example-snapshot
    state: present
    service_account_email: [email protected]
    credentials_file: /path/to/credentials
    project_id: project_name
  delegate_to: localhost

- name: Delete gce snapshot
  community.general.gce_snapshot:
    instance_name: example-instance
    snapshot_name: example-snapshot
    state: absent
    service_account_email: [email protected]
    credentials_file: /path/to/credentials
    project_id: project_name
  delegate_to: localhost

# This example creates snapshots for only two of the available disks as
# disk0-example-snapshot and disk1-example-snapshot
- name: Create snapshots of specific disks
  community.general.gce_snapshot:
    instance_name: example-instance
    snapshot_name: example-snapshot
    state: present
    disks:
      - disk0
      - disk1
    service_account_email: [email protected]
    credentials_file: /path/to/credentials
    project_id: project_name
  delegate_to: localhost

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
snapshots_absent
list / elements=string
When snapshots were already absent
List of snapshots that were already absent (no-op)

Sample:
[disk0-example-snapshot, disk1-example-snapshot]
snapshots_created
list / elements=string
When snapshots are created
List of newly created snapshots

Sample:
[disk0-example-snapshot, disk1-example-snapshot]
snapshots_deleted
list / elements=string
When snapshots are deleted
List of destroyed snapshots

Sample:
[disk0-example-snapshot, disk1-example-snapshot]
snapshots_existing
list / elements=string
When snapshots were already present
List of snapshots that already existed (no-op)

Sample:
[disk0-example-snapshot, disk1-example-snapshot]


Authors

  • Rob Wagner (@robwagner33)