Commit Graph

701 Commits

Author SHA1 Message Date
Michaël Faille 96611341a9 Revert "Fix `service network restart` on RHEL-7 / Fedora"
`/etc/init.d/network restart` already restart NM and shutdown interfaces.

In start() :
```
        if [ "$(LANG=C nmcli -t --fields running general status 2>/dev/null)" = "running" ]; then
                nmcli connection reload
        fi

```

In stop() :

```
       for i in $vpninterfaces $xdslinterfaces $bridgeinterfaces $vlaninterfaces $remaining; do
                unset DEVICE TYPE
                (. ./ifcfg-$i
                if [ -z "$DEVICE" ] ; then DEVICE="$i"; fi

                if ! check_device_down $DEVICE; then
                   action $"Shutting down interface $i: " ./ifdown $i boot
                   [ $? -ne 0 ] && rc=1
                fi
                )
        done
```
Where $remaining include all "others" interfaces including eth*

This reverts commit 166d10d4e1.
2016-12-21 20:33:57 -05:00
Chris Roberts 9f393fc1e0 Use uid/gid from mount_options if provided for synced folders.
This also extracts the gid/uid detection and upstart actions into
reusable module to provide consistent behavior.
2016-12-14 12:12:17 -08:00
ephemeralsnow 556b82da1c Fix quotes 2016-12-07 18:04:33 +09:00
Chris Roberts 0587707044 Merge pull request #8051 from jklippel/vagrant-issue-7368
redirect any output to stderr by /sbin/init to /dev/null when checking for upstart capability
2016-12-05 15:21:04 -08:00
Latchezar Tzvetkoff 166d10d4e1 Fix `service network restart` on RHEL-7 / Fedora
RHEL-7 / Current Fedora versions tend to use NetworkManager for
configuring the networks, and `service network restart` might fail.
If the `NetworkManager` service is running, we should restart it,
otherwise we try restarting `network`.
2016-11-29 15:40:48 +02:00
jklippel b10bc2e8c2 Vagrant-Issue: 7368: redirect any output to stderr by /sbin/init to /dev/null when checking for upstart capability 2016-11-29 08:10:25 +01:00
Chris Roberts 5482692127 guests/linux: Only match interfaces without special characters 2016-11-10 07:19:26 -08:00
Chris Roberts eb7568b2ed Merge pull request #7922 from chrisroberts/netbsd/rsync
guests/netbsd: Use full path to pkg_add command
2016-10-25 18:51:42 -07:00
Chris Roberts be3fa85853 Merge pull request #7921 from chrisroberts/fix/key-fixups
Remove `set -e` usage for better shell compatibility
2016-10-25 14:43:04 -07:00
Chris Roberts 365b98fee6 Merge pull request #7926 from chrisroberts/networking/rhel
guests/redhat: Force NetworkManager to reload device configurations
2016-10-25 14:41:07 -07:00
Chris Roberts fc6824e79c guests/netbsd: Include /usr/sbin in PATH for pkg_add command 2016-10-25 14:22:38 -07:00
Chris Roberts c39b3fbb76 guests/openbsd: Check package installation after installing package
The `pkg_add` command will return `0` when a package requested for
installation is not found. This adds a validation check to ensure
the rsync package is actually installed on the guest.
2016-10-25 12:16:52 -07:00
Chris Roberts 67f3c8b48c guests/redhat: Force NetworkManager to reload device configurations
When configuring network devices force NetworkManager to reload new
configuration files as they appear. This prevents NetworkManager from
attempting to continue managing devices on initial start up.
2016-10-25 07:45:38 -07:00
Chris Roberts fb4e4320b2 Remove `set -e` usage for better shell compatibility 2016-10-24 10:30:08 -07:00
Chris Roberts b9ea9a2ac2 Merge pull request #7887 from chrisroberts/guests/linux-detection
Guests/linux detection
2016-10-11 12:55:52 -07:00
Chris Roberts 9d61d7c61b Merge pull request #7818 from rswarts/vz7flavor
Add Virtuozzo Linux 7 to list of RHEL flavors
2016-10-11 10:35:20 -07:00
Chris Roberts d0549d6e11 guests/linux: Provide common linux detection style
Defines a common and generic linux detection strategy which can be
subclassed and easily reused by providing a custom detection constant.
2016-10-11 07:50:34 -07:00
Reto Gantenbein 6050b13f43 Make Debian guest detection more reliable
/etc/issue is far from being a reliable source for OS detection as it
can be changed by a user without affecting any OS functionality. As
newer Debian systems run systemd by default, check for /etc/os-release
and fallback to lsb_release for older Debian versions. Check #7625 for
a similar issue. Even lsb_release is not manatory, therefore keep the
current code of parsing /etc/issue to avoid regressions.
2016-10-11 07:49:35 -07:00
Chris Roberts 07ce1c6930 Merge pull request #7866 from chrisroberts/guest-linux/network-interfaces-sorting
guests/linux: Update network interface sorting implementation
2016-10-10 10:59:52 -07:00
Chris Roberts a8970281ce guests/linux: Properly sort interface name types
Add failing networking interface list sorting test with example
provided by #7883. Update sorting logic to properly handle different
types and differing array lengths.

