From 3fdd52dce9e0c18738f786c80144be6d16e49563 Mon Sep 17 00:00:00 2001 From: jpalanca Date: Fri, 24 Jul 2015 17:51:19 +0200 Subject: [PATCH 1/3] Added Vagrantfile with provisioning scripts and PostgresSQL configuration. Migrated to python3 --- {{cookiecutter.repo_name}}/Vagrantfile | 77 +++++++++++++++++++ {{cookiecutter.repo_name}}/requirements.apt | 7 +- .../requirements/production.txt | 2 +- 3 files changed, 84 insertions(+), 2 deletions(-) create mode 100644 {{cookiecutter.repo_name}}/Vagrantfile diff --git a/{{cookiecutter.repo_name}}/Vagrantfile b/{{cookiecutter.repo_name}}/Vagrantfile new file mode 100644 index 000000000..d1053ac49 --- /dev/null +++ b/{{cookiecutter.repo_name}}/Vagrantfile @@ -0,0 +1,77 @@ +# -*- mode: ruby -*- +# vi: set ft=ruby : + +# All Vagrant configuration is done below. The "2" in Vagrant.configure +# configures the configuration version (we support older styles for +# backwards compatibility). Please don't change it unless you know what +# you're doing. +Vagrant.configure(2) do |config| + # The most common configuration options are documented and commented below. + # For a complete reference, please see the online documentation at + # https://docs.vagrantup.com. + + # Every Vagrant development environment requires a box. You can search for + # boxes at https://atlas.hashicorp.com/search. + config.vm.box = "utopic64" + config.vm.box_url = "https://cloud-images.ubuntu.com/vagrant/utopic/current/utopic-server-cloudimg-amd64-vagrant-disk1.box" + + # Disable automatic box update checking. If you disable this, then + # boxes will only be checked for updates when the user runs + # `vagrant box outdated`. This is not recommended. + # config.vm.box_check_update = false + + # Create a forwarded port mapping which allows access to a specific port + # within the machine from a port on the host machine. In the example below, + # accessing "localhost:8080" will access port 80 on the guest machine. + config.vm.network "forwarded_port", guest: 8000, host: 9000 + + # Create a private network, which allows host-only access to the machine + # using a specific IP. + # config.vm.network "private_network", ip: "192.168.33.10" + + # Create a public network, which generally matched to bridged network. + # Bridged networks make the machine appear as another physical device on + # your network. + # config.vm.network "public_network" + + # Share an additional folder to the guest VM. The first argument is + # the path on the host to the actual folder. The second argument is + # the path on the guest to mount the folder. And the optional third + # argument is a set of non-required options. + # config.vm.synced_folder "../data", "/vagrant_data" + + # Provider-specific configuration so you can fine-tune various + # backing providers for Vagrant. These expose provider-specific options. + # Example for VirtualBox: + # + # config.vm.provider "virtualbox" do |vb| + # # Display the VirtualBox GUI when booting the machine + # vb.gui = true + # + # # Customize the amount of memory on the VM: + # vb.memory = "1024" + # end + # + # View the documentation for the provider you are using for more + # information on available options. + + # Define a Vagrant Push strategy for pushing to Atlas. Other push strategies + # such as FTP and Heroku are also available. See the documentation at + # https://docs.vagrantup.com/v2/push/atlas.html for more information. + # config.push.define "atlas" do |push| + # push.app = "YOUR_ATLAS_USERNAME/YOUR_APPLICATION_NAME" + # end + + # Enable provisioning with a shell script. Additional provisioners such as + # Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the + # documentation for more information about their specific syntax and use. + config.vm.provision "shell", inline: <<-SHELL + cd /vagrant && ./install_os_dependencies.sh install + su vagrant -c ". /usr/share/virtualenvwrapper/virtualenvwrapper.sh && mkvirtualenv {{ cookiecutter.repo_name }} --python=/usr/bin/python3" + su vagrant -c ". /usr/share/virtualenvwrapper/virtualenvwrapper.sh && workon {{ cookiecutter.repo_name }} && cd /vagrant && ./install_python_dependencies.sh" + apt-get install -y postgresql + sudo -u postgres psql -c "CREATE USER vagrant;" + sudo -u postgres psql -c "CREATE DATABASE {{ cookiecutter.repo_name }} OWNER vagrant;" + SHELL + +end diff --git a/{{cookiecutter.repo_name}}/requirements.apt b/{{cookiecutter.repo_name}}/requirements.apt index 46cfaac2d..642fec647 100644 --- a/{{cookiecutter.repo_name}}/requirements.apt +++ b/{{cookiecutter.repo_name}}/requirements.apt @@ -5,6 +5,11 @@ build-essential gettext python-dev +##python3 +python3 +python3-dev +virtualenvwrapper + ##shared dependencies of: ##Pillow, pylibmc zlib1g-dev @@ -13,7 +18,7 @@ zlib1g-dev libpq-dev ##Pillow dependencies -libtiff4-dev +libtiff5-dev libjpeg8-dev libfreetype6-dev liblcms1-dev diff --git a/{{cookiecutter.repo_name}}/requirements/production.txt b/{{cookiecutter.repo_name}}/requirements/production.txt index b30edce59..dc09b9a3e 100644 --- a/{{cookiecutter.repo_name}}/requirements/production.txt +++ b/{{cookiecutter.repo_name}}/requirements/production.txt @@ -4,7 +4,7 @@ # WSGI Handler # ------------------------------------------------ -gevent==1.0.2 +# gevent==1.0.2 gunicorn==19.3.0 # Static and Media Storage From c2cf67ad7e578b842c597623ba7f1c43e19975eb Mon Sep 17 00:00:00 2001 From: jpalanca Date: Fri, 24 Jul 2015 18:05:15 +0200 Subject: [PATCH 2/3] Added .vagrant to .gitignore --- {{cookiecutter.repo_name}}/.gitignore | 3 +++ 1 file changed, 3 insertions(+) diff --git a/{{cookiecutter.repo_name}}/.gitignore b/{{cookiecutter.repo_name}}/.gitignore index ff0e7b0cd..98b463724 100644 --- a/{{cookiecutter.repo_name}}/.gitignore +++ b/{{cookiecutter.repo_name}}/.gitignore @@ -54,3 +54,6 @@ node_modules/ # virtual environments .env + +# Vagrant +.vagrant From ff6d8d8b75bdbd6e86b4a89df6209c3709805101 Mon Sep 17 00:00:00 2001 From: jpalanca Date: Fri, 24 Jul 2015 18:30:33 +0200 Subject: [PATCH 3/3] Added myself to CONTRIBUTORS --- CONTRIBUTORS.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt index f80175761..c9267f209 100644 --- a/CONTRIBUTORS.txt +++ b/CONTRIBUTORS.txt @@ -51,6 +51,7 @@ Burhan Khalid / @burhan Jannis Gebauer / @got_nil jayfk / @jayfk stepmr / @stepmr +Javi Palanca / @javipalanca * Possesses commit rights