Merge pull request #247 from tomalrussell/feature/reproducible_env
Feature/reproducible env
This commit is contained in:
commit
e9b4c0f211
32
Vagrantfile
vendored
32
Vagrantfile
vendored
@ -17,22 +17,30 @@ Vagrant.configure("2") do |config|
|
|||||||
# Create a forwarded port mapping which allows access to a specific port
|
# Create a forwarded port mapping which allows access to a specific port
|
||||||
# within the machine from a port on the host machine and only allow access
|
# within the machine from a port on the host machine and only allow access
|
||||||
# via 127.0.0.1 to disable public access
|
# via 127.0.0.1 to disable public access
|
||||||
|
# dev node process
|
||||||
config.vm.network "forwarded_port", guest: 3000, host: 3000, host_ip: "127.0.0.1"
|
config.vm.network "forwarded_port", guest: 3000, host: 3000, host_ip: "127.0.0.1"
|
||||||
|
# dev (node helper process)
|
||||||
|
config.vm.network "forwarded_port", guest: 3001, host: 3001, host_ip: "127.0.0.1"
|
||||||
|
# Postgres
|
||||||
|
config.vm.network "forwarded_port", guest: 5432, host: 6543, host_ip: "127.0.0.1"
|
||||||
|
|
||||||
# Provider-specific configuration so you can fine-tune various
|
# Provider-specific configuration so you can fine-tune various
|
||||||
# backing providers for Vagrant. These expose provider-specific options.
|
# backing providers for Vagrant. These expose provider-specific options.
|
||||||
# Example for VirtualBox:
|
|
||||||
#
|
# Using VirtualBox:
|
||||||
# config.vm.provider "virtualbox" do |vb|
|
config.vm.provider :virtualbox do |vm|
|
||||||
# # Display the VirtualBox GUI when booting the machine
|
# # Display the VirtualBox GUI when booting the machine
|
||||||
# vb.gui = true
|
# vb.gui = true
|
||||||
#
|
|
||||||
# # Customize the amount of memory on the VM:
|
# # Customize the amount of memory on the VM:
|
||||||
# vb.memory = "1024"
|
# vb.memory = "1024"
|
||||||
# end
|
|
||||||
#
|
# Enable creating symlinks in shared folder
|
||||||
# View the documentation for the provider you are using for more
|
# On a Windows host, vagrant will need to run with permissions to 'Create Symlinks', either
|
||||||
# information on available options.
|
# set for the current user in the Local Security Policy, or run from a shell with
|
||||||
|
# Administrative rights.
|
||||||
|
vm.customize ["setextradata", :id, "VBoxInternal2/SharedFoldersEnableSymlinksCreate/vagrant", "1"]
|
||||||
|
end
|
||||||
|
|
||||||
# Enable provisioning with a shell script. Additional provisioners such as
|
# Enable provisioning with a shell script. Additional provisioners such as
|
||||||
# Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
|
# Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
|
||||||
|
@ -73,7 +73,7 @@ service postgresql start
|
|||||||
# Ensure en_US locale exists
|
# Ensure en_US locale exists
|
||||||
locale-gen en_US.UTF-8
|
locale-gen en_US.UTF-8
|
||||||
# Database config to listen on network connection
|
# Database config to listen on network connection
|
||||||
sed -i "s/#\?listen_address.*/listen_addresses '*'/" /etc/postgresql/9.5/main/postgresql.conf
|
sed -i "s/#\?listen_address.*/listen_addresses '*'/" /etc/postgresql/10/main/postgresql.conf
|
||||||
# Allow password connections from any IP (so includes host)
|
# Allow password connections from any IP (so includes host)
|
||||||
echo "host all all all md5" >> /etc/postgresql/10/main/pg_hba.conf
|
echo "host all all all md5" >> /etc/postgresql/10/main/pg_hba.conf
|
||||||
# Restart postgres to pick up config changes
|
# Restart postgres to pick up config changes
|
||||||
@ -86,8 +86,14 @@ su postgres -c "psql -c \"SELECT 1 FROM pg_user WHERE usename = 'vagrant';\" " \
|
|||||||
su postgres -c "psql -c \"SELECT 1 FROM pg_database WHERE datname = 'vagrant';\" " \
|
su postgres -c "psql -c \"SELECT 1 FROM pg_database WHERE datname = 'vagrant';\" " \
|
||||||
| grep -q 1 || su postgres -c "createdb -E UTF8 -T template0 --locale=en_US.utf8 -O vagrant vagrant"
|
| grep -q 1 || su postgres -c "createdb -E UTF8 -T template0 --locale=en_US.utf8 -O vagrant vagrant"
|
||||||
|
|
||||||
|
|
||||||
|
# Create extensions
|
||||||
|
su vagrant -c "psql -c \"create extension postgis;\" "
|
||||||
|
su vagrant -c "psql -c \"create extension pgcrypto;\" "
|
||||||
|
su vagrant -c "psql -c \"create extension pg_trgm;\" "
|
||||||
|
|
||||||
# Run all 'up' migrations to create tables, data types, indexes
|
# Run all 'up' migrations to create tables, data types, indexes
|
||||||
su postgres -c "ls /vagrant/migrations/*.up.sql 2>/dev/null | while read -r migration; do psql < $migration; done;"
|
su vagrant -c "ls /vagrant/migrations/*.up.sql 2>/dev/null | while read -r migration; do psql < \$migration; done;"
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -115,7 +121,7 @@ chown -R vagrant:vagrant /home/vagrant/colouringlondon
|
|||||||
npm install -g npm@next
|
npm install -g npm@next
|
||||||
|
|
||||||
# Local fixed install of node modules
|
# Local fixed install of node modules
|
||||||
cd /vagrant/app && npm ci
|
cd /vagrant/app && npm install
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
|
Loading…
Reference in New Issue
Block a user