Fixes #7883
2016-10-10 10:22:19 -07:00
Chris Roberts d178631ff9 Generic white space strip from command strings 2016-10-07 17:30:27 -07:00
Chris Roberts 33b13dffbe Merge pull request #7873 from markpeek/markpeek-photon-netmask
Fix typo (netmast => netmask) for Photon guest #7808
2016-10-07 15:15:26 -07:00
Mark Peek 4bf32e3f6d Fix typo (netmast => netmask) for Photon guest #7808 2016-10-07 12:32:21 -07:00
Chris Roberts b738aaac0f Merge pull request #7813 from rudineirk/fix-non-upstart-linux
Fix non upstart linux nfs mounts
2016-10-06 12:59:23 -07:00
Chris Roberts a384276431 Merge pull request #7751 from wakeful/fix-centos7-do-not-prompt-before-overwriting
Fix CentOS7 network config - do not prompt before overwriting
2016-10-04 17:31:42 -07:00
Chris Roberts e2b18fc65d guests/linux: Update network interface sorting implementation
Always pull ordered ethernet devices to the head of the list. Ensure
aliases are not included.
2016-10-04 17:25:00 -07:00
Chris Roberts 0300df09fb guests/linux: Update constant name, freeze constant values 2016-09-30 12:11:54 -07:00
Chris Roberts 9f468d2626 guests/linux: Place ethernet devices at start of device list 2016-09-29 15:33:29 -07:00
Rutger Swarts 2ecbc241c3 Add Virtuozzo Linux 7 to list of RHEL flavors 2016-09-23 10:45:16 +02:00
Rudinei Goi Roecker 8b8c961935 Fix non upstart linux nfs mounts 2016-09-20 17:57:54 -03:00
AJ 2e723ea308 added general restart for network - to prevent IP address dropping on interfaces 2016-08-23 21:02:11 +01:00
AJ 1c4e7ee068 assuming a scenario - vagrant up -> power off -> vagrant up
vagrant will stuck on the network configuration

DEBUG ssh: stdout: mv: overwrite '/etc/sysconfig/network-scripts/ifcfg-eth0'?
DEBUG ssh: Sending SSH keep-alive...
2016-08-23 20:58:15 +01:00
Chris Roberts a7537a6be0 Merge pull request #7726 from chrisroberts/fix/rsync-exclude
Ignore files excluded from sync on chown
2016-08-19 09:58:31 -07:00
Chris Roberts dd6ad2fbf3 guests/linux: only use effective group ID when appropriate 2016-08-17 06:53:26 -07:00
Chris Roberts 185a7dfc2e guests/rsync do not chown files excluded from sync 2016-08-16 15:13:19 -07:00
Chris Roberts dd91269491 guests: Prevent ssh disconnect from causing error on halt 2016-08-12 13:25:39 -07:00
Chris Roberts ce3329e184 guests/linux: Always order discovered network interfaces 2016-08-12 10:31:41 -07:00
Chris Roberts 6cdab917de guests/dragonflybsd: add detection for DragonFly BSD 2016-08-10 09:14:08 -07:00
Chris Roberts 571659a5d1 guests/openbsd: include -h option on shutdown
For OpenBSD versions prior to 5.7 the `-h` option _must_ be provided
to the `shutdown` command when `-p` is used. Later versions no longer
require the `-h` option but still allow it for compatibility.

http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sbin/shutdown/shutdown.8?rev=1.40&content-type=text/x-cvsweb-markup
http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/sbin/shutdown/shutdown.c?rev=1.40&content-type=text/x-cvsweb-markup
2016-08-10 09:14:08 -07:00
Chris Roberts 666d5e6391 guests/bsd: remove darwin matching 2016-08-10 09:10:56 -07:00
Jose Luis Duran 820607bbf6 Fix `authorized_keys` permissions for BSDs
This is an extension of a6760dd8e7,
applied to BSD guests.

