Commit graph

134 commits

Author SHA1 Message Date
Thomas Haller
cd8b1cc284 build-from-source: skip test checking for gtk-doc issue
For libnm, we use opaque types. gtk-doc has/had an issue parsing
this code, and generates suboptimal documentation.

There is a merge request against gtk-doc to address that [1].

However, there is also a `make check` test, which tries to determine
whether gtk-doc is suitable [2].

When building for beaker, we don't need this check. Also, because likely
beaker is not up to the task.

[1] https://gitlab.gnome.org/GNOME/gtk-doc/merge_requests/2
[2] https://github.com/NetworkManager/NetworkManager/pull/196
2018-09-08 11:44:34 +02:00
Thomas Haller
d8f99fe901 build-from-source: fix checking-out branches by name (2)
git doesn't like to fetch into a local branch which is currently
checked out.

  $ git fetch origin --prune
  fatal: Refusing to fetch into current branch refs/heads/master of non-bare repository

We need to first checkout a plain commit (detached HEAD).

Fixes: 2f67ac9eaf
2018-04-23 15:45:22 +02:00
Thomas Haller
b7ba495aa9 build-from-source: fix checking-out branches by name
Without it, `git checkout -B nmbuild nm-1-10` will fail, because
there is no local branch refs/heads/nm-1-10. Previously, it worked
because there was (one) refs/remotes/origin/nm-1-10, so if we didn't
specify "-B" option, git would create a remote-tracking local branch.

Fix it, by fetching the remote branches as local branches.

Fixes: 2f67ac9eaf
2018-04-23 13:27:19 +02:00
Thomas Haller
2f67ac9eaf build-from-source: also fetch refs for pull requests when building
When somebody creates a pull request against NetworkManager's github
repository, the github repository itself usually doesn't have a branch
that references the pull request.

Hence, the commit will not be fetched by default and checking out
the commit will fail.

Also add and fetch the refs for the pull request.
2018-04-22 09:39:19 +02:00
Thomas Haller
01c880540b build-from-source: set $BUILD_SNAPSPOT to specify snapshot part of package version
Makes use of the new --snapshot option for build_clean.sh,
see 86a18b2df (contrib/rpm: make "snapshot" for package version
configurable via script).
2018-02-09 17:38:35 +01:00
Beniamino Galvani
16d2238316 build-from-source: install libasan and, if available, libubsan
They are needed for sanitizer builds.
2018-02-08 08:59:32 +01:00
Beniamino Galvani
42db29a235 build-from-source: install strace
It is needed when users select to run NM under strace.
2017-09-21 08:49:24 +02:00
Thomas Haller
a8993c5afd build-from-source: support building --with sanitizer and explicitly disable debug
When not specifying --with/--without debug, the default depends on the
version number. Hence, we should always explicitly enable or disable
the debug flag.

Also, add support for --with sanitizer.
2017-05-24 11:57:17 +02:00
Beniamino Galvani
59421b7e7e build-from-source: install libcurl and libpsl packages 2017-03-24 09:21:32 +01:00
Beniamino Galvani
3b67d8ed98 build-from-source: print hash of commit being built
Makes easier to analyze logs and troubleshoot failures.
2017-03-09 11:03:35 +01:00
Vladimir Benes
abba3102fb build-from-source: git clone two times via different ways 2017-02-24 21:56:34 +01:00
Vladimir Benes
ae8e191d88 automation: clone from github instead of anongit.freedesktop.org
It looks that freedesktop blocks our git clone requests from time to
time. Github should handle more loads.

