python setup.py install --root=debian/tmp --prefix=/usr
make man
mkdir -p debian/tmp/usr/share/man/man1
+ mkdir -p debian/tmp/usr/share/gbs
install -m644 docs/gbs.1 debian/tmp/usr/share/man/man1
+ install -m644 data/initrd debian/tmp/usr/share/gbs
+ install -m644 data/vmlinuz debian/tmp/usr/share/gbs
for job_name in $(shell ls jenkins-jobs/configs); do \
mkdir -p debian/tmp/var/lib/jenkins/jobs/$$job_name; \
install -m644 jenkins-jobs/configs/$$job_name/config.xml debian/tmp/var/lib/jenkins/jobs/$$job_name; \
if args.rdeps:
cmd_opts += ['--rdeps']
+ if args.kvm:
+ cmd_opts += ['--clean']
+ cmd_opts += ['--vm-type=kvm']
+ cmd_opts += ['--vm-memory=%s' % args.vm_memory]
+ cmd_opts += ['--vm-disk=%s' % args.vm_disk]
+ cmd_opts += ['--vm-swap=%s' % args.vm_swap]
+ cmd_opts += ['--vm-diskfilesystem=%s' % args.vm_diskfilesystem]
+ if not os.path.exists(args.vm_initrd):
+ raise GbsError("Check file to exists vm-initrd")
+ cmd_opts += ['--vm-initrd=%s' % args.vm_initrd]
+ if not os.path.exists(args.vm_kernel):
+ raise GbsError("Check file to exists vm-kernel")
+ cmd_opts += ['--vm-kernel=%s' % args.vm_kernel]
+
if args.icecream > 0:
cmd_opts += ['--icecream=%s' % args.icecream]
cmd_opts += ['--threads=%s' % args.threads]
+ if args.kvm:
+ loopdev = len([name for name in os.listdir('/dev') if bool(re.search("loop[0-9]",name))])
+ if not args.threads < loopdev:
+ raise GbsError('When using the kvm, loop device should be larger than the threads option.')
cmd_opts += ['--packaging-dir=%s' % get_packaging_dir(args)]
return cmd_opts
%{__python} setup.py install --prefix=%{_prefix} --root=%{buildroot}
mkdir -p %{buildroot}/%{_prefix}/share/man/man1
+mkdir -p %{buildroot}/%{_prefix}/share/gbs
install -m644 docs/gbs.1 %{buildroot}/%{_prefix}/share/man/man1
+install -m644 data/initrd %{buildroot}/%{_prefix}/share/gbs
+install -m644 data/vmlinuz %{buildroot}/%{_prefix}/share/gbs
# Install Jenkins Jobs
for job_name in $(ls jenkins-jobs/configs)
%files
%defattr(-,root,root,-)
%doc README.rst docs/RELEASE_NOTES
+%dir %{_prefix}/share/gbs
%{_mandir}/man1/*
+%{_prefix}/share/gbs/*
%{python_sitelib}/gitbuildsys/cmd_build.py*
%{python_sitelib}/gitbuildsys/cmd_changelog.py*
%{python_sitelib}/gitbuildsys/cmd_chroot.py*
'build root')
group.add_argument('--use-higher-deps', action='store_true',
help='Which repo provides higher version deps, use it')
+ group.add_argument('--kvm', action='store_true',
+ help='Launch a kvm machine to build package instead of using chroot')
+ group.add_argument('--vm-memory', type=int, default=4096,
+ help='The memory size of kvm machine')
+ group.add_argument('--vm-disk', type=int, default=32768,
+ help='The disk size of kvm machine')
+ group.add_argument('--vm-swap', type=int, default=8192,
+ help='The swap size of kvm machine')
+ group.add_argument('--vm-diskfilesystem', type=str, default='ext4',
+ help='The filesystem type of kvm machine')
+ group.add_argument('--vm-initrd', type=str, default='/usr/share/gbs/initrd',
+ help='The initrd of kvm machine')
+ group.add_argument('--vm-kernel', type=str, default='/usr/share/gbs/vmlinuz',
+ help='The kernel of kvm machine')
group = parser.add_argument_group('speed up building options')
group.add_argument('--incremental', action='store_true',