Exemplo n.º 1
0
def fill_servers(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    lib.world.servers = {}
    for record in step.hashes:
        record['server_id'] = record.get('server_id', "'%s'" % lib.generate_server_id())
        record['farm_id'] = record.get('farm_id', lib.generate_id())
        record['farm_roleid'] = record.get('farm_roleid', lib.generate_id())
        record['client_id'] = record.get('client_id', lib.generate_id())
        record['env_id'] = record.get('env_id', lib.generate_id())
        record['platform'] = record.get(
            'platform', random.choice(["'ec2'", "'gce'", "'idcf'", "'openstack'"]))
        record['cloud_location'] = record.get('cloud_location', "'us-east-1'")
        record['status'] = record.get('server_status') or record.get('status', "'Running'")
        record['remote_ip'] = record.get('remote_ip', 'NULL')
        record['local_ip'] = record.get('local_ip', 'NULL')
        record['index'] = record.get('index', 1)
        record['instance_type_name'] = record.get('instance_type_name', 'NULL')
        record['type'] = record.get('type', 'NULL')
        record['os_type'] = record.get('os_type', random.choice(["'linux'", "'windows'"]))
        query = (
            "INSERT INTO servers "
            "(server_id, farm_id, farm_roleid, client_id, env_id, platform, cloud_location, "
            "status, remote_ip, local_ip, `index`, instance_type_name, type, os_type) "
            "VALUES ({server_id}, {farm_id}, {farm_roleid}, {client_id}, {env_id}, "
            "{platform}, {cloud_location}, {status}, {remote_ip}, {local_ip}, {index}, "
            "{instance_type_name}, {type}, {os_type})"
        ).format(**record)
        db.execute(query)
        server = db.execute("SELECT * FROM servers where server_id='%s'" %
                            strip(record['server_id']))[0]
        for k, v in server.items():
            if isinstance(v, basestring):
                server[k] = "'%s'" % v
        lib.world.servers[server['server_id']] = server
Exemplo n.º 2
0
def fill_servers(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    lib.world.servers = {}
    for record in step.hashes:
        record['server_id'] = record.get('server_id',
                                         "'%s'" % lib.generate_server_id())
        record['farm_id'] = record.get('farm_id', lib.generate_id())
        record['farm_roleid'] = record.get('farm_roleid', lib.generate_id())
        record['client_id'] = record.get('client_id', lib.generate_id())
        record['env_id'] = record.get('env_id', lib.generate_id())
        record['role_id'] = record.get('env_id', lib.generate_id())
        record['platform'] = record.get(
            'platform',
            random.choice(["'ec2'", "'gce'", "'idcf'", "'openstack'"]))
        record['status'] = record.get('status', "'running'")
        record['remote_ip'] = record.get('remote_ip', 'NULL')
        record['local_ip'] = record.get('local_ip', 'NULL')
        record['index'] = record.get('index', 1)
        record['os_type'] = record.get('os_type',
                                       random.choice(["'linux'", "'windows'"]))
        query = (
            "INSERT INTO servers "
            "(server_id, farm_id, farm_roleid, client_id, env_id, role_id, platform, "
            "status, remote_ip, local_ip, `index`, os_type) "
            "VALUES ({server_id}, {farm_id}, {farm_roleid}, {client_id}, {env_id}, "
            "{role_id}, {platform}, {status}, {remote_ip}, {local_ip}, {index}, {os_type})"
        ).format(**record)
        db.execute(query)
        server = db.execute("SELECT * FROM servers where server_id='%s'" %
                            strip(record['server_id']))
        server = db.execute("SELECT * FROM servers where server_id='%s'" %
                            strip(record['server_id']))[0]
        lib.world.servers[server['server_id']] = server
Exemplo n.º 3
0
def fill_servers_history(step):
    db = dbmanager.DB(lib.world.config["connections"]["mysql"])
    for record in step.hashes:
        record["server_id"] = record.get("server_id", "'%s'" % lib.generate_server_id())
        server = lib.world.servers.get(record["server_id"], {})
        record["cloud_server_id"] = record["cloud_server_id"]
        record["farm_id"] = record.get("farm_id") or server.get("farm_id") or lib.generate_id()
        record["farm_roleid"] = record.get("farm_roleid") or server.get("farm_roleid") or lib.generate_id()
        record["client_id"] = record.get("client_id") or server.get("client_id") or lib.generate_id()
        record["env_id"] = record.get("env_id") or server.get("env_id") or lib.generate_id()
        record["platform"] = (
            record.get("platform")
            or server.get("platform")
            or random.choice(["'ec2'", "'gce'", "'idcf'", "'openstack'"])
        )
        record["cloud_location"] = record.get("cloud_location") or server.get("cloud_location") or "'us-east-1'"
        record["instance_type_name"] = record.get("instance_type_name") or server.get("instance_type_name") or "NULL"
        record["type"] = record.get("type") or server.get("type") or "NULL"
        record["server_index"] = record.get("server_index") or server.get("index") or 1
        record["role_id"] = record.get("role_id") or lib.generate_id()
        record["project_id"] = uuid.UUID(
            strip(record.get("project_id", "00000000-0000-0000-0000-000000000001"))
        ).hex.upper()
        record["cc_id"] = uuid.UUID(strip(record.get("cc_id", "00000000-0000-0000-0000-000000000001"))).hex.upper()
        query = (
            "INSERT INTO servers_history "
            "(server_id, cloud_server_id, farm_id, farm_roleid, role_id, client_id, env_id, "
            "platform, cloud_location, server_index, instance_type_name, type, project_id, cc_id) "
            "VALUES ({server_id}, {cloud_server_id}, {farm_id}, {farm_roleid}, {role_id}, "
            "{client_id}, {env_id}, {platform}, {cloud_location}, {server_index}, "
            "{instance_type_name}, {type}, UNHEX('{project_id}'), UNHEX('{cc_id}'))"
        ).format(**record)
        db.execute(query)
Exemplo n.º 4
0
def fill_servers_history(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    for record in step.hashes:
        record['server_id'] = record.get('server_id', "'%s'" % lib.generate_server_id())
        server = lib.world.servers.get(record['server_id'], {})
        record['cloud_server_id'] = record['cloud_server_id']
        record['farm_id'] = record.get('farm_id') or server.get('farm_id') or lib.generate_id()
        record['farm_roleid'] = record.get('farm_roleid') or server.get('farm_roleid') or lib.generate_id()
        record['client_id'] = record.get('client_id') or server.get('client_id') or lib.generate_id()
        record['env_id'] = record.get('env_id') or server.get('env_id') or lib.generate_id()
        record['platform'] = record.get('platform') or server.get('platform') or random.choice(
                ["'ec2'", "'gce'", "'idcf'", "'openstack'"])
        record['cloud_location'] = record.get('cloud_location') or server.get('cloud_location') or "'us-east-1'"
        record['instance_type_name'] = record.get('instance_type_name') or server.get('instance_type_name') or 'NULL'
        record['type'] = record.get('type') or server.get('type') or 'NULL'
        record['server_index'] = record.get('server_index') or server.get('index') or 1
        record['role_id'] = record.get('role_id') or lib.generate_id()
        record['project_id'] = uuid.UUID(strip(record.get('project_id', '00000000-0000-0000-0000-000000000001'))).hex.upper()
        record['cc_id'] = uuid.UUID(strip(record.get('cc_id', '00000000-0000-0000-0000-000000000001'))).hex.upper()
        query = (
            "INSERT INTO servers_history "
            "(server_id, cloud_server_id, farm_id, farm_roleid, role_id, client_id, env_id, "
            "platform, cloud_location, server_index, instance_type_name, type, project_id, cc_id) "
            "VALUES ({server_id}, {cloud_server_id}, {farm_id}, {farm_roleid}, {role_id}, "
            "{client_id}, {env_id}, {platform}, {cloud_location}, {server_index}, "
            "{instance_type_name}, {type}, UNHEX('{project_id}'), UNHEX('{cc_id}'))"
        ).format(**record)
        db.execute(query)
Exemplo n.º 5
0
def fill_events(step):
    db = dbmanager.DB(lib.world.config["connections"]["mysql"])
    for record in step.hashes:
        record["id"] = record.get("id", lib.generate_id())
        record["event_id"] = record.get("event_id", "'%s'" % lib.generate_id())
        query = ("INSERT INTO events " "(id, event_id) " "VALUES ({id}, {event_id})").format(**record)
        db.execute(query)
Exemplo n.º 6
0
def fill_servers(step):
    db = dbmanager.DB(lib.world.config["connections"]["mysql"])
    lib.world.servers = {}
    for record in step.hashes:
        record["server_id"] = record.get("server_id", "'%s'" % lib.generate_server_id())
        record["farm_id"] = record.get("farm_id", lib.generate_id())
        record["farm_roleid"] = record.get("farm_roleid", lib.generate_id())
        record["client_id"] = record.get("client_id", lib.generate_id())
        record["env_id"] = record.get("env_id", lib.generate_id())
        record["platform"] = record.get("platform", random.choice(["'ec2'", "'gce'", "'idcf'", "'openstack'"]))
        record["cloud_location"] = record.get("cloud_location", "'us-east-1'")
        record["status"] = record.get("status", "'running'")
        record["remote_ip"] = record.get("remote_ip", "NULL")
        record["local_ip"] = record.get("local_ip", "NULL")
        record["index"] = record.get("index", 1)
        record["instance_type_name"] = record.get("instance_type_name", "NULL")
        record["type"] = record.get("type", "NULL")
        record["os_type"] = record.get("os_type", random.choice(["'linux'", "'windows'"]))
        query = (
            "INSERT INTO servers "
            "(server_id, farm_id, farm_roleid, client_id, env_id, platform, cloud_location, "
            "status, remote_ip, local_ip, `index`, instance_type_name, type, os_type) "
            "VALUES ({server_id}, {farm_id}, {farm_roleid}, {client_id}, {env_id}, "
            "{platform}, {cloud_location}, {status}, {remote_ip}, {local_ip}, {index}, "
            "{instance_type_name}, {type}, {os_type})"
        ).format(**record)
        db.execute(query)
        server = db.execute("SELECT * FROM servers where server_id='%s'" % strip(record["server_id"]))[0]
        for k, v in server.items():
            if isinstance(v, basestring):
                server[k] = "'%s'" % v
        lib.world.servers[server["server_id"]] = server
Exemplo n.º 7
0
def fill_events(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    for record in step.hashes:
        record['id'] = record.get('id', lib.generate_id())
        record['event_id'] = record.get('event_id', "'%s'" % lib.generate_id())
        query = ("INSERT INTO events "
                 "(id, event_id) "
                 "VALUES ({id}, {event_id})").format(**record)
        db.execute(query)
Exemplo n.º 8
0
def fill_events(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    for record in step.hashes:
        record['id'] = record.get('id', lib.generate_id())
        record['event_id'] = record.get('event_id', "'%s'" % lib.generate_id())
        query = (
            "INSERT INTO events "
            "(id, event_id) "
            "VALUES ({id}, {event_id})"
        ).format(**record)
        db.execute(query)
Exemplo n.º 9
0
def fill_client_environments(step):
    db = dbmanager.DB(lib.world.config["connections"]["mysql"])
    lib.world.client_environments = {}
    for record in step.hashes:
        record["id"] = record.get("id", lib.generate_id())
        record["client_id"] = record.get("client_id", lib.generate_id())
        record["status"] = record.get("status", "Active")
        lib.world.client_environments[record["id"]] = record
        query = (
            "INSERT INTO client_environments " "(id, client_id, status) " "VALUES ({id}, {client_id}, {status})"
        ).format(**record)
        db.execute(query)
Exemplo n.º 10
0
def fill_client_environments(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    lib.world.client_environments = {}
    for record in step.hashes:
        record['id'] = record.get('id', lib.generate_id())
        record['client_id'] = record.get('client_id', lib.generate_id())
        record['status'] = record.get('status', 'Active')
        lib.world.client_environments[record['id']] = record
        query = ("INSERT INTO client_environments "
                 "(id, client_id, status) "
                 "VALUES ({id}, {client_id}, {status})").format(**record)
        db.execute(query)
Exemplo n.º 11
0
def fill_cloud_credentials(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    for record in step.hashes:
        record['id'] = record.get('id', lib.generate_id())
        record['account_id'] = record.get('account_id', lib.generate_id())
        record['env_id'] = record.get('env_id', lib.generate_id())
        record['cloud'] = record.get('cloud', random.choice(["'ec2'", "'gce'", "'idcf'", "'openstack'"]))
        query = (
            "INSERT INTO cloud_credentials "
            "(id, account_id, env_id, cloud) "
            "VALUES ({id}, {account_id}, {env_id}, {cloud})"
        ).format(**record)
        db.execute(query)
Exemplo n.º 12
0
def fill_cloud_credentials(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    for record in step.hashes:
        record['id'] = record.get('id', lib.generate_id())
        record['account_id'] = record.get('account_id', lib.generate_id())
        record['env_id'] = record.get('env_id', lib.generate_id())
        record['cloud'] = record.get(
            'cloud', random.choice(["'ec2'", "'gce'", "'idcf'",
                                    "'openstack'"]))
        query = ("INSERT INTO cloud_credentials "
                 "(id, account_id, env_id, cloud) "
                 "VALUES ({id}, {account_id}, {env_id}, {cloud})").format(
                     **record)
        db.execute(query)
Exemplo n.º 13
0
def fill_client_environments(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    lib.world.client_environments = {}
    for record in step.hashes:
        record['id'] = record.get('id', lib.generate_id())
        record['client_id'] = record.get('client_id', lib.generate_id())
        record['status'] = record.get('status', 'Active')
        lib.world.client_environments[record['id']] = record
        query = (
            "INSERT INTO client_environments "
            "(id, client_id, status) "
            "VALUES ({id}, {client_id}, {status})"
        ).format(**record)
        db.execute(query)
Exemplo n.º 14
0
def fill_farms(step):
    db = dbmanager.DB(lib.world.config["connections"]["mysql"])
    lib.world.farms = {}
    for record in step.hashes:
        record["id"] = record.get("id", lib.generate_id())
        record["clientid"] = record.get("clientid", lib.generate_id())
        record["env_id"] = record.get("env_id", lib.generate_id())
        record["hash"] = record.get("hash", "'914d929db09834'")
        record["status"] = record.get("status", "1")
        lib.world.farms[record["id"]] = record
        query = (
            "INSERT INTO farms "
            "(id, clientid, env_id, hash, status) "
            "VALUES ({id}, {clientid}, {env_id}, {hash}, {status})"
        ).format(**record)
        db.execute(query)
Exemplo n.º 15
0
def fill_webhook_history(step):
    db = dbmanager.DB(lib.world.config["connections"]["mysql"])
    lib.world.webhook_history = {}
    for record in step.hashes:
        record["history_id"] = uuid.UUID(
            strip(record.get("history_id", "'%s'" % lib.generate_history_id()))
        ).hex.upper()
        record["webhook_id"] = uuid.UUID(
            strip(record.get("webhook_id", "'%s'" % lib.generate_webhook_id()))
        ).hex.upper()
        record["endpoint_id"] = uuid.UUID(
            strip(record.get("endpoint_id", "'%s'" % lib.generate_endpoint_id()))
        ).hex.upper()
        record["event_id"] = record.get("event_id", "%s" % lib.generate_id())
        record["status"] = record.get("status", 0)
        record["payload"] = record.get("payload", "'This is text'")
        query = (
            "INSERT INTO webhook_history "
            "(history_id, webhook_id, endpoint_id, event_id, status, payload) "
            "VALUES (UNHEX('{history_id}'), UNHEX('{webhook_id}'), UNHEX('{endpoint_id}'), "
            "{event_id}, {status}, {payload})"
        ).format(**record)
        db.execute(query)

        query = "SELECT * FROM webhook_history where history_id=UNHEX('%s')" % strip(record["webhook_id"]).replace(
            "-", ""
        )
        webhook = db.execute(query)[0]
        lib.world.webhook_history[strip(record["webhook_id"])] = webhook
Exemplo n.º 16
0
def fill_webhook_history(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    lib.world.webhook_history = {}
    for record in step.hashes:
        record['history_id'] = record.get(
            'history_id',
            "'%s'" % lib.generate_history_id()).replace('-', '').upper()
        record['webhook_id'] = record.get(
            'webhook_id',
            "'%s'" % lib.generate_webhook_id()).replace('-', '').upper()
        record['endpoint_id'] = record.get(
            'endpoint_id',
            "'%s'" % lib.generate_endpoint_id()).replace('-', '').upper()
        record['event_id'] = record.get('event_id', "'%s'" % lib.generate_id())
        record['status'] = record.get('status', 0)
        record['payload'] = record.get('payload', "'This is text'")
        query = (
            "INSERT INTO webhook_history "
            "(history_id, webhook_id, endpoint_id, event_id, status, payload) "
            "VALUES (UNHEX({history_id}), UNHEX({webhook_id}), UNHEX({endpoint_id}), "
            "{event_id}, {status}, {payload})").format(**record)
        db.execute(query)

        query = "SELECT * FROM webhook_history where history_id=UNHEX('%s')" \
                % strip(record['webhook_id']).replace('-', '')
        webhook = db.execute(query)[0]
        lib.world.webhook_history[strip(record['webhook_id'])] = webhook
Exemplo n.º 17
0
def fill_farms(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    lib.world.farms = {}
    for record in step.hashes:
        record['id'] = record.get('id', lib.generate_id())
        record['clientid'] = record.get('clientid', lib.generate_id())
        record['env_id'] = record.get('env_id', lib.generate_id())
        record['hash'] = record.get('hash', "'914d929db09834'")
        record['status'] = record.get('status', "1")
        lib.world.farms[record['id']] = record
        query = (
            "INSERT INTO farms "
            "(id, clientid, env_id, hash, status) "
            "VALUES ({id}, {clientid}, {env_id}, {hash}, {status})"
        ).format(**record)
        db.execute(query)
Exemplo n.º 18
0
def fill_farms(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    lib.world.farms = {}
    for record in step.hashes:
        record['id'] = record.get('id', lib.generate_id())
        record['clientid'] = record.get('clientid', lib.generate_id())
        record['env_id'] = record.get('env_id', lib.generate_id())
        record['hash'] = record.get('hash', "'914d929db09834'")
        record['status'] = record.get('status', "1")
        lib.world.farms[record['id']] = record
        query = (
            "INSERT INTO farms "
            "(id, clientid, env_id, hash, status) "
            "VALUES ({id}, {clientid}, {env_id}, {hash}, {status})").format(
                **record)
        db.execute(query)
Exemplo n.º 19
0
def fill_messages(step):
    db = dbmanager.DB(lib.world.config["connections"]["mysql"])
    lib.world.messages = {}
    for record in step.hashes:
        record["messageid"] = record.get("messageid", "'%s'" % str(uuid.uuid4()))
        record["status"] = record.get("status", 0)
        record["handle_attempts"] = record.get("handle_attempts", 0)
        record["dtlasthandleattempt"] = record.get(
            "dthandleattempt", "'%s'" % datetime.now().strftime("%Y-%m-%d %H:%M:%S")
        )
        record["message"] = record.get("message", "'Some message'")
        record["server_id"] = record.get("server_id", "'%s'" % lib.generate_server_id())
        record["type"] = record.get("type", "'out'")
        record["message_version"] = record.get("message_version", 2)
        record["message_name"] = record.get("message_name", "''")
        record["message_format"] = record.get("message_format", "'json'")
        record["event_id"] = record.get("event_id", "'%s'" % lib.generate_id())
        query = (
            "INSERT messages "
            "(messageid, status, handle_attempts, dtlasthandleattempt, message, "
            "server_id, type, message_version, message_name, message_format, event_id) "
            "VALUES ({messageid}, {status}, {handle_attempts}, {dtlasthandleattempt}, "
            "{message}, {server_id}, {type}, {message_version}, {message_name}, "
            "{message_format}, {event_id})"
        ).format(**record)
        db.execute(query)
        message = db.execute("SELECT * FROM messages where messageid={0}".format(record["messageid"].strip()))[0]
        lib.world.messages[message["messageid"]] = message
Exemplo n.º 20
0
def fill_messages(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    lib.world.messages = {}
    for record in step.hashes:
        record['messageid'] = record.get('messageid',
                                         "'%s'" % str(uuid.uuid4()))
        record['status'] = record.get('status', 0)
        record['handle_attempts'] = record.get('handle_attempts', 0)
        record['dtlasthandleattempt'] = record.get(
            'dthandleattempt',
            "'%s'" % datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
        record['message'] = "'Carrot'"
        record['server_id'] = record.get('server_id',
                                         "'%s'" % lib.generate_server_id())
        record['type'] = record.get('type', "'out'")
        record['message_version'] = record.get('message_version', 2)
        record['message_name'] = record.get('message_name', "''")
        record['message_format'] = record.get('message_format', "'json'")
        record['event_id'] = record.get('event_id', "'%s'" % lib.generate_id())
        query = (
            "INSERT messages "
            "(messageid, status, handle_attempts, dtlasthandleattempt, message, "
            "server_id, type, message_version, message_name, message_format, event_id) "
            "VALUES ({messageid}, {status}, {handle_attempts}, {dtlasthandleattempt}, "
            "{message}, {server_id}, {type}, {message_version}, {message_name}, "
            "{message_format}, {event_id})").format(**record)
        db.execute(query)
        message = db.execute(
            'SELECT * FROM messages where messageid={0}'.format(
                record['messageid'].strip()))[0]
        lib.world.messages[message['messageid']] = message
Exemplo n.º 21
0
def fill_webhook_history(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    lib.world.webhook_history = {}
    for record in step.hashes:
        record['history_id'] = uuid.UUID(strip(record.get('history_id', "'%s'" %
                                         lib.generate_history_id()))).hex.upper()
        record['webhook_id'] = uuid.UUID(strip(record.get('webhook_id', "'%s'" %
                                         lib.generate_webhook_id()))).hex.upper()
        record['endpoint_id'] = uuid.UUID(strip(record.get('endpoint_id', "'%s'" %
                                          lib.generate_endpoint_id()))).hex.upper()
        record['event_id'] = record.get('event_id', "%s" % lib.generate_id())
        record['status'] = record.get('status', 0)
        record['payload'] = record.get('payload', "'This is text'")
        query = (
            "INSERT INTO webhook_history "
            "(history_id, webhook_id, endpoint_id, event_id, status, payload) "
            "VALUES (UNHEX('{history_id}'), UNHEX('{webhook_id}'), UNHEX('{endpoint_id}'), "
            "{event_id}, {status}, {payload})"
        ).format(**record)
        db.execute(query)

        query = "SELECT * FROM webhook_history where history_id=UNHEX('%s')" \
                % strip(record['webhook_id']).replace('-', '')
        webhook = db.execute(query)[0]
        lib.world.webhook_history[strip(record['webhook_id'])] = webhook
Exemplo n.º 22
0
def fill_messages(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    lib.world.messages = {}
    for record in step.hashes:
        record['messageid'] = record.get('messageid', "'%s'" % str(uuid.uuid4()))
        record['status'] = record.get('status', 0)
        record['handle_attempts'] = record.get('handle_attempts', 0)
        record['dtlasthandleattempt'] = record.get(
            'dthandleattempt', "'%s'" % datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
        record['message'] = record.get('message', "'Some message'")
        record['server_id'] = record.get('server_id', "'%s'" % lib.generate_server_id())
        record['type'] = record.get('type', "'out'")
        record['message_version'] = record.get('message_version', 2)
        record['message_name'] = record.get('message_name', "''")
        record['message_format'] = record.get('message_format', "'json'")
        record['event_id'] = record.get('event_id', "'%s'" % lib.generate_id())
        query = (
            "INSERT messages "
            "(messageid, status, handle_attempts, dtlasthandleattempt, message, "
            "server_id, type, message_version, message_name, message_format, event_id) "
            "VALUES ({messageid}, {status}, {handle_attempts}, {dtlasthandleattempt}, "
            "{message}, {server_id}, {type}, {message_version}, {message_name}, "
            "{message_format}, {event_id})"
        ).format(**record)
        db.execute(query)
        message = db.execute(
            'SELECT * FROM messages where messageid={0}'.format(record['messageid'].strip()))[0]
        lib.world.messages[message['messageid']] = message
Exemplo n.º 23
0
def fill_servers_history(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    for record in step.hashes:
        record['server_id'] = record.get('server_id',
                                         "'%s'" % lib.generate_server_id())
        server = lib.world.servers.get(record['server_id'], {})
        record['cloud_server_id'] = record['cloud_server_id']
        record['farm_id'] = record.get('farm_id') or server.get(
            'farm_id') or lib.generate_id()
        record['farm_roleid'] = record.get('farm_roleid') or server.get(
            'farm_roleid') or lib.generate_id()
        record['client_id'] = record.get('client_id') or server.get(
            'client_id') or lib.generate_id()
        record['env_id'] = record.get('env_id') or server.get(
            'env_id') or lib.generate_id()
        record['platform'] = record.get('platform') or server.get(
            'platform') or random.choice(
                ["'ec2'", "'gce'", "'idcf'", "'openstack'"])
        record['cloud_location'] = record.get('cloud_location') or server.get(
            'cloud_location') or "'us-east-1'"
        record['instance_type_name'] = record.get(
            'instance_type_name') or server.get('instance_type_name') or 'NULL'
        record['type'] = record.get('type') or server.get('type') or 'NULL'
        record['server_index'] = record.get('server_index') or server.get(
            'index') or 1
        record['role_id'] = record.get('role_id') or lib.generate_id()
        record['project_id'] = uuid.UUID(
            strip(
                record.get(
                    'project_id',
                    '00000000-0000-0000-0000-000000000001'))).hex.upper()
        record['cc_id'] = uuid.UUID(
            strip(record.get(
                'cc_id', '00000000-0000-0000-0000-000000000001'))).hex.upper()
        query = (
            "INSERT INTO servers_history "
            "(server_id, cloud_server_id, farm_id, farm_roleid, role_id, client_id, env_id, "
            "platform, cloud_location, server_index, instance_type_name, type, project_id, cc_id) "
            "VALUES ({server_id}, {cloud_server_id}, {farm_id}, {farm_roleid}, {role_id}, "
            "{client_id}, {env_id}, {platform}, {cloud_location}, {server_index}, "
            "{instance_type_name}, {type}, UNHEX('{project_id}'), UNHEX('{cc_id}'))"
        ).format(**record)
        db.execute(query)
Exemplo n.º 24
0
def fill_clients(step):
    db = dbmanager.DB(lib.world.config["connections"]["mysql"])
    lib.world.clients = {}
    for record in step.hashes:
        record["id"] = record.get("id", lib.generate_id())
        record["status"] = record.get("status", "'Active'")
        query = ("INSERT INTO clients " "(id, status) " "VALUES ({id}, {status})").format(**record)
        db.execute(query)
        client = db.execute("SELECT * FROM clients where id=%s" % record["id"])[0]
        lib.world.clients[client["id"]] = client
Exemplo n.º 25
0
def fill_environment_cloud_credentials(step):
    db = dbmanager.DB(lib.world.config["connections"]["mysql"])
    lib.world.client_environments = {}
    for record in step.hashes:
        record["env_id"] = record.get("env_id", lib.generate_id())
        record["cloud"] = record.get("cloud", random.choice(["'ec2'", "'gce'", "'idcf'", "'openstack'"]))
        record["cloud_credentials_id"] = record.get("cloud_credentials_id", lib.generate_cloud_credentials_id())
        query = (
            "INSERT INTO environment_cloud_credentials "
            "(env_id, cloud, cloud_credentials_id) "
            "VALUES ({env_id}, {cloud}, {cloud_credentials_id})"
        ).format(**record)
        db.execute(query)
Exemplo n.º 26
0
def fill_clients(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    lib.world.clients = {}
    for record in step.hashes:
        record['id'] = record.get('id', lib.generate_id())
        record['status'] = record.get('status', "'Active'")
        query = ("INSERT INTO clients "
                 "(id, status) "
                 "VALUES ({id}, {status})").format(**record)
        db.execute(query)
        client = db.execute('SELECT * FROM clients where id=%s' %
                            record['id'])[0]
        lib.world.clients[client['id']] = client
Exemplo n.º 27
0
def db_has_messages(step, count):
    records = []
    for i in range(int(count)):
        record = {}

        # messages
        record['messageid'] = "'%s'" % str(uuid.uuid4())
        record['status'] = 0
        record['handle_attempts'] = 0
        record['dtlasthandleattempt'] = "'%s'" % datetime.now().strftime('%Y-%m-%d %H:%M:%S')
        record['message'] = "'Carrot'"
        record['server_id'] = "'%s'" % lib.generate_server_id()
        record['type'] = "'out'"
        record['message_version'] = 2
        record['message_name'] = "''"
        record['message_format'] = "'json'"
        record['event_id'] = "'%s'" % lib.generate_id()

        # servers
        record['farm_id'] = lib.generate_id()
        record['farm_roleid'] = lib.generate_id()
        record['client_id'] = lib.generate_id()
        record['env_id'] = lib.generate_id()
        record['role_id'] = lib.generate_id()
        record['platform'] = random.choice(["'ec2'", "'gce'", "'idcf'", "'openstack'"])
        record['status'] = "'running'"
        record['remote_ip'] = "'127.0.0.1'"
        record['local_ip'] = "'127.0.0.1'"
        record['index'] = 1
        record['os_type'] = "'linux'"

        records.append(record)

    step.hashes = records

    fill_messages(step)
    fill_servers(step)

    for record in step.hashes:
        # server_properties
        record['name'] = "'scalarizr.ctrl_port'"
        record['value'] = random.choice(["'8010'",
                                         "'8011'",
                                         "'8012'",
                                         "'8013'",
                                         "'8014'",
                                         "'8015'",
                                         "'8016'",
                                         "'8017'",
                                         "'8018'",
                                         "'8019'"])
    fill_server_properties(step)

    for record in step.hashes:
        # server_properties
        record['name'] = "'scalarizr.key'"
        record['value'] = "'{0}'".format(scalrpytests.scalarizr_key)
    fill_server_properties(step)
Exemplo n.º 28
0
def fill_clients(step):
    db = dbmanager.DB(lib.world.config['connections']['mysql'])
    lib.world.clients = {}
    for record in step.hashes:
        record['id'] = record.get('id', lib.generate_id())
        record['status'] = record.get('status', "'Active'")
        query = (
            "INSERT INTO clients "
            "(id, status) "
            "VALUES ({id}, {status})"
        ).format(**record)
        db.execute(query)
        client = db.execute('SELECT * FROM clients where id=%s' % record['id'])[0]
        lib.world.clients[client['id']] = client
Exemplo n.º 29
0
def db_has_messages(step, count):
    records = []
    for i in range(int(count)):
        record = {}

        # messages
        record['messageid'] = "'%s'" % str(uuid.uuid4())
        record['status'] = 0
        record['handle_attempts'] = 0
        record['dtlasthandleattempt'] = "'%s'" % datetime.now().strftime(
            '%Y-%m-%d %H:%M:%S')
        record['message'] = "'Carrot'"
        record['server_id'] = "'%s'" % lib.generate_server_id()
        record['type'] = "'out'"
        record['message_version'] = 2
        record['message_name'] = "''"
        record['message_format'] = "'json'"
        record['event_id'] = "'%s'" % lib.generate_id()

        # servers
        record['farm_id'] = lib.generate_id()
        record['farm_roleid'] = lib.generate_id()
        record['client_id'] = lib.generate_id()
        record['env_id'] = lib.generate_id()
        record['role_id'] = lib.generate_id()
        record['platform'] = random.choice(
            ["'ec2'", "'gce'", "'idcf'", "'openstack'"])
        record['status'] = "'running'"
        record['remote_ip'] = "'127.0.0.1'"
        record['local_ip'] = "'127.0.0.1'"
        record['index'] = 1
        record['os_type'] = "'linux'"

        records.append(record)

    step.hashes = records

    fill_messages(step)
    fill_servers(step)

    for record in step.hashes:
        # server_properties
        record['name'] = "'scalarizr.ctrl_port'"
        record['value'] = random.choice([
            "'8010'", "'8011'", "'8012'", "'8013'", "'8014'", "'8015'",
            "'8016'", "'8017'", "'8018'", "'8019'"
        ])
    fill_server_properties(step)

    for record in step.hashes:
        # server_properties
        record['name'] = "'scalarizr.key'"
        record['value'] = "'{0}'".format(scalrpytests.scalarizr_key)
    fill_server_properties(step)