https://github.com/NetworkManager/NetworkManager/pull/13
2017-02-14 12:09:54 +01:00
Beniamino Galvani
af96dc02cd rh-bkr: update jenkins builds host 2016-07-18 09:58:41 +02:00
Lubomir Rintel
fe42d5ed4e contrib/rh-bkr: brew moved 2016-04-05 14:29:40 +02:00
Lubomir Rintel
5dcf4458b3 contrib/rh-bkr: default to RTT_ACCEPTED 2016-04-05 13:42:22 +02:00
Lubomir Rintel
8485ddb161 contrib/rh-bkr: master tests now run with all branches 2016-04-05 13:42:05 +02:00
Lubomir Rintel
5bcc6ac784 contrib/rh-bkr: allow noarch packages 2016-03-24 09:57:24 +01:00
Lubomir Rintel
b4d8024f3b contrib/rh-bkr: ensure there's needed packages 2016-03-22 10:43:19 +01:00
Lubomir Rintel
1890c816a9 contrib/rh-bkr: don't upgrade NetworkManager to distribution version 2016-03-21 17:17:06 +01:00
Lubomir Rintel
f4505bd88a contrib/rh-bkr: add a warning 2016-03-09 15:39:42 +01:00
Lubomir Rintel
834c331f68 contrib/rh-bkr: default to RHEL 7 if distro unspecified 2016-03-07 14:56:58 +01:00
Lubomir Rintel
e804b0614a contrib/rh-bkr: add --valgrind flag
Installs valgrind and provides a template for vgdb enabled valgrind-wrapped
service. The test harness is expected to pick this up, finish the setup and
eventually make use of it.
2016-03-05 00:37:53 +01:00
Beniamino Galvani
fa7ea3d5a3 rh-bkr: install jansson-devel package when building from sources
It will be required to build the teamd device plugin.
2016-02-29 23:13:03 +01:00
Thomas Haller
9a06d42476 rh-bkr: allow WITH_DEBUG option for "build-from-source.sh"
Since 87dc14476b we can enable
more assertions when building the RPM package. Allow passing
that option to "build-from-source.sh" by setting environment
"WITH_DEBUG=yes".
2016-02-02 20:04:03 +01:00
Thomas Haller
b33afa291a rh-bkr: build package for beaker script in beaker task
Building NetworkManager during kickstart has the serious disadvantage
that we don't yet run the installed system. E.g. if the kernel has
issues there, it fails `make check` of the build process, although
the later run kernel is fine.

Also, a failure during kickstart does not allow to access the machine
later to inspect the failure reason (e.g. the testing logfiles).

Instead, move the building to a separate script and run it as a beaker
task.
2016-01-14 17:45:56 +01:00
Thomas Haller
1d2133d8b8 rh-bkr: better handle setting DISTREQUIRES 2016-01-13 18:27:47 +01:00
Thomas Haller
71388f0525 rh-bkr: print test logging in kickstart if check fails 2016-01-06 10:10:20 +01:00
Lubomir Rintel
0ac16a0d3f contrib/rh-bkr: default to using the old reservesys task
The new one doesn't support returning or extending. It can still be used with
--reservesys=new.

Revert "contrib/bkr: update specifying reservesys"
This reverts commit 96f49913c4.
2015-12-16 17:12:45 +01:00
Lubomir Rintel
12728813b6 rh-bkr: yum downgrade may return 1 if there's nothing to do 2015-12-03 11:42:10 +01:00
Lubomir Rintel
7b4e728e11 rh-bkr: fix run without RPM_LIST 2015-12-03 11:41:48 +01:00
Lubomir Rintel
b16c00155a rh-bkr: fix the downgrade/install
No need to install the NetworkManager-wifi separately and update yum. Also,
downgrade succeeding doesn't mean we have all the wanted packages.
2015-12-02 16:02:38 +01:00
Lubomir Rintel
2d0b65de30 rh-bkr: rename GIT_URL and GIT_TESTBRANCH
GIT_URL conflicts with Jenkins' use. Rename it to something more sensible and
rename the GIT_TESTBRANCH for consistency as well.
2015-11-26 12:10:35 +01:00
Lubomir Rintel
9a07d099cf rh-bkr,jenkins: Remove the GIT_URL setting 2015-11-26 10:10:52 +01:00
Thomas Haller
54c85b1e7a contrib/bkr: choose by default DISTRO_VARIANT="Server"
For non-x86_64 archs, only the Server flavor exists.
2015-11-23 10:40:13 +01:00
Thomas Haller
25ee2f0de6 contrib/rh-bkr: change configuration file setup by bkr.py's job template
We want to reserve configuration-files "90-*" and larger for the tests
themselves. So, place our config file at "85-".
2015-11-20 17:11:52 +01:00
Thomas Haller
91762c38b1 contrib/rh-bkr: support special ARCH "<random>" in jenkins script 2015-11-20 15:42:51 +01:00
Thomas Haller
4b6f93bf8a contrib/rh-bkr: don't enable WiMAX for beaker test build
WiMAX is no longer available on RHEL-7, thus beaker cannot
build it (only relevant for nm-1-0 branch).
2015-11-20 14:42:56 +01:00
Thomas Haller
e319e59d75 contrib/rh-bkr: fix jenkins script to schedule beaker jobs 2015-11-16 16:12:40 +01:00
Thomas Haller
92c9439b34 contrib/rh-bkr: update build-directory during kickstart
Using /tmp/nm-build is not great because then the build directory
is gone after reboot. Let's use /root/nm-build.
2015-11-12 22:20:33 +01:00
Thomas Haller
cea05e1a07 contrib/rh-bkr: refactor RPM scheme handlers in bkr.py
Get rid of UploadFileSsh. This was hardly used because it
is cumbersome to use. Also, the default scheme was file://
if no scheme was given, which makes this especially non-useful.

