示例#1
0
def add_backend(uri,
                title,
                provider,
                apikey,
                apisecret,
                apiurl=None,
                tenant_name=None,
                cookie=None,
                csrf=None):
    payload = {
        'title': title,
        'provider': provider,
        'apikey': apikey,
        'apisecret': apisecret,
        'apiurl': apiurl,
        'tenant_name': tenant_name
    }

    req = MyRequests(uri=uri + '/backends',
                     data=json.dumps(payload),
                     cookie=cookie,
                     csrf=csrf)
    response = req.post()
    assert response.ok, u'\nGot %d Response Status: %s \n%s' % (
        response.status_code, response.reason, response.text)

    try:
        params = response.json()
        return params
    except Exception as e:
        assert False, u'Exception: %s' % e
示例#2
0
def create_machine(uri, backend_id, key_id, name, location, image, size,
                   script=None, disk=None, image_extra=None, cookie=None,
                   csrf=None):
    payload = {
        #'backend': backend_id,
        'key': key_id,
        'name': name,
        'location': location,
        'image': image,
        'size': size,
        'script': script,
        'disk': disk,
        'image_extra': image_extra
    }
    req = MyRequests(uri=uri+"/backends/"+backend_id+"/machines",
                     cookie=cookie, data=json.dumps(payload), timeout=600,
                     csrf=csrf)
    response = req.post()
    assert response.ok, u'\nGot %d Response Status: %s \n%s' % (response.status_code, response.reason, response.text)

    try:
        params = response.json()
        print "Created machine with Name: %s and id %s a" % (params['name'], params['id'])
        return params
    except Exception as e:
        assert False, u'Exception: %s' % e
示例#3
0
def delete_backend(uri, backend_id, cookie=None, csrf=None):
    req = MyRequests(uri=uri + '/backends/' + backend_id,
                     cookie=cookie,
                     csrf=csrf)
    response = req.delete()
    assert response.ok, u'\nGot %d Response Status: %s \n%s' % (
        response.status_code, response.reason, response.text)

    print "Deleted Backend with id: %s" % backend_id
示例#4
0
def edit_key(uri, key_id, new_name, cookie=None, csrf=None):
    payload = {'new_id': new_name}
    req = MyRequests(uri=uri + "/keys/" + key_id,
                     data=json.dumps(payload),
                     cookie=cookie,
                     csrf=csrf)
    response = req.put()
    assert response.ok, u'\nGot %d Response Status: %s \n%s' % (
        response.status_code, response.reason, response.text)
示例#5
0
def stop_machine(uri, backend_id, machine_id, cookie=None, csrf=None):
    payload = {
        'action': 'stop'
    }
    req = MyRequests(uri=uri+"/backends/"+backend_id+"/machines/"+machine_id,
                     data=json.dumps(payload), cookie=cookie, csrf=csrf)
    response = req.post()
    assert response.ok, u'\nGot %d Response Status: %s \n%s' % (response.status_code, response.reason, response.text)
    print "Stopped machine with id: %s" % machine_id
示例#6
0
def rename_backend(uri, backend_id, new_name, cookie=None, csrf=None):
    payload = {'new_name': new_name}

    req = MyRequests(uri=uri + "/backends/" + backend_id,
                     data=json.dumps(payload),
                     cookie=cookie,
                     csrf=csrf)
    response = req.put()
    assert response.ok, u'\nGot %d Response Status: %s \n%s' % (
        response.status_code, response.reason, response.text)
示例#7
0
def list_machines(uri, backend_id, cookie=None, csrf=None):
    req = MyRequests(uri=uri+'/backends/'+backend_id+"/machines",
                     cookie=cookie, csrf=csrf)
    response = req.get()
    assert response.ok, u'\nGot %d Response Status: %s \n%s' % (response.status_code, response.reason, response.text)
    try:
        params = response.json()
        return params
    except Exception as e:
        assert False, u'Exception: %s' % e
示例#8
0
def list_images(uri, backend_id, search_term=None, cookie=None, csrf=None):
    payload = {'search_term': search_term}
    if not search_term:
        req = MyRequests(uri=uri + "/backends/" + backend_id + "/images",
                         cookie=cookie,
                         csrf=csrf)
        response = req.post()
    else:
        req = MyRequests(uri=uri + "/backends/" + backend_id + "/images",
                         data=json.dumps(payload),
                         cookie=cookie,
                         csrf=csrf)
        response = req.get()
    assert response.ok, u'\nGot %d Response Status: %s \n%s' % (
        response.status_code, response.reason, response.text)

    try:
        params = response.json()
        return params
    except Exception as e:
        assert False, u'Exception: %s' % e
示例#9
0
def generate_keypair(uri, cookie=None, csrf=None):
    req = MyRequests(uri=uri + "/keys", cookie=cookie, csrf=csrf)
    response = req.post()
    assert response.ok, u'\nGot %d Response Status: %s \n%s' % (
        response.status_code, response.reason, response.text)

    try:
        params = response.json()
        print params
        return params
    except Exception as e:
        assert False, u'Exception: %s' % e
示例#10
0
def delete_key(uri, key_id, cookie=None, csrf=None):
    req = MyRequests(uri=uri + "/keys/" + key_id, cookie=cookie, csrf=csrf)
    response = req.delete()
    assert response.ok, u'\nGot %d Response Status: %s \n%s' % (
        response.status_code, response.reason, response.text)

    try:
        params = response.json()
        print "Deleted Key: %s" % key_id
        return params
    except Exception as e:
        assert False, u'Exception: %s' % e
示例#11
0
def start_machine(uri, backend_id, machine_id, cookie=None, csrf=None):
    sleep(30)
    payload = {
        'action': 'start'
    }
    req = MyRequests(uri=uri+"/backends/"+backend_id+"/machines/"+machine_id,
                     data=json.dumps(payload), cookie=cookie, csrf=csrf)
    response = req.post()
    if response.status_code == 503:
        print "Machine state is not yet ready to be started"
        return
    assert response.ok, u'\nGot %d Response Status: %s \n%s' % (response.status_code, response.reason, response.text)
    print "Started machine with id: %s" % machine_id
示例#12
0
def supported_providers(uri, cookie=None, csrf=None):
    req = MyRequests(uri=uri + '/providers', cookie=cookie, csrf=csrf)
    response = req.get()
    assert response.ok, u'\nGot %d Response Status: %s \n%s' % (
        response.status_code, response.reason, response.text)

    try:
        params = response.json()
    except Exception as e:
        assert False, u'Exception: %s' % e

    SUPPORTED_PROVIDERS = params['supported_providers']
    print '\nSupported providers:'
    return SUPPORTED_PROVIDERS
示例#13
0
def get_public_key(uri, key_id, cookie=None, csrf=None):
    req = MyRequests(uri=uri + "/keys/" + key_id + "/public",
                     cookie=cookie,
                     csrf=csrf)
    response = req.get()
    assert response.ok, u'\nGot %d Response Status: %s \n%s' % (
        response.status_code, response.reason, response.text)

    try:
        params = response.json()
        return params
    except Exception as e:
        print response.text
        assert False, u'Exception: %s' % e
示例#14
0
def add_key(uri, name, private, cookie=None, csrf=None):
    payload = {'id': name, 'priv': private}
    req = MyRequests(uri=uri + "/keys",
                     cookie=cookie,
                     data=json.dumps(payload),
                     csrf=csrf)
    response = req.put()
    assert response.ok, u'\nGot %d Response Status: %s \n%s' % (
        response.status_code, response.reason, response.text)

    try:
        params = response.json()
        return params
    except Exception as e:
        assert False, u'Exception: %s' % e