Hello,
Long running compilation can now leverage ccache[1] to speed up the
build process. This feature can be enabled per package in the project
config:
BuildFlags: useccahe:<packagename>
example:
https://build.opensuse.org/projects/home:sjamgade:branches:science:machinel…
Once enabled per package, it will be enabled for all architectures and
repositories.
https://openbuildservice.org/help/manuals/obs-user-guide/cha.obs.prjconfig.…
(grep ccache)
---
The ccache tar file is collected only on *successful builds with changed
result*. It is extracted for every build at /.ccache/ if enabled.
This build artifact is not versioned and only the latest tar is stored.
It can be downloaded from the webui or osc.
https://build.opensuse.org/package/binaries/home:sjamgade:branches:science:…
osc getbinaries --ccache -M standard
home:sjamgade:branches:science:machinelearning tensorflow
openSUSE_Tumbleweed x86_64 _ccache.tar osc getbinaries --ccache $prj
$pkg $repo $arch _ccache.tar
This archive can be further used for local builds too.
osc build --pkg-ccache /full/path/to/_ccache.
(please use the latest osc)
---
Ccache config file is stored in /.ccache/ccache.conf and is writable by
the build user. So, it could also be disabled (or configured as per
package requirements)
echo "disable = true" >> /.ccache/ccache.conf
For possible build time comparisons:
https://build.opensuse.org/packages/tensorflow:standard/job_history/home:sj…https://w3.nue.suse.com/~sjamgade/ccachereport.html
Thank you,
Sumit Jamgade and OBS Team
[1] - https://ccache.dev/
PS:
Some packages (eg: tensorflow) need extra plumbing in spec file to
enable access to /.ccache and use of ccache cmd:
export CC_PREFIX=ccache;
ln -s /.ccache/ ~/.ccache
--
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe(a)opensuse.org
To contact the owner, e-mail: opensuse-buildservice+owner(a)opensuse.org
Hi OBS users,
we need to do a little database maintenance on Saturday at 21:00 UTC.
The buildservice will not be available for about 30 minutes.
The build service will still schedule and finish builds in that time,
but the API and the Web UI will not be available.
Thanks for your understanding and have a nice weekend,
Michael.
--
Michael Schroeder SUSE Software Solutions Germany GmbH
mls(a)suse.de GF: Felix Imendoerffer HRB 36809, AG Nuernberg
main(_){while(_=~getchar())putchar(~_-1/(~(_|32)/13*2-11)*13);}
--
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe(a)opensuse.org
To contact the owner, e-mail: opensuse-buildservice+owner(a)opensuse.org
Hello,
I recently obtained an aarch64 server which runs aarch32 code just fine.
However, OBS does not recognize that it can run aarch32 code and reports
it as "nativeonly" to the dispatcher. Looking through the dispatcher
code shows that it's examining a set of flags from /proc/cpuinfo to
determine if aarch32 is supported, and my particular flags:
processor : 0
BogoMIPS : 80.00
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer : 0x50
CPU architecture: 8
CPU variant : 0x3
CPU part : 0x000
CPU revision : 2
are not recognized as supporting aarch32. For reference, we have another
server which is recognized:
processor : 0
BogoMIPS : 500.00
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
CPU implementer : 0x41
CPU architecture: 8
CPU variant : 0x1
CPU part : 0xd07
CPU revision : 2
Is the code simply out of date, or is there a reason why my server's CPU
is not included?
Kyle
Hey,
another small bugfix release for 2.10 bringing some dependency updates
with security fixes for:
CVE-2020-15169: Potential XSS vulnerability in Action View
CVE-2020-8184: Percent-encoded cookies can be used to overwrite
existing prefixed cookie names
GHSA-g6wq-qcwm-j5g2: ReDoS vulnerability in Sec-WebSocket-Extensions
parser
GHSA-vr8q-g5c7-m54m: Nokogiri::XML::Schema trusts input by default,
exposing risk of an XXE vulnerability
Package updates are available from the OBS:Server:2.10 repository
https://build.opensuse.org/project/show/OBS:Server:2.10
The appliance can be downloaded from
http://openbuildservice.org/download
Happy (secure) building,
Henne, the OBS Team
--
Henne Vogelsang
http://www.opensuse.org
Everybody has a plan, until they get hit.
- Mike Tyson
Hi,
I'm using the "Alternative method of creating Debian packages", as
described at
https://en.opensuse.org/openSUSE:Build_Service_Debian_builds#An_Alternative…
(i.e. debtransform).
I now have a package which needs slightly different build dependencies
for different Ubuntu/Debian versions. How can I specify those?
Additionally, I'd be quite interested in a way to reduce the duplication
of the build dependencies, which currently are listed twice, once in the
*.dsc file, and once in the debian.control file. Is there a way of doing so?
Thank you!
Philipp
Dear OBS team,
at Osmocom, we are building a number of packages each night. Last night, we encounter
massive build failures, with tons of packages failing to build on dpkg distributions.
They all fail with "Can't mount root filesystem", as can be seen in the snippet below:
[ 9s] ### VM INTERACTION START ###
[ 9s] Using UART console
[ 9s] /usr/bin/qemu-kvm -nodefaults -no-reboot -nographic -vga none -cpu host -object rng-random,filename=/dev/random,id=rng0 -device virtio-rng-pci,rng=rng0 -runas qemu -net none -kernel /boot/kernel.obs.guest -initrd /boot/initrd.obs.guest -append root=/dev/disk/by-id/virtio-0 rootfstype=ext3 rootflags=data=writeback,nobarrier,commit=150,noatime ext4.allow_unsupported=1 mitigations=off panic=1 quiet no-kvmclock elevator=noop nmi_watchdog=0 rw rd.driver.pre=binfmt_misc console=ttyS0 init=/.build/build -m 8192 -drive file=/var/cache/obs/worker/root_12/root,format=raw,if=none,id=disk,cache=unsafe -device virtio-blk-pci,drive=disk,serial=0 -drive file=/var/cache/obs/worker/root_12/swap,format=raw,if=none,id=swap,cache=unsafe -device virtio-blk-pci,drive=swap,serial=1 -serial stdio -chardev socket,id=monitor,server,nowait,path=/var/cache/obs/worker/root_12/root.qemu/monitor -mon chardev=monitor,mode=readline -smp 8
[ 9s] c[?7l[2J[0mSeaBIOS (version rel-1.14.0-0-g155821a-rebuilt.opensuse.org)
[ 15s] Booting from ROM..c[?7l[2J[ 5.378108] dracut-mount[367]: Warning: Can't mount root filesystem
We're seeing this for
* Debian 8, 9, 10, Testing, Unstable
* Ubuntu 18.04, 19.04, 19.10, 20.04, 20.10
See for example https://build.opensuse.org/package/live_build_log/network:osmocom:nightly/l…
I would expect this is a generic problem, and not with one specific build slave/node
only, as it happens to a number of packages, also when re-triggered. I'd assume chances
are low that all those builds and re-builds always end up on one specific broken slave.
Any help is appreciated.
Thanks!
--
- Harald Welte <laforge(a)gnumonks.org> http://laforge.gnumonks.org/
============================================================================
"Privacy in residential applications is a desirable marketing option."
(ETSI EN 300 175-7 Ch. A6)
Centos_8_Stream builds are unresolvable on build.opensuse.org due to the following issue:
unresolvable: have choice for centos-release: centos-linux-release centos-stream-release, have choice for system-release needed by setup: centos-linux-release centos-stream-release
See the GPXSee build (https://build.opensuse.org/package/show/home:tumic:GPXSee/gpxsee) for an example.
I am able to use "osc build vm-memory 14336" for a package build on my
local machine.
Is there a way to pass the vm-memory parameter when package is built in
OBS workers ?
I did not found anything about that in online OBS doc
https://openbuildservice.org/files/manuals/obs-user-guide.pdf
(the <memory> in _constraints is not used for that)
--
Michel Normand
Hi,
I am still working on verifying as many openSUSE package binaries as
possible and openSUSE:Factory often gives me trouble.
1) One aspect is that prjconf changes over time and building identical
sources with identical BuildRequires binaries can then yield different
reults. Part of the solution was implemented in
https://github.com/openSUSE/open-build-service/issues/10020
2) there are some binaries involved in builds that are not published.
examples include
yast2-schema
borgmatic
that pull in systemd-mini, udev-mini and their subpackages.
Some of the trouble might be because Factory does not do full rebuilds.
Would it help break rebuild cycles, if OBS knew which packages dont
build reproducibly? E.g. atm for Ring0/bootstrap: bison, gcc10, python38
I workarounded this one for now by manually substituting the missing
rpms with older
openSUSE:Factory/standard/x86_64/systemd-mini-devel-246.9-1.1.x86_64.rpm
and friends.
3) for example our terminator package
I cannot do a verification build here, because when I supply old
binaries to osc build -p deps
OBS complains
unresolvable: have choice for python3-attrs >= 17.4.0 needed by
python3-pytest: python3-attrs python38-attrs
Is there a way to have osc build with only the supplied local old
binaries and nothing pulled from OBS?
Ciao
Bernhard M.