google/novm

Will Vagrant file welcome for PR ?

kikitux opened this issue · 4 comments

Hello,

I have started to test novm, and I 100% sold into the idea.

I have done a Vagrantfile using Oracle Linux 7 that install golang/git, clone the code, make, make rpm, install.

If a contribution like this is valuable, I can look after create vagrantfiles for several OS so people can test?

alvaro.

this is a snip code of the end of one execution.. it install the rpm, and then run the novm-import-kernel

==> ol7:                                                                                                                                                                                                                                      
==> ol7: Installed:                                                                                                                                                                                                                           
==> ol7:   novm.x86_64 0:0.0-187.g62366c6                                                                                                                                                                                                     
==> ol7:                                                                                                                                                                                                                                      
==> ol7: Dependency Installed:                                                                                                                                                                                                                
==> ol7:   fakeroot.x86_64 0:1.18.4-2.el7       fakeroot-libs.x86_64 0:1.18.4-2.el7                                                                                                                                                           
==> ol7:                                                                                                                                                                                                                                      
==> ol7: Complete!                                                                                                                                                                                                                            
==> ol7: /home/vagrant                                                                                                                                                                                                                        
==> ol7: Copying cat to bin...                                                                                                                                                                                                                
==> ol7: Copying chmod to bin...                                                                                                                                                                                                              
==> ol7: Copying cp to bin...                                                                                                                                                                                                                 
==> ol7: Copying rm to bin...                                                                                                                                                                                                                 
==> ol7: Copying ls to bin...                                                                                                                                                                                                                 
==> ol7: Copying sh to bin...                                                                                                                                                                                                                 
==> ol7: Copying sleep to bin...                                                                                                                                                                                                              
==> ol7: Copying mount to bin...                                                                                                                                                                                                              
==> ol7: Copying umount to bin...                                                                                                                                                                                                             
==> ol7: Copying mkdir to bin...                                                                                                                                                                                                              
==> ol7: Copying rmdir to bin...                                                                                                                                                                                                              
==> ol7: Copying ln to bin...                                                                                                                                                                                                                 
==> ol7: Copying kmod to bin...                                                                                                                                                                                                               
==> ol7: Copying modprobe to sbin...                                                                                                                                                                                                          
==> ol7: Copying switch_root to sbin...                                                                                                                                                                                                       
==> ol7: Copying /lib64/ld-linux-x86-64.so.2 to lib...                                                                                                                                                                                        
==> ol7: Copying /lib64/libacl.so.1 to lib...                                                                                                                                                                                                 
==> ol7: Copying /lib64/libattr.so.1 to lib...                                                                                                                                                                                                
==> ol7: Copying /lib64/libblkid.so.1 to lib...                                                                                                                                                                                               
==> ol7: Copying /lib64/libcap.so.2 to lib...                                                                                                                                                                                                 
==> ol7: Copying /lib64/libc.so.6 to lib...                                                                                                                                                                                                   
==> ol7: Copying /lib64/libdl.so.2 to lib...                                                                                                                                                                                                  
==> ol7: Copying /lib64/liblzma.so.5 to lib...                                                                                                                                                                                                
==> ol7: Copying /lib64/libmount.so.1 to lib...                                                                                                                                                                                               
==> ol7: Copying /lib64/libpcre.so.1 to lib...                                                                                                                                                                                                
==> ol7: Copying /lib64/libpthread.so.0 to lib...                                                                                                                                                                                             
==> ol7: Copying /lib64/libselinux.so.1 to lib...                                                                                                                                                                                             
==> ol7: Copying /lib64/libtinfo.so.5 to lib...                                                                                                                                                                                               
==> ol7: Copying /lib64/libuuid.so.1 to lib...                                                                                                                                                                                                
==> ol7: Copying /usr/lib64/libc.so.6 to lib...                                                                                                                                                                                               
==> ol7: Copying /usr/lib64/libdl.so.2 to lib...                                                                                                                                                                                              
==> ol7: Copying /usr/lib64/libfakeroot/libfakeroot-tcp.so to lib...                                                                                                                                                                          
==> ol7: Copying /usr/lib64/libkmod.so.2 to lib...                                                                                                                                                                                            
==> ol7: Copying /usr/lib64/liblzma.so.5 to lib...                                                                                                                                                                                            
==> ol7: Copying /usr/lib64/libpthread.so.0 to lib...                                                                                                                                                                                         
==> ol7: Copying /usr/lib64/libz.so.1 to lib...                                                                                                                                                                                               
==> ol7: Copying module /lib/modules/3.8.13-44.1.5.el7uek.x86_64/kernel/fs/fscache/fscache.ko ...                                                                                                                                             
==> ol7: Copying module /lib/modules/3.8.13-44.1.5.el7uek.x86_64/kernel/drivers/char/virtio_console.ko ...                                                                                                                                    
==> ol7: Copying module /lib/modules/3.8.13-44.1.5.el7uek.x86_64/kernel/drivers/block/virtio_blk.ko ...                                                                                                                                       
==> ol7: Copying module /lib/modules/3.8.13-44.1.5.el7uek.x86_64/kernel/drivers/scsi/virtio_scsi.ko ...                                                                                                                                       
==> ol7: Copying module /lib/modules/3.8.13-44.1.5.el7uek.x86_64/kernel/drivers/virtio/virtio.ko ...                                                                                                                                          
==> ol7: Copying module /lib/modules/3.8.13-44.1.5.el7uek.x86_64/kernel/drivers/virtio/virtio_pci.ko ...                                                                                                                                      
==> ol7: Copying module /lib/modules/3.8.13-44.1.5.el7uek.x86_64/kernel/drivers/virtio/virtio_ring.ko ...                                                                                                                                     
==> ol7: Copying module /lib/modules/3.8.13-44.1.5.el7uek.x86_64/kernel/drivers/virtio/virtio_balloon.ko ...                                                                                                                                  
==> ol7: Copying module /lib/modules/3.8.13-44.1.5.el7uek.x86_64/kernel/drivers/net/virtio_net.ko ...                                                                                                                                         
==> ol7: Copying module /lib/modules/3.8.13-44.1.5.el7uek.x86_64/kernel/net/9p/9pnet_virtio.ko ...                                                                                                                                            
==> ol7: Copying module /lib/modules/3.8.13-44.1.5.el7uek.x86_64/kernel/net/9p/9pnet.ko ...                                                                                                                                                   
==> ol7: 3f9e12b3ff401fc592bf517247cc9a45574eb927                                                                                                                                                                                             

