Page MenuHomePhabricator

Vagrant 1.9.1 provision failure on Trusty using role::labs:mediawiki_vagrant
Closed, DeclinedPublic

Description

I made two brand new instances, redis-dispatching-repo and redis-dispatching-client. Followed exactly the steps in the manual but it seems vagrant fail to provision:

pasted_file (768×1 px, 352 KB)

The role applied there is labs::mediawiki_vagrant

Event Timeline

daniel raised the priority of this task from Medium to High.EditedJan 12 2017, 10:54 PM
daniel added a subscriber: jcrespo.

Bumping to high. This is blocking (testing of) the resolution of a long standing db performance issue.

bd808 renamed this task from Vagrant can't provision to Vagrant 1.9.1 provision failure on Trusty using role::labs:mediawiki_vagrant.Jan 12 2017, 11:01 PM

This is last lines of the error when debug mode is enabled (using VAGRANT_LOG=DEBUG )

 INFO environment: Released process lock: machine-action-1f7f6d460de4db4112b1cab77b3e972c
 INFO environment: Running hook: environment_unload
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 2 hooks defined.
 INFO runner: Running action: environment_unload #<Vagrant::Action::Builder:0x000000032f2dc8>
ERROR vagrant: Vagrant experienced an error! Details:
ERROR vagrant: #<Vagrant::Errors::NFSNoHostonlyNetwork: NFS requires a host-only network to be created.
Please add a host-only network to the machine (with either DHCP or a
static IP) for NFS to work.>
ERROR vagrant: NFS requires a host-only network to be created.
Please add a host-only network to the machine (with either DHCP or a
static IP) for NFS to work.
ERROR vagrant: /srv/vagrant-data/gems/2.2.5/gems/vagrant-lxc-1.2.3/lib/vagrant-lxc/action/prepare_nfs_settings.rb:50:in `add_ips_to_env!'
/srv/vagrant-data/gems/2.2.5/gems/vagrant-lxc-1.2.3/lib/vagrant-lxc/action/prepare_nfs_settings.rb:23:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builtin/synced_folders.rb:87:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builtin/synced_folder_cleanup.rb:28:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/plugins/synced_folders/nfs/action_cleanup.rb:25:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/srv/vagrant-data/gems/2.2.5/gems/vagrant-lxc-1.2.3/lib/vagrant-lxc/action/prepare_nfs_valid_ids.rb:14:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builtin/handle_forwarded_port_collisions.rb:49:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builtin/env_set.rb:19:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builtin/provision.rb:80:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/srv/mediawiki-vagrant/lib/mediawiki-vagrant/middleware.rb:24:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:95:in `block in finalize_action'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builder.rb:116:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/runner.rb:66:in `block in run'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/util/busy.rb:19:in `busy'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/runner.rb:66:in `run'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builtin/call.rb:53:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builtin/box_check_outdated.rb:78:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builtin/config_validate.rb:25:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:95:in `block in finalize_action'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:95:in `block in finalize_action'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:95:in `block in finalize_action'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builder.rb:116:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/runner.rb:66:in `block in run'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/util/busy.rb:19:in `busy'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/runner.rb:66:in `run'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builtin/call.rb:53:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/srv/vagrant-data/gems/2.2.5/gems/vagrant-lxc-1.2.3/lib/vagrant-lxc/action/gc_private_network_bridges.rb:13:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/srv/vagrant-data/gems/2.2.5/gems/vagrant-lxc-1.2.3/lib/vagrant-lxc/action/clear_forwarded_ports.rb:31:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:95:in `block in finalize_action'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builder.rb:116:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/runner.rb:66:in `block in run'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/util/busy.rb:19:in `busy'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/runner.rb:66:in `run'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builtin/call.rb:53:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builtin/config_validate.rb:25:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:95:in `block in finalize_action'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builder.rb:116:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/runner.rb:66:in `block in run'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/util/busy.rb:19:in `busy'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/runner.rb:66:in `run'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builtin/call.rb:53:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:34:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/builder.rb:116:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/runner.rb:66:in `block in run'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/util/busy.rb:19:in `busy'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/runner.rb:66:in `run'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/machine.rb:225:in `action_raw'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/machine.rb:200:in `block in action'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/environment.rb:567:in `lock'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/machine.rb:186:in `call'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/machine.rb:186:in `action'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/plugins/commands/reload/command.rb:39:in `block in execute'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/plugin/v2/command.rb:235:in `block in with_target_vms'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/plugin/v2/command.rb:229:in `each'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/plugin/v2/command.rb:229:in `with_target_vms'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/plugins/commands/reload/command.rb:37:in `execute'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/cli.rb:42:in `execute'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/environment.rb:308:in `cli'
/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/bin/vagrant:127:in `<main>'
 INFO interface: error: NFS requires a host-only network to be created.