Replace it by a new provider RPM, so that you can just specify
any rpms you want to install, like --rpm package1,package2.

Also, drop the no longer needed init() and prepare() steps.

Finally, rename UploadFile* classes to RpmScheme*.
2015-11-12 22:00:04 +01:00
Thomas Haller
517e901b98 contrib/rh-bkr: add jenkins.sh script to schedule beaker job from CI/Jenkins
Also support new environment variables or fix handling so that
they become usable as parameters from Jenkins
2015-11-12 21:22:07 +01:00
Thomas Haller
2b19146b6a contrib/rh-bkr: fix kickstart without RPMs 2015-11-12 21:07:22 +01:00
Thomas Haller
0b5d1ff880 contrib/rh-bkr: add options to wait for beaker job completion and fetch results
Needed to integrate with jenkins.
2015-11-12 17:16:58 +01:00
Vitezslav Humpa
7e71af8c0e contrib/rh-bkr: fix script for Python 2.6 and parse klist output 2015-11-12 16:35:14 +01:00
Lubomir Rintel
40b4445d87 contrib/rh-bkr: fix installation 2015-11-12 13:13:51 +01:00
Thomas Haller
7c84abde83 contrib/rh-bkr: add --build-id argument
Extend the job-template to allow building NM from source during
the test. By passing "--build-id master", the test will first
git-clone the repository of NetworkManager and build an RPM
of the selected commit.

This saves you to first build NetworkManager and then use
"--rpm brew://" or similar.
2015-11-11 16:51:32 +01:00
Lubomir Rintel
b8f8a6caf6 contrib/rh-bkr: use $DISTRO_TAG and RTT_ACCEPTED tag
Prefer to use $DISTRO_TAG for choosing the image.

Add new variable $DISTROREQIRES which can be used to explicitly
set the XML to require a certain distoro, like
  --var 'DISTROREQIRES=<distro_name op="=" value="$DISTRO_NAME"/>'

If omitted, it will try to detect the correct setting as following:

If you specify $DISTRO_TAG, it will result in:
    <distro_family op="=" value="$DISTRO_FAMILY"/>
    <distro_tag op="=" value="$DISTRO_TAG"/>

If you omit $DISTRO_TAG, but specify $DISTRO_NAME you get
instead:
    <distro_name op="=" value="$DISTRO_NAME"/>

Finally, if you don't specify anything at all, it will try to
autodetect $DISTRO_TAG based on the $GIT_TARGETBRANCH. So, this
is what you actually want. Don't specify anything at all, it
should detect it correctly already.

Co-Authored-By: Thomas Haller <thaller@redhat.com>
2015-11-09 13:17:55 +01:00
Thomas Haller
16e342cf13 contrib/rh-bkr: add dummy RPM provider "none"
If you don't want to install any RPMs, this will lead to an
error sustituing $RPM_LIST template.

Add a dummy provider that can be used:

  ./bkr.py submit -r none ...

You are still expected to explicitly pass the -r argument.
We don't want to interpret a missing argument as "none" by
default, because it's a rather uncommon usecase.
2015-10-27 10:51:05 +01:00
Thomas Haller
3e5ca284b7 contrib/rh-bkr: add -J option to use default job template
There is a default job template "job01.xml" which is usually
used. Allow chosing this job template without explicitly
requiring the filename.
2015-10-23 13:53:00 +02:00
Thomas Haller
8014cee2fe contrib/rh-bkr: update host requirements for inifiniband tests 2015-10-23 13:39:50 +02:00