Related to #7610
2016-07-25 18:25:58 -03:00
Seth Vargo 00fa49191d
guests/ubuntu: Revert detection
- Semi-reverts GH-7524
- Fixes GH-7625
2016-07-23 15:02:11 -04:00
hendrenj 855643e9a5 s/bsd/linux/ 2016-07-19 11:45:03 -06:00
hendrenj a6760dd8e7 fixes #7610 2016-07-19 11:22:35 -06:00
Colin Shea b31b240c8c
Support installing synced folder clients on arch 2016-07-18 22:33:04 -04:00
Seth Vargo 30692fc857 Merge pull request #7524 from nishidayuya/fix_ubuntu_guest_detection
A more reliable way to detect Ubuntu
2016-07-18 22:01:11 -04:00
Seth Vargo 7868421a21
guests/openbsd: Fix hostname setting 2016-07-18 21:13:00 -04:00
Seth Vargo 1e0d7bb652
guests/ubuntu: Use debians change_host_name functionality 2016-07-18 21:13:00 -04:00
Seth Vargo 7f1947fec2
folders/rsync: Shellescape guest paths
This allows users to have spaces or other special characters in
destination paths on the guest.
2016-07-18 21:13:00 -04:00
Seth Vargo 1c0d0b8b9d
guests/linux: Style update for choose_addressable_ip 2016-07-18 21:12:59 -04:00
Seth Vargo e2becda89d
guests/gentoo: Use shared cap for listing network interfaces 2016-07-18 21:12:59 -04:00
Seth Vargo 8fe47b79c2
guests/gentoo: Exit on hostname error 2016-07-18 21:12:59 -04:00
Seth Vargo 72dcf610f7
guests/freebsd: Escape guest path in rsync folders 2016-07-18 21:12:59 -04:00
Seth Vargo 3b2ffae400
guests/bsd: Print a very descriptive error when mounting vbox folders
BSD-based guests do not support VirtualBox shared folders. This is a
common source of confusion in Vagrant. This new error clearly explains
that this is not a bug in Vagrant and provides instructions on how to 
disable them.
2016-07-18 21:12:58 -04:00
Seth Vargo c4a0a86ee0
guests/debian: Do not restart networking
Restarting networking causes Vagrant to disconnect and fail.
2016-07-18 21:12:58 -04:00
Seth Vargo d1a071d403
guests/darwin: Shellescape guest path for rsync 2016-07-18 21:12:58 -04:00
Seth Vargo 619c7a5b26
guests/darwin: Exit on error setting hostname 2016-07-18 21:12:58 -04:00
Seth Vargo 7e88266999
guests/linux: Properly escape and retry vbox shared folder mounting 2016-07-18 21:12:57 -04:00
Seth Vargo 4aaa600bd6
guests/linux: Centralize public_key logic 2016-07-18 21:12:57 -04:00
Seth Vargo cb2f3a697f
guests/debian: Do not check if rsync is installed before installing
This is already done via the rsync_installed capability.
2016-07-18 21:12:57 -04:00
Seth Vargo 76bab1932e
guests/debian: Use set -e when configuring networks 2016-07-18 21:12:57 -04:00
Seth Vargo 7a7256b3ab
guests/debian: Exit on error when configuring hostname 2016-07-18 21:12:56 -04:00
Seth Vargo 9134172ce6
guests/debian: Move NFS into same file 2016-07-18 21:12:56 -04:00
Seth Vargo 0af02fc78c
guests/atomic: Ensure error exit when setting hostname 2016-07-18 21:12:56 -04:00
Seth Vargo ccc40eb19d
guests/arch: compute netmask
Arch expects /24 for netmask, but users usually specify as a netmask
block like 255.255.255.0. This automatically converts it.
2016-07-18 21:12:56 -04:00
Seth Vargo 627091de35
guests/linux: reorg 2016-07-18 21:12:55 -04:00
Seth Vargo 9ea13105c0
guests/arch: Ensure exit on configure networks fail 2016-07-18 21:12:55 -04:00
Seth Vargo e69211ab22
guests/arch: Add NFS capabilities 2016-07-18 21:12:55 -04:00
Seth Vargo cf9a8e3c0a
guests/arch: Ensure exit on error setting hostname 2016-07-18 21:12:55 -04:00
Seth Vargo 084d62b5a6
guests/fedora: Move as a child of redhat
Fedora should have been a child of redhat for awhile now...
2016-07-18 21:12:54 -04:00
Seth Vargo 336cb3319c
guests/rhel: Use FQDN for hostname
Refs: https://lukas.zapletalovi.com/2011/12/setting-hostname-properly-in-fedora-and.html
2016-07-18 21:12:54 -04:00
Seth Vargo cf91bcf029
guests: Always search for FQDN without sudo 2016-07-18 21:12:54 -04:00
Seth Vargo 8f3b6511f2
guests/linux: Add shared cap for listing network interfaces 2016-07-18 21:12:54 -04:00
Seth Vargo b621cc44fb
guests/rhel: Switch to predicable network interface names 2016-07-18 21:12:53 -04:00
Seth Vargo 4664930e06
guests/ubuntu: Use short hostname
Fixes GH-7488
2016-07-18 21:12:53 -04:00
Seth Vargo caafb936f0
guests/gentoo: Use predictable network interface names 2016-07-18 21:12:53 -04:00
Seth Vargo ea9b28f9b6
guests/freebsd: Check FQDN for hostname 2016-07-18 21:12:52 -04:00
Seth Vargo 57774601d9
guests/fedora: Fix indentation on configure hostname 2016-07-18 21:12:52 -04:00
Seth Vargo 87d2b7fec8
guests/debian: Set hostname to short value
Refs GH-7488
2016-07-18 21:12:52 -04:00
Seth Vargo 5a372a9942
guests/bsd: Do not use -h to shutdown 2016-07-18 21:12:52 -04:00
Seth Vargo bbcddb6499
guests/atomic: Search for FQDN hostname 2016-07-18 21:12:51 -04:00
Seth Vargo 10b12ce393
guests/arch: Search for FQDN hostname 2016-07-18 21:12:51 -04:00
Seth Vargo 3eebff5bf3
guests/funtoo: Behave like a gentoo guest 2016-07-18 21:12:51 -04:00
Yuya.Nishida 05782f1d0e A more reliable way to detect Ubuntu
lsb_release command is included in lsb-release package. Sometimes this is
not installed; ex: Docker official Ubuntu image.
/etc/os-release is included in base-files package,
so this is more reliable than lsb_release.
2016-06-28 01:57:35 +09:00
Seth Vargo bfc951ee20 Merge pull request #7492 from mitchellh/sethvargo/linux_nfs
guests/linux: Ensure NFS retries when mounting
2016-06-19 14:39:39 -04:00
Seth Vargo 851eff1288
guests/linux: Ensure NFS retries when mounting
Fixes GH-7443
2016-06-19 14:34:33 -04:00
Seth Vargo 177b7784dd
guests/darwin: Allow ipv6 static networks 2016-06-19 12:01:52 -04:00
Seth Vargo 07e6d0e707
guests/bsd: Centralize logic for halting guests 2016-06-18 15:06:20 -04:00
Satoshi Matsumoto de9abc8f72
guests/redhat: fix network configuration in CentOS 5
ip command is not on PATH by default in CentOS 5 so call it with the full path.
2016-06-18 14:14:25 -04:00
Seth Vargo 079acb42cd
guests/bsd: Centralize logic for public key management 2016-06-17 21:36:28 -04:00
Seth Vargo 6284a9ac50
guests/bsd: Move NFS mounting logic into shared
A number of the BSD guests used very old mounting options or just
ignored some parameters entirely. This fixes that.

