Exemplo n.º 1
0
def log_tree_append():
    data = request.get_json(silent=True)
    try:
        node = append(data)
    except:
        return {"status": "Could not append"}, 400
    return {"status": "ok", "node": node.to_json()}, 200
def rebuilder_revoke():
    data = request.get_json(silent=True)
    if not data.get("hash"):
        return {"status": "Missing hash field"}, 400
    if not data.get("reason"):
        return {"status": "Missing reason field"}, 400

    revoked_node = (db.session.query(Node).filter(
        Node.hash == data["hash"])).first()
    if revoked_node.type != "data":
        return {"status": "Can't revoke level node"}, 400
    if revoked_node.data["type"] != "inclusion":
        return {"status": "Needs to be a inclusion node"}, 400
    j = {
        "type": "revoke",
        "package": revoked_node.data["package"],
        "version": revoked_node.data["version"],
        "hash": data["hash"],
        "reason": data["reason"]
    }
    try:
        node = append(j)
    except:
        return {"status": "Could not append"}, 400
    return {"status": "ok", "node": node.to_json()}, 200
Exemplo n.º 3
0
def new_build():
    metadata = request.files['metadata']
    buildinfo = request.files['buildinfo']
    source = None
    version = None
    for paragraph in Deb822.iter_paragraphs(buildinfo):
        for item in paragraph.items():
            if item[0] == 'Source':
                source = item[1]
            if item[0] == 'Version':
                version = item[1]
    buildinfo.seek(0)
    id = uuid.uuid4()
    pkg = db.get_or_create(Package, name=source)
    ver = db.get_or_create(Version, version=version, package=pkg)
    db.get_or_create(LinkMetadata, version=ver, text=metadata.read(), uuid=id)
    db.get_or_create(Buildinfo, version=ver, text=buildinfo.read(), uuid=id)
    db.session.commit()
    j = {
        "type": "inclusion",
        "package": source,
        "version": source,
        "linkmetadata": metadata.read(),
        "buildinfo": buildinfo.read()
    }
    try:
        node = append(j)
    except:
        return {"status": "Could not append"}, 400
    return {"status": "ok", "node": node.to_json()}, 200
    return
Exemplo n.º 4
0
def log_new():
    for i in range(1, 11):
        data = {"name": f"Name-{i}", "data": f"Datablock-{i}"}
        node = append(data)
        print(f"Created node {i}")
    return "Ok?"