Hello community,
here is the log from the commit of package build for openSUSE:Factory checked in at 2017-03-03 17:37:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/build (Old)
and /work/SRC/openSUSE:Factory/.build.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "build"
Fri Mar 3 17:37:13 2017 rev:103 rq:455767 version:20170209
Changes:
--------
--- /work/SRC/openSUSE:Factory/build/build.changes 2017-02-03 17:33:44.910267823 +0100
+++ /work/SRC/openSUSE:Factory/.build.new/build.changes 2017-03-03 17:37:14.590955207 +0100
@@ -1,0 +2,10 @@
+Thu Feb 9 13:15:55 UTC 2017 - adrian@suse.de
+
+- updated confguration for tumbleweed
+- Arch linux fixes
+- mount swap by label
+- allow custom qemu options
+- allow to override hostname
+- fix build with vm-type lxc
+
+-------------------------------------------------------------------
Old:
----
obs-build-20170112.tar.gz
New:
----
obs-build-20170209.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ build.spec ++++++
--- /var/tmp/diff_new_pack.K7ggkS/_old 2017-03-03 17:37:15.290856307 +0100
+++ /var/tmp/diff_new_pack.K7ggkS/_new 2017-03-03 17:37:15.290856307 +0100
@@ -18,13 +18,13 @@
# needsbinariesforbuild
-%define version_unconverted 20170112
+%define version_unconverted 20170209
Name: build
Summary: A Script to Build SUSE Linux RPMs
License: GPL-2.0+ and GPL-2.0
Group: Development/Tools/Building
-Version: 20170112
+Version: 20170209
Release: 0
Source: obs-build-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-build
++++++ PKGBUILD ++++++
--- /var/tmp/diff_new_pack.K7ggkS/_old 2017-03-03 17:37:15.326851221 +0100
+++ /var/tmp/diff_new_pack.K7ggkS/_new 2017-03-03 17:37:15.330850656 +0100
@@ -1,5 +1,5 @@
pkgname=build
-pkgver=20170112
+pkgver=20170209
pkgrel=0
pkgdesc="Build packages in sandbox"
arch=('i686' 'x86_64')
++++++ build.dsc ++++++
--- /var/tmp/diff_new_pack.K7ggkS/_old 2017-03-03 17:37:15.366845569 +0100
+++ /var/tmp/diff_new_pack.K7ggkS/_new 2017-03-03 17:37:15.366845569 +0100
@@ -1,6 +1,6 @@
Format: 1.0
Source: build
-Version: 20170112
+Version: 20170209
Binary: build
Maintainer: Adrian Schroeter
Architecture: all
++++++ debian.changelog ++++++
--- /var/tmp/diff_new_pack.K7ggkS/_old 2017-03-03 17:37:15.398841049 +0100
+++ /var/tmp/diff_new_pack.K7ggkS/_new 2017-03-03 17:37:15.398841049 +0100
@@ -1,4 +1,4 @@
-build (20170112) unstable; urgency=low
+build (20170209) unstable; urgency=low
* Update to current git trunk
- add sles11sp2 build config and adapt autodetection
++++++ obs-build-20170112.tar.gz -> obs-build-20170209.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20170112/Build/Arch.pm new/obs-build-20170209/Build/Arch.pm
--- old/obs-build-20170112/Build/Arch.pm 2017-01-12 15:42:22.000000000 +0100
+++ new/obs-build-20170209/Build/Arch.pm 2017-02-09 14:14:40.000000000 +0100
@@ -34,7 +34,7 @@
sub quote {
my ($str, $q, $vars) = @_;
if ($q ne "'" && $str =~ /\$/) {
- $str =~ s/\$([a-zA-Z0-9_]+|\{([^\}]+)\})/$vars->{$2 || $1} ? join(' ', @{$vars->{$2 || $1}}) : "\$$1"/ge;
+ $str =~ s/\$([a-zA-Z0-9_]+|\{([^\}]+)\})/join(' ', @{$vars->{$2 || $1} || []})/ge;
}
$str =~ s/([ \t\"\'\$])/sprintf("%%%02X", ord($1))/ge;
return $str;
@@ -49,7 +49,7 @@
last unless $str =~ s/$q(.*?)$q/quote($1, $q, $vars)/e;
}
if ($str =~ /\$/) {
- $str =~ s/\$([a-zA-Z0-9_]+|\{([^\}]+)\})/$vars->{$2 || $1} ? join(' ', @{$vars->{$2 || $1}}) : "\$$1"/ge;
+ $str =~ s/\$([a-zA-Z0-9_]+|\{([^\}]+)\})/join(' ', @{$vars->{$2 || $1} || []})/ge;
}
my @args = split(/[ \t]+/, $str);
for (@args) {
@@ -67,14 +67,39 @@
return $ret;
}
my %vars;
+ my @ifs;
while (<PKG>) {
chomp;
next if /^\s*$/;
next if /^\s*#/;
- last unless /^([a-zA-Z0-9_]*)=(\(?)(.*?)$/;
+ s/^\s+//;
+ if (/^(el)?if\s+(?:(?:test|\[)\s+(-n|-z)\s+)?(.*?)\s*\]?\s*;\s*then\s*$/) {
+ if ($1) {
+ $ifs[-1] += 1;
+ next if $ifs[-1] != 1;
+ pop @ifs;
+ }
+ my $flag = $2 || '-n';
+ my $t = join('', unquotesplit($3, \%vars));
+ $t = $t eq '' ? 'true' : '' if $flag eq '-z';
+ push @ifs, $t ne '' ? 1 : 0;
+ next;
+ }
+ if (@ifs) {
+ if (/^fi\s*$/) {
+ pop @ifs;
+ next;
+ } elsif (/^else\s*$/) {
+ $ifs[-1] += 1;
+ next;
+ }
+ next if grep {$_ != 1} @ifs;
+ }
+ last unless /^([a-zA-Z0-9_]*)(\+?)=(\(?)(.*?)$/;
my $var = $1;
- my $val = $3;
- if ($2) {
+ my $app = $2;
+ my $val = $4;
+ if ($3) {
while ($val !~ s/\)\s*(?:#.*)?$//s) {
my $nextline = <PKG>;
last unless defined $nextline;
@@ -82,7 +107,11 @@
$val .= ' ' . $nextline;
}
}
- $vars{$var} = [ unquotesplit($val, \%vars) ];
+ if ($app) {
+ push @{$vars{$var}}, unquotesplit($val, \%vars);
+ } else {
+ $vars{$var} = [ unquotesplit($val, \%vars) ];
+ }
}
close PKG;
$ret->{'name'} = $vars{'pkgname'}->[0] if $vars{'pkgname'};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20170112/build new/obs-build-20170209/build
--- old/obs-build-20170112/build 2017-01-12 15:42:22.000000000 +0100
+++ new/obs-build-20170209/build 2017-02-09 14:14:40.000000000 +0100
@@ -105,7 +105,6 @@
CCACHE=
DLNOSIGNATURE=
CACHE_DIR=/var/cache/build
-MYHOSTNAME=
# This is for insserv
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20170112/build-vm new/obs-build-20170209/build-vm
--- old/obs-build-20170112/build-vm 2017-01-12 15:42:22.000000000 +0100
+++ new/obs-build-20170209/build-vm 2017-02-09 14:14:40.000000000 +0100
@@ -34,7 +34,8 @@
vm_img_mkfs_btrfs='mkfs.btrfs'
vm_img_mkfs_xfs='mkfs.xfs -f'
-# guest visible swap device
+# guest visible devices
+VM_ROOTDEV=/dev/hda1
VM_SWAPDEV=/dev/hda2
VM_TYPE=
@@ -58,12 +59,14 @@
VMDISK_CLEAN=
VM_VOLUME_NAME=
VM_VOLUME_SWAP=
+VM_HOSTNAME=
# zvm specific?
-VM_WORKER_NR=
+VM_WORKER_NO=
# kvm specific?
HUGETLBFSPATH=
+VM_CUSTOMOPT=
# emulator specific?
EMULATOR_SCRIPT=
@@ -158,7 +161,7 @@
;;
-vm-worker-nr|-vm-worker-no)
needarg
- VM_WORKER_NR="$ARG"
+ VM_WORKER_NO="$ARG"
shift
;;
-vm-server|-vm-region)
@@ -217,10 +220,14 @@
shift
;;
-vm-disk-mount-options|-vmdisk-mount-options)
- needarg
- # options needs to be quoted to handle argument which might start with "-o ..."
- VMDISK_MOUNT_OPTIONS=$(echo $ARG | sed 's/^\"\(.*\)\"$/\1/g')
- shift
+ needarg
+ VMDISK_MOUNT_OPTIONS="$ARG"
+ # silly code for compat with old bs_worker versions...
+ if test "$1" != "----noarg=$PARAM" -a "$ARG" != "${ARG#\"}" -a "$ARG" != "${ARG%\"}" ; then
+ VMDISK_MOUNT_OPTIONS="${VMDISK_MOUNT_OPTIONS#\"}"
+ VMDISK_MOUNT_OPTIONS="${VMDISK_MOUNT_OPTIONS%\"}"
+ fi
+ shift
;;
-vm-disk-clean|-vmdisk-clean)
# delete old root/swap to get rid of the old blocks
@@ -262,6 +269,11 @@
VM_DEVICEOPT=("${VM_DEVICEOPT[@]}" "$ARG")
shift
;;
+ -vm-custom-opt)
+ needarg
+ VM_CUSTOMOPT="$ARG"
+ shift
+ ;;
-*)
return 1
;;
@@ -518,6 +530,14 @@
mount -n -ttmpfs none /dev/shm
if test -n "$VM_SWAP" ; then
+ if test "$VM_SWAP" != "${VM_SWAP#LABEL=}" ; then
+ i=$(blkid -l -o device -t "$VM_SWAP")
+ if test "$i" = "${i#/}" ; then
+ cleanup_and_exit 1 "could not find swap device with $VM_SWAP"
+ fi
+ echo "resolved swap device $VM_SWAP to $i"
+ VM_SWAP=$i
+ fi
for i in 1 2 3 4 5 6 7 8 9 10 ; do
test -e "$VM_SWAP" && break
test $i = 1 && echo "waiting for $VM_SWAP to appear"
@@ -537,7 +557,7 @@
mkswap "$VM_SWAP"
swapon -v "$VM_SWAP" || exit 1
fi
- HOST="$MYHOSTNAME"
+ HOST="$VM_HOSTNAME"
# repair dracut damage, see bsc#922676
test -L /var/run -a ! -e /var/run && rm -f /var/run
@@ -653,6 +673,10 @@
if test -n "$VM_SWAP" ; then
vm_attach_swap
dd if=/dev/zero of="$VM_SWAP" bs=1024 count=1 conv=notrunc 2>/dev/null
+ if test "$VM_SWAPDEV" != "${VM_SWAPDEV#LABEL=}"; then
+ # call mkswap to set a label
+ mkswap -L "${VM_SWAPDEV#LABEL=}" "$VM_SWAP"
+ fi
vm_detach_swap
# mkswap happens inside of the vm
fi
@@ -776,7 +800,7 @@
esac
test "$VM_TYPE" = lxc -o "$VM_TYPE" = docker && PERSONALITY=0
echo "PERSONALITY='$PERSONALITY'" >> $BUILD_ROOT/.build/build.data
- echo "MYHOSTNAME='`hostname`'" >> $BUILD_ROOT/.build/build.data
+ echo "VM_HOSTNAME='$HOST'" >> $BUILD_ROOT/.build/build.data
echo -n "definesnstuff=(" >> $BUILD_ROOT/.build/build.data
shellquote "${definesnstuff[@]}" >> $BUILD_ROOT/.build/build.data
echo ")" >> $BUILD_ROOT/.build/build.data
@@ -961,8 +985,8 @@
cleanup_and_exit 1 "ERROR: neither /sbin/ifconfig nor /sbin/ip is installed, please specify correct package via -x option"
fi
fi
- if test -n "$MYHOSTNAME" ; then
- hostname "$MYHOSTNAME"
+ if test -n "$VM_HOSTNAME" ; then
+ hostname "$VM_HOSTNAME"
fi
if test -n "$VM_TELNET"; then
echo WARNING: telnet option used, setting up telnet server ${VM_TELNET_DEVICE}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20170112/build-vm-kvm new/obs-build-20170209/build-vm-kvm
--- old/obs-build-20170112/build-vm-kvm 2017-01-12 15:42:22.000000000 +0100
+++ new/obs-build-20170209/build-vm-kvm 2017-02-09 14:14:40.000000000 +0100
@@ -169,15 +169,16 @@
case $kvm_device in
virtio*)
- qemu_rootdev=/dev/disk/by-id/virtio-0
+ VM_ROOTDEV=/dev/disk/by-id/virtio-0
VM_SWAPDEV=/dev/disk/by-id/virtio-1
;;
*)
- qemu_rootdev=/dev/sda
+ VM_ROOTDEV=/dev/sda
VM_SWAPDEV=/dev/sdb
;;
esac
+ test -n "$VM_CUSTOMOPT" && kvm_options="$kvm_options $VM_CUSTOMOPT"
if test -n "$VM_NETOPT" -o -n "$VM_NETDEVOPT" ; then
if test -n "$VM_NETOPT" ; then
for item in "${VM_NETOPT[@]}" ; do
@@ -245,14 +246,14 @@
test "$kvm_console" != ttyAMA0 && kvm_options="$kvm_options -cpu host"
test -n "$HUGETLBFSPATH" && kvm_options="$kvm_options -mem-prealloc -mem-path $HUGETLBFSPATH"
fi
- qemu_rootfstype=""
+ qemu_append="root=$VM_ROOTDEV"
if test -n "$VMDISK_FILESYSTEM" ; then
- qemu_rootfstype="rootfstype=$VMDISK_FILESYSTEM"
+ qemu_append="$qemu_append rootfstype=$VMDISK_FILESYSTEM"
fi
- qemu_rootflags=""
if test -n "$VMDISK_MOUNT_OPTIONS" ; then
- qemu_rootflags="rootflags=${VMDISK_MOUNT_OPTIONS#-o }"
+ qemu_append="$qemu_append rootflags=${VMDISK_MOUNT_OPTIONS#-o }"
fi
+ qemu_append="$qemu_append panic=1 quiet no-kvmclock nmi_watchdog=0 rw rd.driver.pre=binfmt_misc elevator=noop console=$kvm_console init=$vm_init_script"
if test -z "$VM_NETOPT" -a -z "$VM_NETDEVOPT"; then
kvm_options="$kvm_options -net none"
fi
@@ -262,7 +263,7 @@
set -- $qemu_bin -nodefaults -no-reboot -nographic -vga none $kvm_options \
-kernel $vm_kernel \
-initrd $vm_initrd \
- -append "root=$qemu_rootdev $qemu_rootfstype $qemu_rootflags panic=1 quiet no-kvmclock nmi_watchdog=0 rw rd.driver.pre=binfmt_misc elevator=noop console=$kvm_console init=$vm_init_script" \
+ -append "$qemu_append" \
${VM_MEMSIZE:+-m $VM_MEMSIZE} \
"${qemu_args[@]}"
@@ -288,7 +289,7 @@
# ide-hd is the non-virtio default
if test "$kvm_device" = ide-hd ; then
kvm_device=virtio-blk-pci
- qemu_rootdev=/dev/disk/by-id/virtio-0
+ VM_ROOTDEV=/dev/disk/by-id/virtio-0
VM_SWAPDEV=/dev/disk/by-id/virtio-1
fi
fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20170112/build-vm-openstack new/obs-build-20170209/build-vm-openstack
--- old/obs-build-20170112/build-vm-openstack 2017-01-12 15:42:22.000000000 +0100
+++ new/obs-build-20170209/build-vm-openstack 2017-02-09 14:14:40.000000000 +0100
@@ -90,9 +90,8 @@
cleanup_and_exit 3 "ERROR: No VM server nod name specified (usually this instance)."
fi
- # XXX why here?
+ VM_ROOTDEV=/dev/vda
VM_SWAPDEV=/dev/vdb
- qemu_rootdev=/dev/vda
}
vm_attach_root_openstack() {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20170112/build-vm-pvm new/obs-build-20170209/build-vm-pvm
--- old/obs-build-20170112/build-vm-pvm 2017-01-12 15:42:22.000000000 +0100
+++ new/obs-build-20170209/build-vm-pvm 2017-02-09 14:14:40.000000000 +0100
@@ -124,8 +124,8 @@
}
vm_verify_options_pvm(){
- test -z "$VM_WORKER_NR" && VM_WORKER_NR=1
- lpname="worker-$VM_WORKER_NR"
+ test -z "$VM_WORKER_NO" && VM_WORKER_NO=1
+ lpname="worker-$VM_WORKER_NO"
lpartype="AIX/Linux"
bootloader_size="8M"
rootlv="$lpname"-root
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20170112/build-vm-zvm new/obs-build-20170209/build-vm-zvm
--- old/obs-build-20170112/build-vm-zvm 2017-01-12 15:42:22.000000000 +0100
+++ new/obs-build-20170209/build-vm-zvm 2017-02-09 14:14:40.000000000 +0100
@@ -266,7 +266,7 @@
if test -z "$VM_WORKER" ; then
cleanup_and_exit 3 "ERROR: No z/VM worker id specified"
fi
- if test -z "$VM_WORKER_NR" ; then
+ if test -z "$VM_WORKER_NO" ; then
cleanup_and_exit 3 "ERROR: No z/VM worker number specified"
fi
# need the name for a kernel in zvm
@@ -284,7 +284,7 @@
else
cleanup_and_exit 3 "ERROR: No z/VM initrd specified"
fi
- zvm_cp worker_init $VM_WORKER $VM_VOLUME_ROOT $VM_VOLUME_SWAP $VM_WORKER_NR
+ zvm_cp worker_init $VM_WORKER $VM_VOLUME_ROOT $VM_VOLUME_SWAP $VM_WORKER_NO
zvm_cp volume_detach $VM_WORKER $VM_VOLUME_ROOT
zvm_cp volume_detach $VM_WORKER $VM_VOLUME_SWAP
}
@@ -329,7 +329,7 @@
}
vm_attach_root_zvm() {
- VM_IMAGE=$(ZVM_CLEANUP=1 zvm_cp volume_link_local $VM_WORKER $VM_VOLUME_ROOT $zvm_mult_pass $VM_WORKER_NR )
+ VM_IMAGE=$(ZVM_CLEANUP=1 zvm_cp volume_link_local $VM_WORKER $VM_VOLUME_ROOT $zvm_mult_pass $VM_WORKER_NO )
if test "${VM_IMAGE}" = "${VM_IMAGE#dasd}" ; then
cleanup_and_exit 3 "did not get a real device for VM_IMAGE: $VM_IMAGE"
fi
@@ -337,7 +337,7 @@
}
vm_attach_swap_zvm() {
- VM_SWAP=$(ZVM_CLEANUP=1 zvm_cp volume_link_local $VM_WORKER $VM_VOLUME_SWAP $zvm_mult_pass $VM_WORKER_NR )
+ VM_SWAP=$(ZVM_CLEANUP=1 zvm_cp volume_link_local $VM_WORKER $VM_VOLUME_SWAP $zvm_mult_pass $VM_WORKER_NO )
if test "${VM_SWAP}" = "${VM_SWAP#dasd}" ; then
cleanup_and_exit 3 "did not get a real device for VM_SWAP: $VM_SWAP"
fi
@@ -345,20 +345,20 @@
}
vm_detach_root_zvm () {
- zvm_cp volume_detach_local $VM_VOLUME_ROOT $VM_WORKER_NR
+ zvm_cp volume_detach_local $VM_VOLUME_ROOT $VM_WORKER_NO
}
vm_detach_swap_zvm() {
- zvm_cp volume_detach_local $VM_VOLUME_SWAP $VM_WORKER_NR
+ zvm_cp volume_detach_local $VM_VOLUME_SWAP $VM_WORKER_NO
}
vm_cleanup_zvm() {
- if test -n "$VM_WORKER" -a -n "$VM_WORKER_NR" -a -n "$VM_VOLUME_ROOT" -a -n "$VM_VOLUME_SWAP" ; then
+ if test -n "$VM_WORKER" -a -n "$VM_WORKER_NO" -a -n "$VM_VOLUME_ROOT" -a -n "$VM_VOLUME_SWAP" ; then
ZVM_CLEANUP=1
(zvm_cp volume_detach $VM_WORKER $VM_VOLUME_ROOT >/dev/null 2>&1)
(zvm_cp volume_detach $VM_WORKER $VM_VOLUME_SWAP >/dev/null 2>&1)
- (zvm_cp volume_detach_local $VM_VOLUME_ROOT $VM_WORKER_NR >/dev/null 2>&1)
- (zvm_cp volume_detach_local $VM_VOLUME_SWAP $VM_WORKER_NR >/dev/null 2>&1)
+ (zvm_cp volume_detach_local $VM_VOLUME_ROOT $VM_WORKER_NO >/dev/null 2>&1)
+ (zvm_cp volume_detach_local $VM_VOLUME_SWAP $VM_WORKER_NO >/dev/null 2>&1)
fi
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20170112/configs/sl13.3.conf new/obs-build-20170209/configs/sl13.3.conf
--- old/obs-build-20170112/configs/sl13.3.conf 2017-01-12 15:42:22.000000000 +0100
+++ new/obs-build-20170209/configs/sl13.3.conf 2017-02-09 14:14:40.000000000 +0100
@@ -16,7 +16,7 @@
Preinstall: aaa_base attr bash coreutils diffutils
Preinstall: filesystem fillup glibc grep
-Preinstall: libbz2-1 libgcc_s1 m4 libncurses5 libncurses6 pam
+Preinstall: libbz2-1 libgcc_s1 libncurses6 pam
Preinstall: permissions libreadline7 rpm sed tar libz1 libselinux1
Preinstall: liblzma5 libcap2 libacl1 libattr1
Preinstall: libpopt0 libelf1 liblua5_3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/obs-build-20170112/lxc.conf new/obs-build-20170209/lxc.conf
--- old/obs-build-20170112/lxc.conf 2017-01-12 15:42:22.000000000 +0100
+++ new/obs-build-20170209/lxc.conf 2017-02-09 14:14:40.000000000 +0100
@@ -1,3 +1,5 @@
+lxc.aa_profile = lxc-default-with-mounting
+
lxc.cgroup.devices.deny = a
# null
lxc.cgroup.devices.allow = c 1:3 rw