Please add a host-only network to the machine (with either DHCP or a
static IP) for NFS to work.
NFS requires a host-only network to be created.
Please add a host-only network to the machine (with either DHCP or a
static IP) for NFS to work.
 INFO interface: Machine: error-exit ["Vagrant::Errors::NFSNoHostonlyNetwork", "NFS requires a host-only network to be created.\nPlease add a host-only network to the machine (with either DHCP or a\nstatic IP) for NFS to work."]

The whole log is super big (133Kb) tell me if you need all of them.

I've also come across the exact same issue when trying to install Mediawiki Vagrant in the newly created Labs instance (for background, I am aiming to create some Wikibase instances on Labs to test federation functionality of Wikibase, see: T156114).

I am totally guessing here but it kind of looks to me there is some problem with NFS setup due to which Mediawiki stuff etc is not copied from the host (Labs instance) to the VM. I guess there might some other issue causing this that I cannot simply spot.
I am trying to figure out more, if by any chance I manage to find anything specific I'll of course comment here.

@Ladsgroup @WMDE-leszek before we try to get too fancy in debugging this, could either or both of you try rebooting the instances (the host VM, not the Vagrant managed container) and then trying vagrant up --provision again? I do remember seeing a similar error when I was first testing Vagrant 1.9.1, but then I could not recreate it. I don't remember rebooting the host I was testing on, but I have seen network stuff related to LXC fixed by reboots before.

@bd808 I've done a "soft reboot" of the instance in Horizon but when bringing the host VM up I am still getting a familiar error message:

NFS requires a host-only network to be created.
Please add a host-only network to the machine (with either DHCP or a
static IP) for NFS to work.

