to build and upload quay to quay: ``` curl -s https://get.docker.io/ubuntu/ | sudo sh sudo apt-get update && sudo apt-get install -y git git clone https://github.com/coreos-inc/quay.git cd quay rm Dockerfile ln -s Dockerfile.web Dockerfile sudo docker build -t quay.io/quay/quay . sudo docker push quay.io/quay/quay ``` to prepare a new host: Deploy cloud-init script from quayconfig/cloudconfig/webserver.yaml or ``` curl -s https://get.docker.io/ubuntu/ | sudo sh sudo apt-get update && sudo apt-get install -y git git clone https://github.com/DevTable/gantryd.git cd gantryd cat requirements.system | xargs sudo apt-get install -y virtualenv --distribute venv venv/bin/pip install -r requirements.txt sudo docker login -u 'quay+deploy' -e notused staging.quay.io ``` start the quay processes: ``` cd ~ git clone https://github.com/coreos-inc/quay.git sudo docker pull staging.quay.io/quay/quay cd ~/gantryd sudo venv/bin/python gantry.py ../quayconfig/production/gantry.json update quay ``` to build and upload the builder to quay ``` curl -s https://get.docker.io/ubuntu/ | sudo sh sudo apt-get update && sudo apt-get install -y git git clone git clone https://github.com/coreos-inc/quay.git cd quay rm Dockerfile ln -s Dockerfile.buildworker Dockerfile sudo docker build -t quay.io/quay/builder . sudo docker push quay.io/quay/builder ``` to run the builder from a fresh 14.04 server: Deploy cloud-init script from quayconfig/cloudconfig/builder.yaml or ``` sudo apt-get update && sudo apt-get install -y git lxc linux-image-extra-`uname -r` curl -s https://get.docker.io/ubuntu/ | sudo sh git clone https://github.com/DevTable/gantryd.git cd gantryd cat requirements.system | xargs sudo apt-get install -y virtualenv --distribute venv venv/bin/pip install -r requirements.txt sudo docker login -u 'quay+deploy' -e notused quay.io ``` start the worker ``` cd ~ git clone https://github.com/coreos-inc/quay.git sudo docker pull quay.io/quay/builder cd ~/gantryd sudo venv/bin/python gantry.py ../quayconfig/production/gantry.json update builder ``` running the tests: ``` TEST=true python -m unittest discover ``` running the tests with coverage (requires coverage module): ``` TEST=true coverage run -m unittest discover coverage html ``` generating screenshots: ``` cd screenshots casperjs screenshots.js --d ```