Пример #1
0
def submit(
    submitter,
    source,
    group=None,
    filename=None,
    suffix=None,
    cves=[],
    metadata={},
    entry=None,
    approval="REQUESTED",
    coordinates=None,
):
    config.LOGGER.info("Submitting: %s" % (", ".join(["%s:%s" % (k, v) for (k, v) in locals().items()])))
    submission = Submission()
    submission.source = source
    submission.group = group
    submission.filename = filename
    if suffix:
        submission.format = suffix.title()
    submission.cves = cves
    if entry and entry.cves:
        for cve in entry.cves:
            if cve not in entry.cves:
                submission.cves.append(cve)
    submission.metadata = metadata
    submission.submitter = submitter
    if entry:
        submission.entry = entry
    submission.approval = approval
    submission.coordinates = coordinates

    submission.validate()
    submission.save()

    set_hash(submission)

    # ensure index stats are refreshed
    indexmon.refresh()