Пример #1
0
 def test_set_environment(self):
     env = "alternate"
     sav = pyrax.authenticate
     pyrax.authenticate = Mock()
     pyrax.set_environment(env)
     self.assertEqual(pyrax.get_environment(), env)
     pyrax.authenticate = sav
Пример #2
0
 def test_set_environment(self):
     env = "alternate"
     sav = pyrax.authenticate
     pyrax.authenticate = Mock()
     pyrax.set_environment(env)
     self.assertEqual(pyrax.get_environment(), env)
     pyrax.authenticate = sav
Пример #3
0
def setup():
    default_creds_file = os.path.expanduser('~/.rackspace_cloud_credentials')

    env = get_config(p, 'rax', 'environment', 'RAX_ENV', None)
    if env:
        pyrax.set_environment(env)

    keyring_username = pyrax.get_setting('keyring_username')

    # Attempt to grab credentials from environment first
    creds_file = get_config(p, 'rax', 'creds_file', 'RAX_CREDS_FILE', None)
    if creds_file is not None:
        creds_file = os.path.expanduser(creds_file)
    else:
        # But if that fails, use the default location of
        # ~/.rackspace_cloud_credentials
        if os.path.isfile(default_creds_file):
            creds_file = default_creds_file
        elif not keyring_username:
            sys.stderr.write('No value in environment variable %s and/or no '
                             'credentials file at %s\n' %
                             ('RAX_CREDS_FILE', default_creds_file))
            sys.exit(1)

    identity_type = pyrax.get_setting('identity_type')
    pyrax.set_setting('identity_type', identity_type or 'rackspace')

    region = pyrax.get_setting('region')

    try:
        if keyring_username:
            pyrax.keyring_auth(keyring_username, region=region)
        else:
            pyrax.set_credential_file(creds_file, region=region)
    except Exception as e:
        sys.stderr.write("%s: %s\n" % (e, e.message))
        sys.exit(1)

    regions = []
    if region:
        regions.append(region)
    else:
        region_list = get_config(p,
                                 'rax',
                                 'regions',
                                 'RAX_REGION',
                                 'all',
                                 islist=True)
        for region in region_list:
            region = region.strip().upper()
            if region == 'ALL':
                regions = pyrax.regions
                break
            elif region not in pyrax.regions:
                sys.stderr.write('Unsupported region %s' % region)
                sys.exit(1)
            elif region not in regions:
                regions.append(region)

    return regions
Пример #4
0
def setup():
    default_creds_file = os.path.expanduser('~/.rackspace_cloud_credentials')

    env = get_config(p, 'rax', 'environment', 'RAX_ENV', None)
    if env:
        pyrax.set_environment(env)

    keyring_username = pyrax.get_setting('keyring_username')

    # Attempt to grab credentials from environment first
    creds_file = get_config(p, 'rax', 'creds_file',
                            'RAX_CREDS_FILE', None)
    if creds_file is not None:
        creds_file = os.path.expanduser(creds_file)
    else:
        # But if that fails, use the default location of
        # ~/.rackspace_cloud_credentials
        if os.path.isfile(default_creds_file):
            creds_file = default_creds_file
        elif not keyring_username:
            sys.stderr.write('No value in environment variable %s and/or no '
                             'credentials file at %s\n'
                             % ('RAX_CREDS_FILE', default_creds_file))
            sys.exit(1)

    identity_type = pyrax.get_setting('identity_type')
    pyrax.set_setting('identity_type', identity_type or 'rackspace')

    region = pyrax.get_setting('region')

    try:
        if keyring_username:
            pyrax.keyring_auth(keyring_username, region=region)
        else:
            pyrax.set_credential_file(creds_file, region=region)
    except Exception as e:
        sys.stderr.write("%s: %s\n" % (e, e.message))
        sys.exit(1)

    regions = []
    if region:
        regions.append(region)
    else:
        region_list = get_config(p, 'rax', 'regions', 'RAX_REGION', 'all',
                                 islist=True)
        for region in region_list:
            region = region.strip().upper()
            if region == 'ALL':
                regions = pyrax.regions
                break
            elif region not in pyrax.regions:
                sys.stderr.write('Unsupported region %s' % region)
                sys.exit(1)
            elif region not in regions:
                regions.append(region)

    return regions
Пример #5
0
def setup():
    default_creds_file = os.path.expanduser('~/.rackspace_cloud_credentials')

    env = os.getenv('RAX_ENV', None)
    if env:
        pyrax.set_environment(env)

    keyring_username = pyrax.get_setting('keyring_username')

    # Attempt to grab credentials from environment first
    try:
        creds_file = os.path.expanduser(os.environ['RAX_CREDS_FILE'])
    except KeyError, e:
        # But if that fails, use the default location of
        # ~/.rackspace_cloud_credentials
        if os.path.isfile(default_creds_file):
            creds_file = default_creds_file
        elif not keyring_username:
            sys.stderr.write('No value in environment variable %s and/or no '
                             'credentials file at %s\n'
                             % (e.message, default_creds_file))
            sys.exit(1)
Пример #6
0
def setup():
    default_creds_file = os.path.expanduser('~/.rackspace_cloud_credentials')

    env = os.getenv('RAX_ENV', None)
    if env:
        pyrax.set_environment(env)

    keyring_username = pyrax.get_setting('keyring_username')

    # Attempt to grab credentials from environment first
    try:
        creds_file = os.path.expanduser(os.environ['RAX_CREDS_FILE'])
    except KeyError, e:
        # But if that fails, use the default location of
        # ~/.rackspace_cloud_credentials
        if os.path.isfile(default_creds_file):
            creds_file = default_creds_file
        elif not keyring_username:
            sys.stderr.write('No value in environment variable %s and/or no '
                             'credentials file at %s\n'
                             % (e.message, default_creds_file))
            sys.exit(1)
