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
At least since 2020-08-09 RSA signing of kernel modules is broken in
openSUSE:Factory:RISCV, producing bad signatures that cannot be verified
against the included certificate:
$ modsign-verify -v -v --cert-dir etc/uefi/certs sunrpc.ko
Signature type: pkcs#7
Signed by: cn=openSUSE Secure Boot CA,serial=1
Hash algorithm: sha256
Trying etc/uefi/certs/188EA6FA.crt
Found matching certificate etc/uefi/certs/188EA6FA.crt
RSA operation error
140060768991040:error:0407008A:rsa routines:RSA_padding_check_PKCS1_type_1:invalid padding:crypto/rsa/rsa_pk1.c:67:
140060768991040:error:04067072:rsa routines:rsa_ossl_public_decrypt:padding check failed:crypto/rsa/rsa_ossl.c:648:
sunrpc.ko: signature validation failed for etc/uefi/certs/188EA6FA.crt
sunrpc.ko: bad signature
IIUC the signature appears to be created with a private key that doesn't
match the public key in etc/uefi/certs/188EA6FA.crt. Since the problem
does not occur if the same kernel is built in a different project, there
is no fundamental problem with signature creation or verification. The
last working kernel was built on 2020-08-01 in o:F:RISCV (which verifies
properly using the same certificate).
I note that the certificate has a serial number of 1. Isn't that serial
number supposed to be unique?
Andreas.
--
Andreas Schwab, SUSE Labs, schwab(a)suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."
--
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe(a)opensuse.org
To contact the owner, e-mail: opensuse-buildservice+owner(a)opensuse.org
Hi all,
I noticed a few minutes ago that buildhosts seem to be unable to create
SCTP sockets. For instance, a call to something like this would fail:
fd = socket(AF_INET, SOCK_STREAM, IPPROTO_SCTP);
So the socket call is returning -1 and strerror(errno) shows:
"Protocol not supported"
Which to me means the kernel in use doesn't seem to have sctp built-in
or the host is somehow configured to prevent loading it.
So now the question is, am I correct with my understanding? And if
that's the case, is there any good reason to disable support for SCTP?
Having no SCTP support in the kernel means I need to disable some unit
tests of the package I'm building (libosmocore), which verify that APIs
work well on different distributions (versions) and architectures.
PS: Please add me in CC to answers.
--
- Pau Espin Pedrol <pespin(a)sysmocom.de> http://www.sysmocom.de/
=======================================================================
* sysmocom - systems for mobile communications GmbH
* Alt-Moabit 93
* 10559 Berlin, Germany
* Sitz / Registered office: Berlin, HRB 134158 B
* Geschaeftsfuehrer / Managing Director: Harald Welte
--
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe(a)opensuse.org
To contact the owner, e-mail: opensuse-buildservice+owner(a)opensuse.org
Or at least I see a lot of Uyuni packages for SLE12 clients failing with:
[ 326s] ### WATCHDOG TRIGGERED, KILLING VM ###
[ 327s] /var/cache/obs/worker/root_18/root: 7386
[ 327s] qemu-system-aarch64: terminating on signal 15 from pid 23059 ()
[ 327s] ### VM INTERACTION END ###
[ 327s] /var/run/obs/worker/18/build/build-vm: line 465: kill: (7379) - No
such process
[ 327s] No buildstatus set, either the base system is broken (kernel/initrd/
udev/glibc/bash/perl)
[ 327s] or the build host has a kernel or hardware problem...
At https://build.opensuse.org/project/show/
systemsmanagement:Uyuni:Master:SLE12-Uyuni-Client-Tools and https://
build.opensuse.org/project/show/systemsmanagement:Uyuni:Master:SLE12-Uyuni-
Client-Tools:Build-Dependencies
The packages that are failing didn't really change lately (most of all at
least), but they got a rebuild because of a changes on SLE12 dependencies)
(failures are happening at different workers, but always with the same error,
so far I saw 1, 18, 22, 30, 38 and 39 failing).
Best regards.
--
Julio González Gil
Release Engineer, SUSE Manager and Uyuni
jgonzalez(a)suse.com
Hi,
I would like to push the maps apps that I develop to OpenSUSE OBS and
would like to ask someone to review and give feedback regarding the
approach. In the longer term, I am planning to build Nemo Mobile on
the basis of OpenSUSE or Fedora / ARM as well. So, it would be great
to get an approach checked before a larger number of packages will be
converted from Sailfish OBS. As for my background, maps stack was
developed originally for Sailfish and later ported to Linux desktop.
All has been compiled and maintained on Sailfish OBS, which has a
somewhat different setup and source services.
In particular, I am interested in _service and rpm spec's. As an
example, please consider
https://build.opensuse.org/package/show/home:rinigus:scratchbox/rrdtool
. This is just a small example which is used for learning and will be
removed later. In my case, all or most of the packages are in git and
contain RPM spec's. In the case of that example, it is a separate repo
with the packaged code as a submodule - practice used for many
Sailfish packages.
The current _service is failing for me and I am not sure it is
possible to get what I want:
<services>
<service name="obs_scm">
<param name="url">https://github.com/rinigus/pkg-rrdtool.git</param>
<param name="scm">git</param>
<param name="revision">suse</param>
<param name="extract">rpm/*</param>
<param name="filename">rrdtool</param>
<param name="version">_none_</param>
</service>
<service mode="buildtime" name="tar" />
<service mode="buildtime" name="recompress">
<param name="file">*.tar</param>
<param name="compression">xz</param>
</service>
</services>
I would like source service to
1. pull sources from git (this works)
2. extract SPEC from pulled sources (this works)
3. not to mingle with the version and use version from SPEC
4. on build, create tar in format filename-version.tar.xz
5. unpack and use the same setup as was done before: %setup -q -n
%{name}-%{version}/rrdtool in this case.
I know that I can skip source packing into tar and then use "%setup -q
-n %_sourcedir/%{name}/rrdtool -T -D" in SPEC as well specify _service
as a source. Ideally, I would keep spec as it is and prepare through
services.
Is it possible? If it is, what should I change?
Thanks for help,
Rinigus
--
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe(a)opensuse.org
To contact the owner, e-mail: opensuse-buildservice+owner(a)opensuse.org
Hi,
I'm not sure if my message will already get through but I'll try anyway.
I haven't logged into OBS for a while but I used to have an account.
Now my login doesn't work anymore, is this related to the whole
restructuring of SUSE in the last year? I get redirected to
https://idp-portal.suse.com/univention/self-service/#page=passwordreset and
apparently my username is not known to the system anymore.
I'd appreciate if anyone could explain where my account is and how to
enable it again. Or do I need to create a new account? I already have
several and would like to avoid that if possible.
Thank you and best regards,
Eugen
--
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe(a)opensuse.org
To contact the owner, e-mail: opensuse-buildservice+owner(a)opensuse.org
Are there more complete instructions for creating a KVM-based OBS worker?
I am aiming for OBS workers based off of a minimal openSUSE base install (either the openSUSE Leap cloud image or NET .iso).
I can get this to work with a VM install of the OBS appliance (I have both of the .iso and the .qcow2 installs working, as VMs. I do not have the .iso working as a bare metal install, which is confounding…). I would prefer my OBS workers are not full appliance installs.
The best instructions I can find are via the code (dist/obsworker and dist/sysconfig.obs-server), namely: to ensure the qemu-kvm package is installed, and that virtualization is available (this requires the correct BIOS settings, and nested virtualization, in the case of a VM).
elif [ -e /dev/kvm -a -x /usr/bin/qemu-kvm ] ; then
Further, dist/sysconfig.obs-server offers this:
# for KVM, you have to create with (example for openSUSE 11.2):
#
# export rootfstype="ext4"
# mkinitrd -d /dev/null -m "ext4 binfmt_misc virtio_pci virtio_blk" -k
#vmlinuz-2.6.31.12-0.2-default -i initrd-2.6.31.12-0.2-default-obs_worker
#
# a working initrd file which includes virtio and binfmt_misc for OBS in order
#to work fine
This is not proving sufficient. On the base openSUSE cloud images, qemu-kvm fires up, and then just hangs there, and eventually times out. There is very little in the way of error messaging or logs here.
Digging further, on an existing OBS appliance install, I find a more complete list of kernel modules here (/etc/dracut.conf.d/03-my-obs.conf), but "zypper wp ..." ("what provides") on that file does not reveal anything. Also, this file does not seem to be in the open-build-service git repo.
force_drivers+="loop dm-mod dm-snapshot binfmt-misc fuse kqemu squashfs ext2 ext3 ext4 reiserfs nf_conntrack_ipv6 binfmt_misc virtio_pci virtio_mmio virtio_blk virtio-rng fat vfat nls_cp437 nls_iso8859-1 ibmvscsi ibmvscsic"
This longer list indicates that there might be more complete instructions floating around that I can not find.
Can someone clarify what additional packages are needed on top of an openSUSE base install in order to get KVM-based OBS workers? (If documentation for this does not exist, if someone could guide me here, I would be happy to write a draft of that documentation.
---
Phil King
phil(a)cpanel.net
--
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe(a)opensuse.org
To contact the owner, e-mail: opensuse-buildservice+owner(a)opensuse.org
Hello,
I want to update the package ja2-stracciatella in the games repository
to version 0.17.0.
https://build.opensuse.org/package/show/home:Kieltux:branches:games/ja2-str…
The new version needs the library string_theory which is not available
for openSUSE.
The build process wants to download string_theory from github, because
it is not found.
[ 36s] Scanning dependencies of target string_theory
[ 36s] [ 12%] Creating directories for 'string_theory'
[ 37s] [ 25%] Performing download step (download, verify and extract)
for 'string_theory' [ 37s] -- Downloading...
[ 37s]
dst='/home/abuild/rpmbuild/BUILD/ja2-stracciatella-0.17.0/build/dependencies/lib-string_theory/builder/string_theory-prefix/src/3.1.tar.gz'
[ 37s] timeout='none' [ 37s] -- Using
src='https://github.com/zrax/string_theory/archive/3.1.tar.gz' [ 37s]
-- Retrying...
Can I add string_theory (string_theory-3.1.tar.gz) manually to the
package and patch the build process?
Thank you,
Carsten
--
Well, since MS cant be sure of the username of someone downloading
things, they are going to play it safe and have everything dowloaded
and executed by Explorer as suid root. That way, it will run on ANY
system anywhere. :)
-- George Bonser <grep(a)cris.com>
Hello!
We are back with a revised navigation structure: a fixed left column
where the main navigation elements are always visible. Take a look at
our blog post to discover the benefits we think this solution brings.
https://openbuildservice.org/2020/08/17/left-side-navigation
The Build Solutions Team
--
Saray A. Cabrera Padrón | scabrerapadron(a)suse.de | scabrerapadron(a)suse.com
Full Stack Web Developer - Open Build Service
SUSE Linux GmbH, Maxfeldstr. 5, D-90409 Nürnberg
Tel: +49-911-74053-0; Fax: +49-911-7417755; https://www.suse.com/
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard,
Graham Norton, HRB 21284 (AG Nürnberg)