There is a chance I have done something which makes this simple trick not work when I was trying to be smart and debug/investigate the issue myself (although I didn't really do much of changes, and I am running a clean clone of MW vagrant now). I'll try this reboot trick again on a clean instance when I have few spare minutes (not at this very moment unfortunately).

I can recreate this problem on a fresh host. Next I'll try to see if it is fixed by https://gerrit.wikimedia.org/r/#/c/245920. I may have changed something there that is missing in the current puppet config. I did spot one problem that is preventing the initial puppet run from succeeding, but its just an ordering issue that is fixed by a subsequent run.

With verbose logging I see this output:

$ VAGRANT_LOG=DEBUG vagrant up
... lots of stuff that is unrelated ...

 INFO nfs: Using NFS, preparing NFS settings by reading host IP and machine IP
DEBUG ssh: Re-using SSH connection.
 INFO ssh: Execute: echo $SSH_CLIENT (sudo=false)
 INFO subprocess: Starting process: ["/usr/bin/sudo", "/usr/bin/env", "lxc-info"
, "--name", "mediawiki-vagrant_default_1485392269516_47576"]
 INFO subprocess: Command not in installer, restoring original environment...
DEBUG subprocess: Selecting on IO
DEBUG subprocess: stdout: Name:           mediawiki-vagrant_default_148539226951
6_47576
DEBUG subprocess: stdout: State:          RUNNING
DEBUG subprocess: stdout: PID:            27876
DEBUG subprocess: stdout: IP:             10.0.3.167
DEBUG subprocess: stdout: CPU use:        2.90 seconds
DEBUG subprocess: stdout: BlkIO use:      140.00 KiB
Memory use:     40.90 MiB
DEBUG subprocess: stdout: KMem use:       0 bytes
Link:           vethC3XS47
 TX bytes:      39.82 KiB
 RX bytes:      35.49 KiB
 Total bytes:   75.32 KiB
DEBUG subprocess: Waiting for process to exit. Remaining to timeout: 32000
DEBUG subprocess: Exit status: 0
 INFO machine: Calling action: ssh_ip on provider LXC (mediawiki-vagrant_default_1485392269516_47576)
 INFO interface: Machine: action ["ssh_ip", "start", {:target=>:default}]
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 2 hooks defined.
 INFO runner: Running action: machine_action_ssh_ip #<Vagrant::Action::Builder:0x00000002e145e0>
 INFO warden: Calling IN action: #<Vagrant::Action::Builtin::Call:0x00000002f53618>
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 2 hooks defined.
 INFO runner: Running action: machine_action_ssh_ip #<Vagrant::Action::Builder:0x00000002d32668>
 INFO warden: Calling IN action: #<Vagrant::Action::Builtin::ConfigValidate:0x00000002d10d10>
 INFO warden: Calling OUT action: #<Vagrant::Action::Builtin::ConfigValidate:0x00000002d10d10>
 INFO runner: Preparing hooks for middleware sequence...
 INFO runner: 2 hooks defined.
 INFO runner: Running action: machine_action_ssh_ip #<Vagrant::Action::Warden:0x00000002c6a618>
 INFO warden: Calling IN action: #<Proc:0x00000001ce7c18@/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:94 (lambda)>
 INFO warden: Calling IN action: #<Vagrant::LXC::Action::FetchIpWithLxcAttach:0x00000002c6a550>
 INFO subprocess: Starting process: ["/usr/bin/sudo", "/usr/bin/env", "lxc-attach", "--name", "mediawiki-vagrant_default_1485392269516_47576", "--namespaces", "NETWORK|MOUNT", "--", "/sbin/ip", "-4", "addr", "show", "scope", "global", "eth0"]
 INFO subprocess: Command not in installer, restoring original environment...
DEBUG subprocess: Selecting on IO
DEBUG subprocess: stdout: 23: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
DEBUG subprocess: stdout:     inet 10.0.3.167/24 brd 10.0.3.255 scope global eth0
       valid_lft forever preferred_lft forever
DEBUG subprocess: Waiting for process to exit. Remaining to timeout: 32000
DEBUG subprocess: Exit status: 0
 INFO warden: Calling IN action: #<Vagrant::LXC::Action::FetchIpFromDnsmasqLeases:0x00000002b6c450>
 INFO warden: Calling IN action: #<Proc:0x000000026a3a18@/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:94 (lambda)>
 INFO warden: Calling OUT action: #<Proc:0x000000026a3a18@/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:94 (lambda)>
 INFO warden: Calling OUT action: #<Vagrant::LXC::Action::FetchIpFromDnsmasqLeases:0x00000002b6c450>
 INFO warden: Calling OUT action: #<Vagrant::LXC::Action::FetchIpWithLxcAttach:0x00000002c6a550>
 INFO warden: Calling OUT action: #<Proc:0x00000001ce7c18@/opt/vagrant/embedded/gems/gems/vagrant-1.9.1/lib/vagrant/action/warden.rb:94 (lambda)>
 INFO warden: Calling OUT action: #<Vagrant::Action::Builtin::Call:0x00000002f53618>
 INFO interface: Machine: action ["ssh_ip", "end", {:target=>:default}]
ERROR warden: Error occurred: NFS requires a host-only network to be created.
Please add a host-only network to the machine (with either DHCP or a
static IP) for NFS to work.

The code in the vagrant-lxc plugin that is raising this failure is:

def call(env)
  @machine = env[:machine]

  @app.call(env)

  # if using_nfs? # TODO: && !privileged_container?
  #   raise Errors::NfsWithoutPrivilegedError
  # end

  if using_nfs?
    @logger.info("Using NFS, preparing NFS settings by reading host IP and machine IP")
    add_ips_to_env!(env)
  end
end

# Extracts the proper host and guest IPs for NFS mounts and stores them
# in the environment for the SyncedFolder action to use them in
# mounting.
#
# The ! indicates that this method modifies its argument.
def add_ips_to_env!(env)
  provider = @machine.provider

  host_ip    = read_host_ip
  machine_ip = provider.ssh_info[:host]

  raise Vagrant::Errors::NFSNoHostonlyNetwork if !host_ip || !machine_ip

  env[:nfs_host_ip]    = host_ip
  env[:nfs_machine_ip] = machine_ip
end


def read_host_ip
  @machine.communicate.execute 'echo $SSH_CLIENT' do |buffer, output|
    return output.chomp.split(' ')[0] if buffer == :stdout
  end
end

So either host_ip or machine_ip is coming back nil.

The host_ip = read_host_ip result would be the equivalent of this which looks like it works:

$ vagrant ssh -- echo $SSH_CLIENT
10.68.17.232 60952 22

That seems to point to machine_ip = provider.ssh_info[:host] failing. Tracing this in the vagrant-lxc code leads to code in lib/vagrant-lxc/action.rb that matches up with the log output above:

# This action is called to read the IP of the container. The IP found
# is expected to be put into the `:machine_ip` key.
def self.action_ssh_ip
  Builder.new.tap do |b|
    b.use Builtin::Call, Builtin::ConfigValidate do |env, b2|
      b2.use FetchIpWithLxcAttach if env[:machine].provider.driver.supports_attach?
      b2.use FetchIpFromDnsmasqLeases
    end
  end
end

Strangely however, this code looks like it would work as well. The path though the source code is a bit convoluted, but in the log output you can see the Vagrant::LXC::Action::FetchIpWithLxcAttach call returning the equivalent of:

$ vagrant ssh -- ip -4 addr show scope global eth0
23: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    inet 10.0.3.167/24 brd 10.0.3.255 scope global eth0
       valid_lft forever preferred_lft forever

This is followed by the Vagrant::LXC::Action::FetchIpFromDnsmasqLeases call which logs nothing. That seemed fishy to me at first, but the plugin source shows that this should be a no-op if env[:machine_ip] has already been populated:

def call(env)
  env[:machine_ip] ||= assigned_ip(env)
  @app.call(env)
end

From this surface analysis I can't see why the exception is being raised in the first place. The next step will require adding some additional logging to the vagrant-lxc plugin.

Whatever the problem is, it seems to be related to the Vagrant 1.9.1 package.

@Ladsgroup @WMDE-leszek to work around it, you can downgrade to the Vagrant 1.7.4 version that we were using previously. Here are the steps needed:

# Get the older package from upstream
$ wget https://releases.hashicorp.com/vagrant/1.7.4/vagrant_1.7.4_x86_64.deb
# Install it over the 1.9.1 version
$ sudo dpkg -i vagrant_1.7.4_x86_64.deb
# Remove the exiting plugin config file
$ sudo rm /srv/vagrant-data/plugins.json
# Force a puppet run to reinstall the needed plugins
$ sudo -i puppet agent --test --verbose

I'll spend a bit more time chasing down the bug in 1.9.1, but downgrading in our apt repo may be the solution I end up with generally if I can't find something in another hour or two of looking.

[…]
The host_ip = read_host_ip result would be the equivalent of this which looks like it works:

$ vagrant ssh -- echo $SSH_CLIENT
10.68.17.232 60952 22

[…]

Random observation: If a backslash didn't get lost in copying & pasting, that would echo the environment SSH_CLIENT in the "outer" shell, i. e. would not display its value inside the Vagrant box.

@bd808 thanks for looking into this! Downgrading Vagrant helped so far. I'd be more than happy to help fixing the problem with Vagrant 1.9.1 if there's something I could do.

bd808 lowered the priority of this task from High to Low.Jan 9 2018, 11:34 PM

Obviously not high as it has been open for a year. :/

I've built several Trusty MediaWiki-Vagrant hosts in Cloud VPS projects over the last year and have seen this error occasionally. In each case running vagrant destroy -f && vagrant up once or twice more and/or rebooting the Cloud VPS VM has made the ERROR vagrant: NFS requires a host-only network to be created. problem go away. I'm fairly confident that this is a race condition of some kind in the version of Vagrant we are using at the moment. The "fix" is probably to test a newer Vagrant version and roll it out.

bd808 removed bd808 as the assignee of this task.

Closing as declined because of Trusty deprecation