Пример #7
0
def setup():
    default_creds_file = os.path.expanduser('~/.rackspace_cloud_credentials')

    env = get_config(p, 'rax', 'environment', 'RAX_ENV', None)
    if env:
        pyrax.set_environment(env)

    keyring_username = pyrax.get_setting('keyring_username')

    # Attempt to grab credentials from environment first
    creds_file = get_config(p, 'rax', 'creds_file',
                            'RAX_CREDS_FILE', None)
    if creds_file is not None:
        creds_file = os.path.expanduser(creds_file)
    else:
        # But if that fails, use the default location of
        # ~/.rackspace_cloud_credentials
        if os.path.isfile(default_creds_file):
            creds_file = default_creds_file
        elif not keyring_username:
            sys.stderr.write('No value in environment variable %s and/or no '
                             'credentials file at %s\n'
                             % ('RAX_CREDS_FILE', default_creds_file))
            sys.exit(1)

    identity_type = pyrax.get_setting('identity_type')
    pyrax.set_setting('identity_type', identity_type or 'rackspace')

    region = pyrax.get_setting('region')

    try:
        if keyring_username:
            pyrax.keyring_auth(keyring_username, region=region)
        else:
            pyrax.set_credential_file(creds_file, region=region)
    except Exception, e:
        sys.stderr.write("%s: %s\n" % (e, e.message))
        sys.exit(1)
Пример #8
0
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import json
import pyrax

pyrax.set_environment("scale12x")
pyrax.keyring_auth()

CLEANUP_FILE = "scaledemo.json"

svcs = {"CS": pyrax.cloudservers.servers,
        "CSK": pyrax.cloudservers.keypairs,
        "CNW": pyrax.cloud_networks,
        "CLB": pyrax.cloud_loadbalancers,
        "CDB": pyrax.cloud_databases,
        "DNS": pyrax.cloud_dns,
        }

with open(CLEANUP_FILE) as ff:
    clean = json.load(ff)

for svc_abbr in clean:
    svc = svcs.get(svc_abbr)
    for id_ in clean[svc_abbr][::-1]:
        try:
            svc.delete(id_)
        except Exception as e:
            print "SVC", svc_abbr, "ID", id_
            print "ERR", e
            print
            continue
Пример #9
0
        help="""Regions to run tests against. Can be specified multiple
            times. If not specified, the default of pyrax.regions will be
            used.""")
    parser.add_argument("--env",
                        "-e",
                        help="""Configuration environment to
            use for the test. If not specified, the `default` environment is
            used.""")
    args = parser.parse_args()
    regions = args.regions
    if not regions:
        pyrax.keyring_auth()
        regions = pyrax.regions
    env = args.env
    if env:
        pyrax.set_environment(env)

    start = time.time()
    pyrax.keyring_auth()
    for region in regions:
        print()
        print("=" * 77)
        print("Starting test for region: %s" % region)
        print("=" * 77)
        smoke_tester = SmokeTester(region)
        try:
            smoke_tester.run_tests()

        finally:
            smoke_tester.cleanup()
Пример #10
0
    parser = argparse.ArgumentParser(description="Run the smoke tests!")
    parser.add_argument("--regions", "-r", action="append",
            help="""Regions to run tests against. Can be specified multiple
            times. If not specified, the default of pyrax.regions will be
            used.""")
    parser.add_argument("--env", "-e", help="""Configuration environment to
            use for the test. If not specified, the `default` environment is
            used.""")
    args = parser.parse_args()
    regions = args.regions
    if not regions:
        pyrax.keyring_auth()
        regions = pyrax.regions
    env = args.env
    if env:
        pyrax.set_environment(env)

    start = time.time()
    pyrax.keyring_auth()
    for region in regions:
        print
        print "=" * 77
        print "Starting test for region: %s" % region
        print "=" * 77
        smoke_tester = SmokeTester(region)
        try:
            smoke_tester.run_tests()

        finally:
            smoke_tester.cleanup()
Пример #11
0
parser.add_argument('-r', '--region', help = "Which region to use. 'ORD' if none is specified.", type = str, default = DEFAULT_REGION, choices = CLOUDFILES_REGIONS)
parser.add_argument('-e', '--environment', help = "Which environment to use. 'default' if none is specified.", type = str, default = 'default')
parser.add_argument('--delete', help = "Remove orphaned files from Rackspace", action = "store_true", default = False)
parser.add_argument('-v', '--version', help = "Print the script version and exit", action = "store_true", default = False)

pyrax.set_credential_file(os.path.expanduser('~/.rackspace'))
pyrax.set_setting('custom_user_agent', 'Rackup Python Script/%s' % VERSION)
pyrax.authenticate()
if not pyrax.identity.authenticated:
	alert('Your credentials failed to authenticate.', os.EX_UNAVAILABLE)

args            =   parser.parse_args()

if not args.environment in pyrax.list_environments():
	alert('"%s" is not a valid environment.' % args.environment, os.EX_UNAVAILABLE)
pyrax.set_environment(args.environment)

if not args.container:
	alert("You must pass a container as the first argument.", os.EX_NOINPUT, ERROR_COLOR)

cf = pyrax.connect_to_cloudfiles(region=args.region)

containers = cf.list_containers()
if not args.container in containers:
	alert('"%s" was not found in this accounts containers.' % args.container, os.EX_UNAVAILABLE, ERROR_COLOR)

def main():
	alert('Syncing files to "%s"' % args.container)
	cf.sync_folder_to_container('.', args.container, ignore = EXCLUDES, delete = args.delete, include_hidden = True)
	notify(args.container, 'Your files have been synced.')