def get_versions(data_type, module=None):
    """Get a list of all versions available.

    Specify a module to see versions associated with that module.
    """
    versions = set()
    if module is None:
        # List all RAT versions
        rows = database.view("_design/proddata/_view/data_by_mod_pass_sr",
                             reduce=True,
                             group_level=3,
                             startkey=[data_type],
                             endkey=[data_type, {}])
        for row in rows:
            versions.add(row["key"][2])
    elif type(module) == list and len(module) == 1:
        # List only versions for a given module
        rows = database.view("_design/proddata/_view/%s_by_mod_pass_sr",
                             reduce=True,
                             group_level=3,
                             startkey=[data_type],
                             endkey=[data_type, {}])
        for row in rows:
            if str(row["key"][1]) == module[0]:
                versions.add(row["key"][2])
    else:
        raise Exception("Must only provide one module name.")
    return versions
def get_labels(data_type, module=None):
    """Get a list of all labels available

    Specify a module to see versions associated with that module.
    """
    labels = set()
    if module is None:
        # List any labels
        rows = database.view("_design/proddata/_view/data_by_label",
                             reduce=True,
                             group_level=2,
                             startkey=[data_type],
                             endkey=[data_type, {}])
        for row in rows:
            lb = row["key"][1]
            if type(lb) == list:
                lb = lb[0]
            labels.add(lb)
    elif type(module) == list and len(module) == 1:
        # List labels only for a given module
        rows = database.view("_design/proddata/_view/data_by_label",
                             reduce=True,
                             group_level=3,
                             startkey=[data_type],
                             endkey=[data_type, {}])
        for row in rows:
            if str(row["key"][2]) == module[0]:
                lb = row["key"][1]
                if type(lb) == list:
                    lb = lb[0]
                labels.add(lb)
    else:
        raise Exception("Must only provide one module name.")
    return labels
Exemple #3
0
def generate_info_by_version(version, data_type, modules, run_range, fields):
    '''Generates file information by production labels
    '''
    names = []
    info = [[] for f in fields]
    output_list = []
    for i, module in enumerate(modules):

        print "Generating lists, %d of %d" % (i, len(modules))
        startkey = [data_type, module, version]
        endkey = [data_type, module, version]
        if run_range:
            startkey.append(run_range[0])
            endkey.append(run_range[1] + 1)
        else:
            # No need to change the startkey
            endkey.append({})
        rows = database.view("_design/proddata/_view/data_by_mod_pass_sr",
                             reduce=False,
                             include_docs=True,
                             startkey=startkey,
                             endkey=endkey)
        for row in rows:
            # We only want the sub run from the key...
            sub_run = row['key'][-1]
            name = row['value'][0]
            values = get_fields_from_doc(row['doc'], sub_run, fields)
            output_list.append([name] + values)
    return output_list
def get_list_by_module_version(data_type, module, rat_version, run_range):
    """Get a list of files for the settings given.
    """
    names = []
    sizes = []
    guids = []
    adlers = []
    rows = database.view("_design/proddata/_view/data_by_mod_pass_sr",
                         startkey=[data_type, module, rat_version],
                         endkey=[data_type, module, rat_version, {}],
                         reduce=False)
    for row in rows:
        if copy_type == "GUID":
            if not row["value"][2] or row["value"][2] == "":
                print "Cannot get file %s, no GUID" % (row["value"][0])
                continue
        else:
            if len(row["value"][4]) == 0 or row["value"][4] == "":
                print "Cannot get file %s, no SURL" % row["value"][0]
                continue
        # Run range is after pass in the key, have to filter here rather than on server
        if run_range:
            if row["key"][4] < run_range[0] or row["key"][4] > run_range[1]:
                continue
        names.append(row["value"][0])
        sizes.append(row["value"][1])
        if copy_type == "GUID":
            guids.append(row["value"][2])
        else:
            guids.append(grid.get_closest_copy(server_list, row["value"][4]))
        adlers.append(row["value"][5])
    return names, sizes, guids, adlers
Exemple #5
0
def getTable(self, textbox):

    global table

    table = textbox.get('1.0', 'end-1c')
    output = postgres.view(table)
    self.console.set(output)
def get_modules(data_type, label=None, version=None):
    """Get a list of all modules available

    Only one of label or version can be specified (or neither).
    """
    if label is not None and version is not None:
        raise Exception("May only specify label OR version")
    modules = set()
    if label is not None:
        # Only modules for a given label
        rows = database.view("_design/proddata/_view/data_by_label" %
                             (data_type),
                             reduce=True,
                             group_level=3,
                             startkey=[data_type, label],
                             endkey=[data_type, label, {}])
        for row in rows:
            modules.add(row["key"][2])
    elif version is not None:
        # Only modules for a given RAT version
        rows = database.view("_design/proddata/_view/data_by_mod_pass_sr",
                             reduce=True,
                             group_level=3,
                             startkey=[data_type],
                             endkey=[data_type, {}])
        for row in rows:
            if str(row["key"][2]) == version:
                modules.add(row["key"][1])
    else:
        # Any and all modules
        rows = database.view("_design/proddata/_view/data_by_mod_pass_sr",
                             reduce=True,
                             group_level=2,
                             startkey=[data_type],
                             endkey=[data_type, {}])
        for row in rows:
            modules.add(row["key"][1])
    return modules
