Giter VIP home page Giter VIP logo

vagrant's Introduction

Vagrant

This repository stores our Packer definitions of various versions of openSUSE for running Vagrant.

Tumbleweed

Building

packer build -parallel=false \
  -var iso_url=http://download.opensuse.org/tumbleweed/iso/openSUSE-Tumbleweed-NET-x86_64-Snapshot20160529-Media.iso \
  -var iso_checksum=324a29b9e1cb5fd3f3fb92a65681939fff66ec6cd735aeff555a2bd7d4d495f0 \
  definitions/tumbleweed-x86_64.json

Downloads

Leap 15.0

Building

packer build -parallel=false definitions/15.0-x86_64.json

Downloads

Leap 42.3

Building

packer build -parallel=false definitions/42.3-x86_64.json

Downloads

License

MIT

Copyright

Copyright (c) 2015 The openSUSE Project <http://www.opensuse.org>

vagrant's People

Contributors

achimh3011 avatar aspiers avatar cdumke avatar darix avatar denisok avatar hennevogel avatar hwoarang avatar tboerger avatar wakeful avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vagrant's Issues

vagrantbox search shows wrong version for leap15.5

(Didn't know if it is the appropriate place to report, but it is easiest way for me)

https://app.vagrantup.com/opensuse/boxes/Leap-15.5.x86_64
(and aarch too)

has listed version v15.5.10.94

But when I do a vagrant box update for instance

vagrant box update
==> default: Checking for updates to 'opensuse/Leap-15.5.x86_64'
    default: Latest installed version: 15.5.10.117
    default: Version constraints: 
    default: Provider: virtualbox
==> default: Box 'opensuse/Leap-15.5.x86_64' (v15.5.10.117) is running the latest version.

This issue exists since a few weeks (I had 15.5.10.94 before and it updated to 15.5.10.117, I thought it would eventually heal/'cache refresh' on app.vagrantup.com website. Or is there something fishy?

Hostname is not changed by Vagrant

I'm using the official Vagrant box imaged published in the Vagrant Cloud website so I'm not sure if this is its source code but if I use the following Vagrantfile:

Vagrant.configure("2") do |config|
  config.vm.box = "opensuse/openSUSE-Tumbleweed-Vagrant.x86_64"
  config.vm.box_version = "1.0.20190815"
  config.vm.hostname = "testing"
end

The hostname remains as localhost

$ vagrant ssh
Have a lot of fun...
vagrant@localhost:~> hostnamectl 
   Static hostname: n/a
Transient hostname: localhost
         Icon name: computer-vm
           Chassis: vm
        Machine ID: f076b7f9485f4007b46843ea225a7d41
           Boot ID: ffe05284129e47d7928fb24ca0c87016
    Virtualization: kvm
  Operating System: openSUSE Tumbleweed
       CPE OS Name: cpe:/o:opensuse:tumbleweed:20190815
            Kernel: Linux 5.2.8-1-default
      Architecture: x86-64

As result, these VMs are only reachable through its IP address.

Release 1.0.1

Version 1.0.1 which fixes an issue with loading vboxfs is currently marked as unreleased which makes me unable to use it. It would be great if you could flag it as released.

openSUSE 42.2 version 1.0.2 stuck 1m 30s on first boot

Running:

vagrant init opensuse/openSUSE-42.2-x86_64
vagrant up

The image gets stuck during boot for 1 minute and 30 secs; the screen shows:

[ *** ] A start job is running for dev-system-swap.device (Xs / 1min 30s)

This is using Atlas image for openSUSE 42.2 version 1.0.2 with libvirt.

Vagrant w/ VirtualBox provider fails to finish first boot in proxy environment

Hi,

in an environment with restricted internet access through a proxy vagrant can't finish the first boot successfully:

==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
==> default: Installing rsync to the VM...
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!

zypper -n install rsync

Stdout from the command:

Retrieving repository 'Update repository of openSUSE Backports' metadata [.error]
Warning: Skipping repository 'Update repository of openSUSE Backports' because of the above error.
Retrieving repository 'Non-OSS Repository' metadata [.error]
Warning: Skipping repository 'Non-OSS Repository' because of the above error.
Retrieving repository 'Main Repository' metadata [.error]
Warning: Skipping repository 'Main Repository' because of the above error.
Retrieving repository 'Update repository with updates from SUSE Linux Enterprise 15' metadata [.error]
Warning: Skipping repository 'Update repository with updates from SUSE Linux Enterprise 15' because of the above error.
Retrieving repository 'Main Update Repository' metadata [.error]
Warning: Skipping repository 'Main Update Repository' because of the above error.
Retrieving repository 'Update Repository (Non-Oss)' metadata [.error]
Warning: Skipping repository 'Update Repository (Non-Oss)' because of the above error.
Loading repository data...
Reading installed packages...
'rsync' not found in package names. Trying capabilities.

if manually configured the proxy settings, the second boot finishes:

...
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
==> default: Installing rsync to the VM...
==> default: Rsyncing folder: [...] => /vagrant
==> default: Running provisioner: shell...
...

This workaround is a bit awkward. Please ensure rsync to be present on the provided box.

I can provide a patch if needed.

Thanks!

Hostname is not registered by DNSMASQ

According to the vagrant-libvirt documentation Libvirt uses DNSMASQ as DHCP service to register the IP addresses to allow East-West Traffic through hostnames.

  • Vagrant v2.2.6
  • vagrant-libvirt v0.0.45
  • Dnsmasq v2.79
  • Libvirt v4.0.0
  • QEMU 2.11.1
Vagrant.configure("2") do |config|
  config.vm.synced_folder '.', '/vagrant', disabled: true
  config.vm.box = 'opensuse/Tumbleweed.x86_64'
  config.vm.box_version = '1.0.20191210'
  ["vm01", "vm02"].each do |vm|
    config.vm.define "#{vm}" do |nodeconfig|
      nodeconfig.vm.hostname = "#{vm}"
    end
  end
end
$ sudo cat /var/lib/libvirt/dnsmasq/virbr?.status
[
  {
    "ip-address": "192.168.121.89",
    "mac-address": "52:54:00:56:a4:36",
    "client-id": "ff:00:56:a4:36:00:01:00:01:25:85:91:3e:52:54:00:56:a4:36",
    "expiry-time": 1576198869
  },
  {
    "ip-address": "192.168.121.135",
    "mac-address": "52:54:00:02:8c:fa",
    "client-id": "ff:00:02:8c:fa:00:01:00:01:25:85:91:3e:52:54:00:02:8c:fa",
    "expiry-time": 1576198869
  }
]
$ vagrant ssh vm01 -- ping -c 3 vm02
PING vm02 (192.168.121.101) 56(84) bytes of data.
From 192.168.121.89 (192.168.121.89) icmp_seq=1 Destination Host Unreachable
From 192.168.121.89 (192.168.121.89) icmp_seq=2 Destination Host Unreachable
From 192.168.121.89 (192.168.121.89) icmp_seq=3 Destination Host Unreachable

--- vm02 ping statistics ---
3 packets transmitted, 0 received, +3 errors, 100% packet loss, time 2046ms
pipe 3
$ vagrant ssh vm01 -- ping -c 3 192.168.121.89
PING 192.168.121.89 (192.168.121.89) 56(84) bytes of data.
64 bytes from 192.168.121.89: icmp_seq=1 ttl=64 time=0.028 ms
64 bytes from 192.168.121.89: icmp_seq=2 ttl=64 time=0.062 ms
64 bytes from 192.168.121.89: icmp_seq=3 ttl=64 time=0.027 ms

--- 192.168.121.89 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2041ms
rtt min/avg/max/mdev = 0.027/0.039/0.062/0.016 ms

If I change the Vagrantfile for using a CentOS vagrant box I get the following results.

$ sudo cat /var/lib/libvirt/dnsmasq/virbr?.status
[
  {
    "ip-address": "192.168.121.101",
    "mac-address": "52:54:00:89:6e:61",
    "hostname": "vm02",
    "expiry-time": 1576198670
  },
  {
    "ip-address": "192.168.121.30",
    "mac-address": "52:54:00:4e:92:9b",
    "hostname": "vm01",
    "expiry-time": 1576198670
  }
]
$ vagrant ssh vm01 -- ping -c 3 vm02
PING vm02 (192.168.121.101) 56(84) bytes of data.
64 bytes from vm02 (192.168.121.101): icmp_seq=1 ttl=64 time=0.479 ms
64 bytes from vm02 (192.168.121.101): icmp_seq=2 ttl=64 time=0.471 ms
64 bytes from vm02 (192.168.121.101): icmp_seq=3 ttl=64 time=0.477 ms

--- vm02 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2001ms
rtt min/avg/max/mdev = 0.471/0.475/0.479/0.025 ms

Vagrant was unable to mount VirtualBox shared folders

If I deploy my opensuse container with virtualbox, it stopped with the following message.

Vagrant was unable to mount VirtualBox shared folders. This is usually because the filesystem "vboxsf" is not available. This filesystem is made available via the VirtualBox Guest Additions and kernel module. Please verify that these guest additions are properly installed in the guest. This is not a bug in Vagrant and is usually caused by a faulty Vagrant box. For context, the command attempted was:

mount -t vboxsf -o uid=1000,gid=1000,_netdev vagrant /vagrant

The error output from the command was:

/sbin/mount.vboxsf: mounting failed with the error: No such device

If I login to the running container and try to mount the folder manually with

sudo mount -t vboxsf -o uid=1000,gid=1000,_netdev vagrant /vagrant

I get the error message

/sbin/mount.vboxsf: mounting failed with the error: No such device

now, I checked if the loaded kernel modules and I found out that the 'vboxsf' module was not loaded

If I run

sudo modprobe -a vboxsf

I got the following message

modprobe: ERROR: module 'vboxsf' is unsupported modprobe: ERROR: Use --allow-unsupported or set allow_unsupported_modules 1 in modprobe: ERROR: /etc/modprobe.d/10-unsupported-modules.conf modprobe: ERROR: could not insert 'vboxsf': Operation not permitted

If I run it like

sudo modprobe -a vboxsf --allow-unsupported

it works and I was able to mount the vagrant folder manually

vboxsf module not loaded

Using the boxes in vagrant with the virtualbox provider gives an error as mounting shared directories from the host side fails. This is due to a kernel module not being loaded.

Maybe this needs to be fixed even further upstream, however the fix here the is to load the vboxsf kernel module upon system start.

diff --git a/scripts/base/vmtools.sh b/scripts/base/vmtools.sh
index be7f020..fde236d 100755
--- a/scripts/base/vmtools.sh
+++ b/scripts/base/vmtools.sh
@@ -19,6 +19,7 @@ case "$PACKER_BUILDER_TYPE" in
       virtualbox-guest-tools \
       virtualbox-guest-x11 \
       virtualbox-guest-kmp-default
+    echo vboxsf >/etc/modules-load.d/vboxsf.conf
     ;;
 esac

See http://stackoverflow.com/questions/28328775/virtualbox-mount-vboxsf-mounting-failed-with-the-error-no-such-device#comment55725357_30388070

Please update the images periodicaly

I'm trying to use 42.2 and it is very useful to have these images in Atlas; but currently it is too old and it requires update (and reboot, there are kernel updates) and that breaks provisioning.

Would it be possible to rebuild these images periodically and push them to Atlas if there are changes?

Thanks a lot for providing the images!

provide a more recent (42.2) image

I have the feeling the currently available image on hashicorp's atlas is a bit outdated. It would be nice to have a more recent version.

I/O APIC is disable and crash the machine with 2 or more CPUs

Hi guys,

I didn't find where openSUSE build Vagrant images, just this repository, and it looks old, anyway we need to add I/O APIC during machine creation, or it'll crash on setips with 2 or more cpu cores.

vb.customize ["modifyvm", :id, "--ioapic", "on"]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.