- Closes #7474
- Fixes #7466
2016-06-17 21:04:23 -04:00
Seth Vargo 0c268f7b3f
guests/bsd: Add shared BSD guest for common behavior 2016-06-17 20:16:36 -04:00
Seth Vargo b29864f450
Use symbols for defining guest capabilities 2016-06-17 19:55:04 -04:00
Seth Vargo add40534de
Use strip instead of chomp 2016-06-16 15:32:11 -04:00
Seth Vargo 23b34bb6c0 Merge pull request #7456 from jonnywilliamson/patch-1
Append newline to each key added
2016-06-16 21:28:33 +02:00
Jonathan d1be7ae84a Better method for string concatenation
Never developed in Ruby before. I have only just discovered that apparently `<<` is a better method of string concatenation.
2016-06-16 11:59:11 +01:00
Jonathan 2720ed3d2c Apply new line before shell to system
Having looked at the code again this seems like a more straightforward way of fixing the bug.
2016-06-16 11:47:47 +01:00
James Wilson 358ad8f18f Use ip instead of deprecated ifconfig for Red Hat/CentOS guests 2016-06-16 10:06:58 +01:00
Jonathan f7f46ba47d Append newline to each key added
The change to this file 10 days ago removed a newline character at the end of each key added to it. This mean that when another key was added, it continued on the same line as the one before and thus wasn't being detected when an ssh connection came in with a key file.

With regards to https://github.com/mitchellh/vagrant/issues/7455 this is an (ugly) fix.

I'm sure someone knows a better command to concat a file and a string and append it to the `authorized_keys` file. But this does fix the problem.
2016-06-15 23:56:22 +01:00
Eugene Zamriy eaa4e11c62 Add CloudLinux 7 to RHEL 7 flavors. 2016-06-12 16:51:55 +03:00