mirror of
https://gitlab.com/fdroid/fdroidserver.git
synced 2024-11-14 02:50:12 +01:00
Merge branch 'fixes-on-the-way-to-kvm' into 'master'
buildserver fixes on the way to KVM Here are a couple of relatively basic fixes I found while working on the KVM support (merge request coming soon). See merge request !174
This commit is contained in:
commit
749c04c66a
19
buildserver/Vagrantfile
vendored
19
buildserver/Vagrantfile
vendored
@ -15,8 +15,15 @@ Vagrant.configure("2") do |config|
|
||||
config.vm.box = configfile['basebox']
|
||||
config.vm.box_url = configfile['baseboxurl']
|
||||
|
||||
# TODO detect if jessie64.box is libvirt, or `vagrant mutate jessie64 libvirt`
|
||||
if `systemd-detect-virt`.include? "qemu" or configfile["vm_provider"] == "libvirt"
|
||||
if not configfile.has_key? "vm_provider" or configfile["vm_provider"] == "virtualbox"
|
||||
# default to VirtualBox if not set
|
||||
config.vm.provider "virtualbox" do |v|
|
||||
v.customize ["modifyvm", :id, "--memory", configfile['memory']]
|
||||
v.customize ["modifyvm", :id, "--cpus", configfile['cpus']]
|
||||
v.customize ["modifyvm", :id, "--hwvirtex", configfile['hwvirtex']]
|
||||
end
|
||||
synced_folder_type = 'virtualbox'
|
||||
elsif configfile["vm_provider"] == "libvirt"
|
||||
# use KVM/QEMU if this is running in KVM/QEMU
|
||||
config.vm.provider :libvirt do |libvirt|
|
||||
libvirt.driver = "kvm"
|
||||
@ -27,14 +34,6 @@ Vagrant.configure("2") do |config|
|
||||
end
|
||||
config.vm.synced_folder './', '/vagrant', type: '9p'
|
||||
synced_folder_type = '9p'
|
||||
elsif not configfile.has_key? "vm_provider" or configfile["vm_provider"] == "virtualbox"
|
||||
# default to VirtualBox if not set
|
||||
config.vm.provider "virtualbox" do |v|
|
||||
v.customize ["modifyvm", :id, "--memory", configfile['memory']]
|
||||
v.customize ["modifyvm", :id, "--cpus", configfile['cpus']]
|
||||
v.customize ["modifyvm", :id, "--hwvirtex", configfile['hwvirtex']]
|
||||
end
|
||||
synced_folder_type = 'virtualbox'
|
||||
else
|
||||
abort("No supported VM Provider found, set vm_provider in Vagrantfile.yaml!")
|
||||
end
|
||||
|
@ -1,4 +1,3 @@
|
||||
|
||||
#!/bin/bash
|
||||
|
||||
if [ `dirname $0` != "." ]; then
|
||||
|
@ -1,6 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import os
|
||||
import pathlib
|
||||
import requests
|
||||
import stat
|
||||
import sys
|
||||
@ -12,6 +13,11 @@ from clint.textui import progress
|
||||
from optparse import OptionParser
|
||||
|
||||
|
||||
if not os.path.exists('makebuildserver') and not os.path.exists('buildserver'):
|
||||
print('This must be run as ./makebuildserver in fdroidserver.git!')
|
||||
sys.exit(1)
|
||||
|
||||
|
||||
def vagrant(params, cwd=None, printout=False):
|
||||
"""Run vagrant.
|
||||
|
||||
@ -52,9 +58,8 @@ options, args = parser.parse_args()
|
||||
cachedir = os.path.join(os.getenv('HOME'), '.cache', 'fdroidserver')
|
||||
config = {
|
||||
'basebox': 'jessie64',
|
||||
# TODO in py3, convert this to pathlib.Path(absolute_path_string).as_uri()
|
||||
'baseboxurl': [
|
||||
'file://' + os.path.join(cachedir, 'jessie64.box'),
|
||||
pathlib.Path(os.path.join(cachedir, 'jessie64.box')).as_uri(),
|
||||
'https://f-droid.org/jessie64.box',
|
||||
],
|
||||
'debian_mirror': 'http://http.debian.net/debian/',
|
||||
@ -87,10 +92,6 @@ elif os.path.exists('makebs.config.py'):
|
||||
if '__builtins__' in config:
|
||||
del(config['__builtins__']) # added by compile/exec
|
||||
|
||||
if not os.path.exists('makebuildserver') or not os.path.exists(serverdir):
|
||||
print('This must be run from the correct directory!')
|
||||
sys.exit(1)
|
||||
|
||||
if os.path.exists(boxfile):
|
||||
os.remove(boxfile)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user