Environment instance rollback and deployment testing command. By default does environment cold snapshot (stops all environment instances for duration of creation of the snapshots).

Usage

athena-snapshots [OPTIONS] COMMAND [ARGS]...
Option Description
-e, –environment Environment to run this command in.
-h, –help Show built-in help documentation.
-o, –owner Owner of the environment.
-v, –verbose Enable verbose output.

Commands

Create

Create snapshots.

athena-snapshots create [OPTIONS]
Option Description
–hot / –cold Create hot snapshot (instances will be not stopped).

List

List existing snapshots.

athena-snapshots list [OPTIONS]
Option Description
-a, –show-nodes Update/save environment variables in $ANSIBLE_DATA from/to environment Git repo.

Restore

Restore a snapshot.

athena-snapshots restore [OPTIONS] <snapshot_id>
Option Description
–backup-age Age of last backup in seconds that must exist to not backup current environment instances.
–copy-data-files / –rename-data-files Should files in ANSIBLE_DATA be renamed or copied if target and source owner or environment names are different.
–instance-size Instance size (t2.micro,c4.large,etc) override when restoring ec2 instances.
–instance-upgrade / –no-instance-upgrade Should host operating system packages be upgraded.
–openvpn-reset Regenerate and redownload first user VPN config.
-r, –reset Remove run directory and init with snapshots dir again.
–rds / –no-rds Destroy, recreate RDS DBs from snapshots.
Arguments
  • <snapshot_id> - Snapshot id (e.g. 2017-08-23-07-33-24).

Extending

To add additional snapshot management operations edit snapshots.yml in environment playbook directory.

Examples

To create cold environment snapshot (all instances will be stopped):

athena-snapshots create

To create Hot environment snapshot (instances will be not stopped):

athena-snapshots create --hot

To list all snapshots:

athena-snapshots list

To list all snapshots and show nodes they are for:

athena-snapshots list --show-nodes

To restore a specific environment snapshot (‘2016-06-10-10-18-58’):

athena-snapshots restore 2016-06-10-10-18-58

To restore a specific environment snapshot (‘2017-08-23-07-33-24’), reset the run directory and to not upgrade instance packages:

athena-snapshots restore --reset --no-instance-upgrade 2017-08-23-07-33-24