Skip to main content

Periodically capture external data relating to GitHub hosted Open Source libraries

Project description

Travis Badge

Quickly and easily store data about your open source projects on GitHub and various Package Managers.

Announcements

All updates to this project is documented in our CHANGELOG.

Installation

Environment Variables

First, get your free SendGrid account here.

Next, update your environment with your SENDGRID_API_KEY.

Initial Setup

echo "export SENDGRID_API_KEY='YOUR_API_KEY'" > sendgrid.env
echo "sendgrid.env" >> .gitignore
source ./sendgrid.env
git clone https://github.com/sendgrid/open-source-library-data-collector.git
cd sendgrid-open-source-library-external-data
virtualenv venv
cp .env_sample .env

Update your settings in .env

mysql -u USERNAME -p -e "CREATE DATABASE IF NOT EXISTS open-source-library-data-collector";
mysql -u USERNAME -p open-source-external-library-data < db/data_schema.sql
cp config_sample.yml config.yml

Update the settings in config.yml

source venv/bin/activate
pip install -r requirements.txt

Update the code in package_managers.py. The functions update_package_manager_data and update_db was customized for our particular needs. You will want to either subclass those functions in your own application or modify it to suit your needs. We will remove these customizations in a future release. Here is the GitHub issue for reference.

To run:

source venv/bin/activate
python app.py

Dependencies

Heroku Deploy

Deploy

heroku login
heroku create
heroku addons:create cleardb:ignite

Access the cleardb DB and create the tables in db/data_schema.sql

heroku config:add ENV=prod
heroku config:add GITHUB_TOKEN=<<your_github_token>>
heroku config:add SENDGRID_API_KEY=<<your_sendgrid_api_key>>
heroku addons:create scheduler:standard

Configure the schedular addon in your Heroku dashboard to run python app.py at your desired frequency.

Test by running heroku run worker

Roadmap

If you are interested in the future direction of this project, please take a look at our milestones. We would love to hear your feedback.

How to Contribute

We encourage contribution to our projects, please see our CONTRIBUTING guide for details.

Quick links:

About

open-source-library-data-collector is guided and supported by the SendGrid Developer Experience Team.

open-source-library-data-collector is maintained and funded by SendGrid, Inc. The names and logos for open-source-library-data-collector are trademarks of SendGrid, Inc.

SendGrid Logo

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Built Distribution

File details

Details for the file open_source_library_data_collector-1.1.0.tar.gz.

File metadata

File hashes

Hashes for open_source_library_data_collector-1.1.0.tar.gz
Algorithm Hash digest
SHA256 a3b3b650321181c4a188d5e241d141c7bc80843dd55443ebd62ee5c52ccf0e9f
MD5 7d4e56af0707f9122ec0db5d69f2aff5
BLAKE2b-256 02d6096c14dad1474ebecce8b2ed1e2cd1a0718463e7bfe8fb6b841956fa6f1f

See more details on using hashes here.

File details

Details for the file open_source_library_data_collector-1.1.0-py2-none-any.whl.

File metadata

File hashes

Hashes for open_source_library_data_collector-1.1.0-py2-none-any.whl
Algorithm Hash digest
SHA256 d396b1d74f04e5364dffb716da43a162551ef0cba7d958ac110fc5485c8cd4aa
MD5 d6181394ba98d77497dfed10ebbe8a2c
BLAKE2b-256 a2f19b8f8dd6bf90506f22fef7263844220125eb7a4504ab70fb7a6ebb006f56

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page