Create single method to provide all overridden values
This commit is contained in:
parent
e0d288a095
commit
ac26550734
3 changed files with 23 additions and 7 deletions
11
box/Vagrantfile
vendored
11
box/Vagrantfile
vendored
|
@ -27,6 +27,10 @@ vconfig = load_config([
|
||||||
"#{host_config_dir}/local.config.yml"
|
"#{host_config_dir}/local.config.yml"
|
||||||
])
|
])
|
||||||
|
|
||||||
|
# Override all drupalvm.test values according to project root:
|
||||||
|
require (File.expand_path('drutopiavm', host_config_dir))
|
||||||
|
set_overrides_per_project(vconfig)
|
||||||
|
|
||||||
provisioner = vconfig['force_ansible_local'] ? :ansible_local : vagrant_provisioner
|
provisioner = vconfig['force_ansible_local'] ? :ansible_local : vagrant_provisioner
|
||||||
if provisioner == :ansible
|
if provisioner == :ansible
|
||||||
playbook = "#{host_drupalvm_dir}/provisioning/playbook.yml"
|
playbook = "#{host_drupalvm_dir}/provisioning/playbook.yml"
|
||||||
|
@ -42,15 +46,12 @@ Vagrant.require_version ">= #{vconfig['drupalvm_vagrant_version_min']}"
|
||||||
|
|
||||||
ensure_plugins(vconfig['vagrant_plugins'])
|
ensure_plugins(vconfig['vagrant_plugins'])
|
||||||
|
|
||||||
# Acquire a hostname from the project root
|
|
||||||
vm_hostname = File.basename(ENV['DRUPALVM_PROJECT_ROOT']).gsub("_", "-")
|
|
||||||
|
|
||||||
Vagrant.configure('2') do |config|
|
Vagrant.configure('2') do |config|
|
||||||
# Set the name of the VM. See: http://stackoverflow.com/a/17864388/100134
|
# Set the name of the VM. See: http://stackoverflow.com/a/17864388/100134
|
||||||
config.vm.define "#{vm_hostname}.local" #vconfig['vagrant_machine_name']
|
config.vm.define vconfig['vagrant_machine_name']
|
||||||
|
|
||||||
# Networking configuration
|
# Networking configuration
|
||||||
config.vm.hostname = "#{vm_hostname}-coop-vm" #vconfig['vagrant_hostname']
|
config.vm.hostname = vconfig['vagrant_hostname']
|
||||||
config.vm.network :private_network,
|
config.vm.network :private_network,
|
||||||
ip: vconfig['vagrant_ip'],
|
ip: vconfig['vagrant_ip'],
|
||||||
auto_network: vconfig['vagrant_ip'] == '0.0.0.0' && Vagrant.has_plugin?('vagrant-auto_network')
|
auto_network: vconfig['vagrant_ip'] == '0.0.0.0' && Vagrant.has_plugin?('vagrant-auto_network')
|
||||||
|
|
15
provisioning/box/drutopiavm.rb
Normal file
15
provisioning/box/drutopiavm.rb
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
def set_overrides_per_project(config)
|
||||||
|
# Acquire a hostname from the project root
|
||||||
|
project_dir_name = File.basename(ENV['DRUPALVM_PROJECT_ROOT']).gsub("_", "-")
|
||||||
|
host_name = "#{project_dir_name}.test"
|
||||||
|
|
||||||
|
# Override all vconfig values with the new names
|
||||||
|
config['vagrant_hostname'] = host_name
|
||||||
|
config['vagrant_machine_name'] = "#{project_dir_name}-vm"
|
||||||
|
config['drupal_domain'] = host_name
|
||||||
|
config['hostname_fqdn'] =
|
||||||
|
config['apache_vhosts'].each do |host|
|
||||||
|
host['servername'].sub!('drupalvm.test', host_name)
|
||||||
|
host['serveralias'].gsub!('drupalvm.test', host_name) if host['serveralias']
|
||||||
|
end
|
||||||
|
end
|
|
@ -15,5 +15,5 @@
|
||||||
# See also provisioning/box/config
|
# See also provisioning/box/config
|
||||||
- name: set vagrant hostname according to the project folder
|
- name: set vagrant hostname according to the project folder
|
||||||
set_fact:
|
set_fact:
|
||||||
vagrant_hostname: "{{ proj_root_safe }}.local"
|
vagrant_hostname: "{{ proj_root_safe }}.test"
|
||||||
vagrant_machine_name: "{{ proj_root_safe }}-coop-vm"
|
vagrant_machine_name: "{{ proj_root_safe }}-vm"
|
||||||
|
|
Loading…
Reference in a new issue