| Index: tools/telemetry/third_party/gsutilz/third_party/boto/bin/glacier
|
| diff --git a/tools/telemetry/third_party/gsutilz/third_party/boto/bin/glacier b/tools/telemetry/third_party/gsutilz/third_party/boto/bin/glacier
|
| deleted file mode 100755
|
| index ae3b0c574ba3e6ca6b887775177144c174094696..0000000000000000000000000000000000000000
|
| --- a/tools/telemetry/third_party/gsutilz/third_party/boto/bin/glacier
|
| +++ /dev/null
|
| @@ -1,161 +0,0 @@
|
| -#!/usr/bin/env python
|
| -# -*- coding: utf-8 -*-
|
| -# Copyright (c) 2012 Miguel Olivares http://moliware.com/
|
| -#
|
| -# Permission is hereby granted, free of charge, to any person obtaining a
|
| -# copy of this software and associated documentation files (the
|
| -# "Software"), to deal in the Software without restriction, including
|
| -# without limitation the rights to use, copy, modify, merge, publish, dis-
|
| -# tribute, sublicense, and/or sell copies of the Software, and to permit
|
| -# persons to whom the Software is furnished to do so, subject to the fol-
|
| -# lowing conditions:
|
| -#
|
| -# The above copyright notice and this permission notice shall be included
|
| -# in all copies or substantial portions of the Software.
|
| -#
|
| -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
| -# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL-
|
| -# ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
|
| -# SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
| -# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
| -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
| -# IN THE SOFTWARE.
|
| -#
|
| -"""
|
| - glacier
|
| - ~~~~~~~
|
| -
|
| - Amazon Glacier tool built on top of boto. Look at the usage method to see
|
| - how to use it.
|
| -
|
| - Author: Miguel Olivares <miguel@moliware.com>
|
| -"""
|
| -import sys
|
| -
|
| -from boto.glacier import connect_to_region
|
| -from getopt import getopt, GetoptError
|
| -from os.path import isfile, basename
|
| -
|
| -
|
| -COMMANDS = ('vaults', 'jobs', 'upload')
|
| -
|
| -
|
| -def usage():
|
| - print("""
|
| -glacier <command> [args]
|
| -
|
| - Commands
|
| - vaults - Operations with vaults
|
| - jobs - Operations with jobs
|
| - upload - Upload files to a vault. If the vault doesn't exits, it is
|
| - created
|
| -
|
| - Common args:
|
| - --access_key - Your AWS Access Key ID. If not supplied, boto will
|
| - use the value of the environment variable
|
| - AWS_ACCESS_KEY_ID
|
| - --secret_key - Your AWS Secret Access Key. If not supplied, boto
|
| - will use the value of the environment variable
|
| - AWS_SECRET_ACCESS_KEY
|
| - --region - AWS region to use. Possible values: us-east-1, us-west-1,
|
| - us-west-2, ap-northeast-1, eu-west-1.
|
| - Default: us-east-1
|
| -
|
| - Vaults operations:
|
| -
|
| - List vaults:
|
| - glacier vaults
|
| -
|
| - Jobs operations:
|
| -
|
| - List jobs:
|
| - glacier jobs <vault name>
|
| -
|
| - Uploading files:
|
| -
|
| - glacier upload <vault name> <files>
|
| -
|
| - Examples :
|
| - glacier upload pics *.jpg
|
| - glacier upload pics a.jpg b.jpg
|
| -""")
|
| - sys.exit()
|
| -
|
| -
|
| -def connect(region, debug_level=0, access_key=None, secret_key=None):
|
| - """ Connect to a specific region """
|
| - layer2 = connect_to_region(region,
|
| - aws_access_key_id=access_key,
|
| - aws_secret_access_key=secret_key,
|
| - debug=debug_level)
|
| - if layer2 is None:
|
| - print('Invalid region (%s)' % region)
|
| - sys.exit(1)
|
| - return layer2
|
| -
|
| -
|
| -def list_vaults(region, access_key=None, secret_key=None):
|
| - layer2 = connect(region, access_key = access_key, secret_key = secret_key)
|
| - for vault in layer2.list_vaults():
|
| - print(vault.arn)
|
| -
|
| -
|
| -def list_jobs(vault_name, region, access_key=None, secret_key=None):
|
| - layer2 = connect(region, access_key = access_key, secret_key = secret_key)
|
| - print(layer2.layer1.list_jobs(vault_name))
|
| -
|
| -
|
| -def upload_files(vault_name, filenames, region, access_key=None, secret_key=None):
|
| - layer2 = connect(region, access_key = access_key, secret_key = secret_key)
|
| - layer2.create_vault(vault_name)
|
| - glacier_vault = layer2.get_vault(vault_name)
|
| - for filename in filenames:
|
| - if isfile(filename):
|
| - sys.stdout.write('Uploading %s to %s...' % (filename, vault_name))
|
| - sys.stdout.flush()
|
| - archive_id = glacier_vault.upload_archive(
|
| - filename,
|
| - description = basename(filename))
|
| - print(' done. Vault returned ArchiveID %s' % archive_id)
|
| -
|
| -def main():
|
| - if len(sys.argv) < 2:
|
| - usage()
|
| -
|
| - command = sys.argv[1]
|
| - if command not in COMMANDS:
|
| - usage()
|
| -
|
| - argv = sys.argv[2:]
|
| - options = 'a:s:r:'
|
| - long_options = ['access_key=', 'secret_key=', 'region=']
|
| - try:
|
| - opts, args = getopt(argv, options, long_options)
|
| - except GetoptError as e:
|
| - usage()
|
| -
|
| - # Parse agument
|
| - access_key = secret_key = None
|
| - region = 'us-east-1'
|
| - for option, value in opts:
|
| - if option in ('-a', '--access_key'):
|
| - access_key = value
|
| - elif option in ('-s', '--secret_key'):
|
| - secret_key = value
|
| - elif option in ('-r', '--region'):
|
| - region = value
|
| - # handle each command
|
| - if command == 'vaults':
|
| - list_vaults(region, access_key, secret_key)
|
| - elif command == 'jobs':
|
| - if len(args) != 1:
|
| - usage()
|
| - list_jobs(args[0], region, access_key, secret_key)
|
| - elif command == 'upload':
|
| - if len(args) < 2:
|
| - usage()
|
| - upload_files(args[0], args[1:], region, access_key, secret_key)
|
| -
|
| -
|
| -if __name__ == '__main__':
|
| - main()
|
|
|