Exemple #7
0
def suggests():
    for res in list(database.view()):
        word_row = str(res)
        new = ""
        word_row_indexed = word_row.rindex('\'', 1)
        words_list.append(word_row[2:word_row_indexed])
    sug = get_close_matches(word.get(), words_list, n=1)
    entry2.delete(0, END)
    entry2.insert(END, sug)
    list1.delete(0, END)
    for x in sug:
        new += x
    for res in database.search(new):
        list1.insert(END, res)
def get_module_list_version(data_type, rat_version=None):
    """Get a list of available modules.
    """
    rows = database.view("_design/proddata/_view/data_by_mod_pass_sr",
                         reduce=True,
                         group=True,
                         group_level=3,
                         startkey=[data_type],
                         endkey=[data_type, {}])
    module_list = []
    for row in rows:
        if rat_version and row["key"][2] != unicode(rat_version):
            continue
        module_list.append(row["key"][1])
    return module_list
def get_module_list_label(data_type, label=None):
    """Get a list of available modules.                                                                                                            
    """
    rows = database.view("_design/proddata/_view/data_by_label",
                         reduce=True,
                         group=True,
                         group_level=3,
                         startkey=[data_type],
                         endkey=[data_type, {}])
    module_list = []
    for row in rows:
        if label and row["key"][0] != unicode(label):
            continue
        module_list.append(row["key"][1])
    return module_list
def generate_list_from_exactly(data_type, exactly):
    '''Gets a list of data from a list of module,run,pass (exactly).'''
    names = []
    sizes = []
    guids = []
    adlers = []
    for module, run, passno in exactly:
        startkey = [data_type, module, run]
        endkey = [data_type, module, run, {}]
        rows = database.view("_design/proddata/_view/data_by_mod_run",
                             startkey=startkey,
                             endkey=endkey,
                             reduce=False)
        n, s, g, a = rows_to_list(rows, None, passno, None)
        names += n
        sizes += s
        guids += g
        adlers += a
    return names, sizes, guids, adlers
def get_list_by_module(data_type,
                       module,
                       run_range,
                       run_list=None,
                       all_passes=True,
                       ratdb_tag=None):
    """Get a list of files for the settings given.
    """
    if run_range:
        startkey = [data_type, module, run_range[0]]
        endkey = [data_type, module, run_range[1]]
    else:
        startkey = [data_type, module]
        endkey = [data_type, module, {}]
    rows = database.view("_design/proddata/_view/data_by_mod_run",
                         startkey=startkey,
                         endkey=endkey,
                         reduce=False)

    return rows_to_list(rows, run_list, all_passes, ratdb_tag)
def get_list_by_label_module(data_type, label, module, run_range):
    """Get a list of files for the settings given

    If no module give, return all modules.
    """
    names = []
    sizes = []
    guids = []
    adlers = []
    startkey = [data_type, label, module]
    endkey = [data_type, label, module, {}]
    if run_range:
        startkey = [data_type, label, module, run_range[0]]
        endkey = [data_type, label, module,
                  run_range[1] + 1]  # range inclusive
    rows = database.view("_design/proddata/_view/data_by_label",
                         startkey=startkey,
                         endkey=endkey,
                         reduce=False)
    for row in rows:
        if copy_type == "GUID":
            if not row["value"][1] or row["value"][1] == "":
                print "Cannot get file %s, no GUID" % (row["value"][0])
                continue
        else:
            if len(row["value"][4]) == 0 or row["value"][4] == "":
                print "Cannot get file %s, no SURL" % row["value"][0]
                continue
        names.append(row["value"][0])
        if copy_type == "GUID":
            guids.append(row["value"][1])
        else:
            guids.append(grid.get_closest_copy(server_list, row["value"][4]))
        adlers.append(row["value"][2])
        sizes.append(row["value"][3])
    return names, sizes, guids, adlers
Exemple #13
0
def show():
    list1.delete(0, END)
    for i in database.view():
        list1.insert(END, i)
Exemple #14
0
def ViewList():
    rowid = 0
    tree.delete(*tree.get_children())
    for row in database.view():
        tree.insert("", rowid, text='', values=row)
        rowid += 1
Exemple #15
0
 def getTaskList(self):
     self.clearTableList()
     for row in database.view():
         self.addRow(list(map(str, row)))
Exemple #16
0
 def view_command():
     games_list.delete(0, END)
     for row in database.view('games'):
         display_info = (row[0], row[1])
         games_list.insert(END, display_info)
def vstore_prompt() -> int:
    return prompt(vstore_prompt, view("store"))
Exemple #18
0
def view_command():
   list_.delete(0, tk.END)
   for row in database.view():
      list_.insert(tk.END, row)
Exemple #19
0
def view_command():
    list.delete(0,END)
    for row in database.view():
        list.insert(END,row)
def view_history():
    list1.delete(0, END)
    for row in database.view():
        list1.insert(END, row)
Exemple #21
0
import database
a = database.view()
print(a)
#database.delete()
def vpharm_prompt() -> int:
    return prompt(vpharm_prompt, view("pharma"))
Exemple #23
0
 def view_funct():
     self.Scrolledlistbox1.delete(0, END)
     for line in database.view():
         self.Scrolledlistbox1.insert(END, line)