Example #1
0
def event_handler():
    """Handle POST requests by Github Webhooks
    """
    if request.headers.get('X-GitHub-Event') == 'release':
        repository = request.json.get('repository')
        release = request.json.get('release')
        m = Metadata(repository, release)
        entry = m.getMetadata()
        if entry:
            db = get_db()
            print entry
            db.execute(
                '''
                INSERT INTO plugins
                (name, version, version_major, version_minor, version_revision,
                description, qgis_minimum_version, qgis_maximum_version,
                homepage, file_name, author_name, download_url, uploaded_by,
                create_date, update_date, experimental)
                VALUES
                (:name, :version, :version_major, :version_minor, :version_revision,
                :description, :qgis_minimum_version, :qgis_maximum_version,
                :homepage, :file_name, :author_name, :download_url, :uploaded_by,
                :create_date, :update_date, :experimental)
                ''', entry)
            db.commit()
        else:
            return "metadata invalid"
        return "received valid request"
    else:
        return "invalid request"