real    8m20.493s                                                                                                                                                                                                                             
user    0m5.566s                                                                                                                                                                                                                              
sys     0m2.584s   

from zero to novm in minutes

vagrant ssh -c "sudo novm kernels"                                                                                                                                                                             
------------------------------------------------------------------------------------------------------------------------------------                                                                                                          
| id                                       | url                   | timestamp                | release                     | name |                                                                                                          
------------------------------------------------------------------------------------------------------------------------------------                                                                                                          
| 3f9e12b3ff401fc592bf517247cc9a45574eb927 | file:///tmp/tmpccBczl | Thu Jan 15 11:28:19 2015 | 3.8.13-44.1.5.el7uek.x86_64 |      |                                                                                                          
------------------------------------------------------------------------------------------------------------------------------------                                                                                                          
Connection to 127.0.0.1 closed.       

Hi kikitux, a vagrant file sounds awesome. I don't know much about it so I have a question.

What's the target for installation? Isn't it normally a VM? Using novm within a VM requires nested virtualization. AFAIK that means either KVM or VMWare. Are those things that people normally use with Vagrant? I've seen people using it with VirtualBox, but nothing else.

Hello, I wasn't aware of KVM requirent full access to hw, so it doesn't work with virtualbox (which is free).

thanks for pointing this out to me