On this page
community.google.gce_snapshot – Create or destroy snapshots for GCE storage volumes
Note
This plugin is part of the community.google collection (version 1.0.0).
You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install community.google.
To use it in a playbook, specify: community.google.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
         | 
      
       
  | 
      
        
        Whether a snapshot should be  present or absent
        | 
     
Examples
- name: Create gce snapshot
  community.google.gce_snapshot:
    instance_name: example-instance
    snapshot_name: example-snapshot
    state: present
    service_account_email: project_name@appspot.gserviceaccount.com
    credentials_file: /path/to/credentials
    project_id: project_name
  delegate_to: localhost
- name: Delete gce snapshot
  community.google.gce_snapshot:
    instance_name: example-instance
    snapshot_name: example-snapshot
    state: absent
    service_account_email: project_name@appspot.gserviceaccount.com
    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.google.gce_snapshot:
    instance_name: example-instance
    snapshot_name: example-snapshot
    state: present
    disks:
      - disk0
      - disk1
    service_account_email: project_name@appspot.gserviceaccount.com
    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)
 
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
 https://docs.ansible.com/ansible/latest/collections/community/google/gce_snapshot_module.html