All the code and configuration for managing the servers that https://libraries.io runs on
You'll need Ansible installed to run the playbooks, instructions here: http://docs.ansible.com/intro_installation.html
You will also need to have the GCP python dependencies for communicating with the API to load the inventories. To do this simply run pipenv install
in the top level of the project. You will need to have Pipenv installed for this to work: https://pipenv.readthedocs.io/en/latest/
ansible-galaxy install -r ansible/requirements.yml
For deploying Libraries.io
ansible-playbook -i libraries_app.gcp.yml ansible/main-app.yml --vault-password-file ~/.vault_pass.txt
For running background jobs from Libraries.io
ansible-playbook -i libraries_cron.gcp.yml ansible/cron.yml --vault-password-file ~/.vault_pass.txt
For the elasticsearch cluster for Libraries.io
ansible-playbook -i libraries_elasticsearch.gcp.yml ansible/elasticsearch.yml --vault-password-file ~/.vault_pass.txt
For the memcached machines for Libraries.io
ansible-playbook -i libraries_memcached.gcp.yml ansible/memcached.yml --vault-password-file ~/.vault_pass.txt
For the swift parser server for Libraries.io
ansible-playbook ansible/swift.yml -i ansible/inventories/swift
For the cocoapods server for Libraries.io
ansible-playbook ansible/cocoapods.yml -i ansible/inventories/cocoapods
For the redis server for Libraries.io
ansible-playbook -i libraries_redis.gcp.yml ansible/redis.yml --vault-password-file ~/.vault_pass.txt
For the pip server for Libraries.io
ansible-playbook ansible/pip.yml -i ansible/inventories/pip
- Fork the project.
- Make your feature addition or bug fix.
- Add tests for it. This is important so we don't break it in a future version unintentionally.
- Send a pull request. Bonus points for topic branches.
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.
Copyright (c) 2016 Andrew Nesbitt. See LICENSE for details.