No description
This repository has been archived on 2020-03-24. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
2013-12-24 14:23:53 -05:00
art Add a logo for quay. Make the navbar a little friendlier to smaller devices. 2013-10-13 16:13:50 -04:00
auth Allow a request with invalid basic auth to still be considered anonymous, rather than throwing a 401. 2013-12-19 15:18:14 -05:00
buildserver Make sure the daemon starts up in the right directory to access the certs file. 2013-10-29 19:59:29 -04:00
certs Fix the stagig unified cert. 2013-10-29 19:32:15 -04:00
data Merge the plans and mark many as deprecated. Fix a bunch of pylint errors. 2013-12-19 17:06:04 -05:00
endpoints Prevent a user from subscribing to a deprecated plan through the API. 2013-12-23 14:50:01 -05:00
screenshots Add a new screenshot for the logs view. 2013-12-02 22:37:00 -05:00
static Distinguish the discontinued plans. 2013-12-24 14:23:53 -05:00
storage Clobbered the s3_bucket variable, oops. 2013-12-03 16:43:56 -08:00
templates Don't load olark if the host doesn't specify prod. 2013-12-18 19:41:22 -05:00
test Fix date time parameter on log_action to properly use the current time (for reals) 2013-12-03 16:48:44 -05:00
tools Add a breakdown by plan type to the revenue tool. 2013-12-18 21:02:06 -05:00
util Update the checksums to a version that supports empty layers. 2013-12-06 14:23:26 -05:00
workers Make the worker post json. Add a retry timeout after an incompletel queue item is processed. Submit webhook jobs to the queue on a successful push. 2013-11-16 15:05:26 -05:00
.gitignore Remove left over config from running on elastic beanstalk. 2013-10-16 17:52:19 -04:00
app.py Make the app config more powerful in terms of injecting fake dependencies. Refactor the tests to use metaclasses and to actually all run. 2013-11-06 23:21:12 -05:00
application.py Add receipt/invoice email support and option to Quay 2013-11-15 14:42:31 -05:00
config.py Fix some tests. 2013-12-02 16:16:45 -05:00
initdb.py Fix date time parameter on log_action to properly use the current time (for reals) 2013-12-03 16:48:44 -05:00
nginx-staging.conf Move the client body buffering over to /mnt (non-ebs). 2013-12-18 23:32:31 +00:00
nginx.conf Move the client body buffering over to /mnt (non-ebs). 2013-12-18 23:32:31 +00:00
README.md Move the client body buffering over to /mnt (non-ebs). 2013-12-18 23:32:31 +00:00
requirements-nover.txt Switch from eventlet to gevent, it seems to work better with flask static files. 2013-11-18 18:42:02 -05:00
requirements.txt Switch from eventlet to gevent, it seems to work better with flask static files. 2013-11-18 18:42:02 -05:00

to prepare a new host:

sudo apt-get install software-properties-common
sudo apt-add-repository -y ppa:nginx/stable
sudo apt-get update
sudo apt-get install -y git python-virtualenv python-dev phantomjs libjpeg8 libjpeg62-dev libfreetype6 libfreetype6-dev libevent-dev
sudo apt-get install -y nginx-full

check out the code:

git clone https://bitbucket.org/yackob03/quay.git
virtualenv --distribute venv
source venv/bin/activate
pip install -r requirements.txt

running:

sudo mkdir -p /mnt/nginx/ && sudo nginx -c `pwd`/nginx.conf
STACK=prod gunicorn -D --workers 4 -b unix:/tmp/gunicorn.sock --worker-class gevent -t 2000 application:application

start the workers:

STACK=prod python -m workers.diffsworker -D
STACK=prod python -m workers.dockerfilebuild -D
STACK=prod python -m workers.webhookworker -D

bouncing the servers:

sudo kill -HUP <pid of nginx>
kill -HUP <pid of gunicorn>

kill <pids of worker daemons>
restart daemons

running the tests:

STACK=test python -m unittest discover

generating screenshots:

cd screenshots
casperjs screenshots.js --d