connect_backup

package module
v0.0.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 7, 2020 License: MIT Imports: 12 Imported by: 0

README

connect-backup

A tool to backup and (eventually) restore AWS Connect. You can backup to file, S3 or just to stdout.

A tool to backup and restore your AWS Connect instance

Flags:
  -h, --help               Show context-sensitive help (also try --help-long and --help-man).
      --profile=PROFILE    AWS credentials/config file profile to use
      --region=REGION      AWS region
      --instance=INSTANCE  The AWS Connect instance id to backup
  -v, --version            Show application version.

Commands:
  help [<command>...]
    Show help.

  backup [<flags>]
    backup your instance

Getting connect-backup

Easiest way to install if you're on a Mac or Linux (amd64 or arm64) is to use Homebrew

Type:

brew tap sethkor/tap
brew install connect-backup

For other platforms take a look at the releases in Github. I build binaries for:

OS Architecture
Mac (Darwin) amd64 (aka x86_64)
Linux amd64, arm64, 386 (32 bit)
Windows amd64, 386 (32 bit)

Let me know if you would like a particular os/arch binary regularly built.

Lambda

If you'd rather set up a lambda to periodically trigger a backup, clone the repo as it contains all the lambda bits and a template to use with AWS SAM to deploy it. You will need to update the env.mk file with the values fo your environment.

Then just simply:

make lambda
make sam-deploy

If you want to undeploy you can run:

make sam-remove

but remember to make sure your bucket is empty first (including all object versions)

What is included in the backup

  • Published Call Flows (The AWS API restricts this to published flows only)
  • Routing Profiles
  • User Data (except Passwords)
  • User Hierarchy Groups
  • User Hierarchy

connect-backup use a directory/prefix (see what I did there?) structure so everything is neat and tidy. If the structure is not there it will create it on the fly:

your-connect-backup-workspace
   ├──flows
   ├──routing-profiles
   ├──users
   └──user-hierarchy-groups

What about Queues?

Currently, there is no API call to describe or create queues. When the API becomes available, I'll add it.

To Do

  • Restoration
  • Lambda deployment via AWS SAM

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetAwsSession added in v0.0.4

func GetAwsSession(profile string, region string) *session.Session

Types

type ConnectBackup added in v0.0.3

type ConnectBackup struct {
	ConnectInstanceId *string
	Svc               *connect.Connect
	TheWriter         Writer
}

func (ConnectBackup) Backup added in v0.0.3

func (cb ConnectBackup) Backup() error

type FileWriter

type FileWriter struct {
	Path string
}

func (*FileWriter) InitDirs added in v0.0.2

func (fw *FileWriter) InitDirs()

type S3Writer

type S3Writer struct {
	Destination url.URL
	Sess        *session.Session
}

type StdoutWriter

type StdoutWriter struct {
}

type Writer

type Writer interface {
	// contains filtered or unexported methods
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL