Commit Graph

222 Commits

Author SHA1 Message Date
Mario Limonciello
a9d7c365d7 contrib: Install new arch keyring package immediately (Fixes #399)
Fixes problems with umockdev package signed with a key not in base.
2018-02-13 14:13:49 -06:00
Mario Limonciello
1b907a7d25 Drop docbook dependencies 2018-02-09 17:26:18 +00:00
Mario Limonciello
95e75c1f4d contrib/ci: Simplify docker matrix
Building:
The Dockerfile really is just an intermediary file.  While building it the
container can be built too all in one shot. No need to git ignore the
intermediary file any more as a result.

Running:
Dockerfiles support default entry points which means one docker command
can be used for starting all of them.
2018-02-02 19:55:36 +00:00
Mario Limonciello
b0398b00cf Revert "ubuntu: depend on appstream-glib 0.7.4 too"
This reverts commit 47ff62b986.

This lets master build on Ubuntu 17.10.
Ubuntu 17.10 doesn't have the newer appstream-glib, so reverting
this commit means Ubuntu 17.10 can't use the HWID's stuff from
b8f8db2082
without a manual backport.

Ubuntu 18.04 and later already have the newer appstream-glib
though, so they will get the HWIDs functionality
2018-01-12 09:55:24 -06:00
Richard Hughes
b58104895d trivial: Add fwupd_build_history_report_json() for future use 2018-01-11 21:28:22 +00:00
Richard Hughes
f1ed711c7e trivial: Add fwupd_build_machine_id()
This allows us to identify a specific machine using the machine-id.
2018-01-11 08:16:55 +00:00
Mario Limonciello
110accb395 debian: if OS environment variable isn't set, try to guess it 2018-01-04 00:02:52 -06:00
Igor Gnatenko
0ffc2448c0 ci: mesonintrospect -> meson introspect
Plan is to remove "old" name at some point (1.0?).
2017-12-13 11:08:45 -06:00
Mario Limonciello
eb737f15f5 fix CI builds with -Werror
Switching to build in -werror in 4016c839a8
was not working properly.  Adjust the CI builds to use --werror instead.

Also while doing this, enable -werror in clang builds.
2017-11-30 16:42:26 -06:00
Mario Limonciello
47ff62b986 ubuntu: depend on appstream-glib 0.7.4 too 2017-11-28 15:20:32 -06:00
Mario Limonciello
7823ca8241 Bump minimum appstream-glib version to 0.7.4 2017-11-28 14:17:25 -06:00
Richard Hughes
d0cff7caec Remove autoconf-isms from the meson configure options
See https://wiki.gnome.org/Initiatives/GnomeGoals/MesonPorting
2017-11-27 18:07:53 +00:00
Richard Hughes
4016c839a8 trivial: Use the built-in -werror from Meson 2017-11-27 18:07:53 +00:00
Mario Limonciello
ce051b8da5 debian: only do libsmbios on supported architectures 2017-11-09 18:53:46 -06:00
Mario Limonciello
4c6667a46e contrib/debian: dynamically generate control file
All the information necessary to generate a debian control file
is now in the XML file.  Use it rather than hardcoding in multiple
places.
2017-11-07 16:39:28 -06:00
Mario Limonciello
d607817af4 contrib: Move dependencies into XML file
Monster CSV file is a little wild.  This is more readable and
will make adding new distros and dependencies easier later.
2017-11-07 16:39:28 -06:00
Richard Hughes
3b84753769 Use help2man to generate the man page at build time
The man pages are always old and out-of-sync with the actual tool, so just
generate them using the output of --help.

Fixes https://github.com/hughsie/fwupd/issues/285
2017-10-23 16:47:08 +01:00
Mario Limonciello
f7dc2faf20 Add a 32 bit debian build to CI (#273) 2017-10-12 07:02:43 +01:00
Richard Hughes
b27f99ac22 trivial: Don't run from the cache when installing CI targets 2017-10-08 11:26:32 +01:00
Mario Limonciello
fa2d5f60e4 trival: debian: filter no-symbols-control-file during build for CI
e17c06 intentionally dropped this - it will be stored in
the debian branch based on when things land in debian
2017-09-28 10:17:33 -04:00
Richard Hughes
94110f5983 Remove some deprecated #define names and bump the soname
Also, bump soname as we're going to clean up a lot of things now.

Many thanks to Mario Limonciello for all the Debian-specific changes.
2017-09-28 09:23:52 +01:00
Mario Limonciello
3bc46392d0 add ubuntu CI 2017-09-25 15:14:37 -05:00
Mario Limonciello
feb038099b trivial: test if running in a container in build scripts
This allows people to build without docker without root.
2017-09-21 21:52:06 +08:00
Mario Limonciello
3b55a06fec trivial: switch CI to debian testing
testing should shield CI from migrations happening in unstable
can switch back to unstable as needed in future
2017-09-20 13:53:13 +08:00
Richard Hughes
34e25a0cc5 trivial: Remove EnableTestSuite from daemon.conf
The same thing can be done using BlacklistPlugins=test
2017-09-19 20:06:44 +01:00
Richard Hughes
c2af1964b9 trivial: Move /etc/fwupd.conf to /etc/fwupd/daemon.conf 2017-09-19 20:06:44 +01:00
Mario Limonciello
4d3025a108 Generate dockerfiles dynamically (#238) 2017-09-11 13:39:40 -05:00
Mario Limonciello
eba19fb94d Introduce an s390x cross compile target to CI 2017-09-08 09:24:54 +01:00
Mario Limonciello
abdd612722 Add a test target for Debian build, but compiled under clang 2017-09-07 19:18:04 -05:00
Mario Limonciello
b59d6a1f33 Add a README about CI 2017-09-07 19:18:04 -05:00
Richard Hughes
2a533b8de2 Use -Werror when building in Travis CI
Do NOT do this for normal package builds.

With much help from Mario Limonciello, many thanks.
2017-09-07 18:25:48 +01:00
Richard Hughes
4022700bc8 Do not install the libdfu helper library
In reality fwupd is the only user and we don't want to hold this library to the
same kind of API and ABI guarantees of libfwupd.
2017-09-06 16:21:32 +01:00
Yehezkel Bernat
859f0f0fe8 Enable Thunderbolt plugin in CI and RPM packaging
Signed-off-by: Yehezkel Bernat <yehezkel.bernat@intel.com>
2017-08-30 12:03:03 +01:00
Jaroslav Lichtblau
6637f74161 thunderbolt plugin can be now tested on Arch Linux
umockdev package is now available in the community repository
of Arch Linux

https://github.com/hughsie/fwupd/issues/187
2017-08-24 11:21:55 +01:00
Mario Limonciello
7f1ed952f2 trivial: update ubuntu dockerfile
Syncs with changes from Debian and sets it up for rolling with devel
release name changes
2017-08-22 13:50:25 -05:00
Christian Kellner
73ba7ee82c thunderbolt: plugin for new tbt kernel interface
Thunderbolt has a new kernel interface starting from version 4.13,
which simplifies updating the host controller and devices: the
kernel now exposes a sysfs interface for the non-volatile memory
as a device node. This can be used to write the new firmware blob.
Updates are then triggered also via a simple write to a sysfs
file (nvm_authenticate), which in turn is also used for error
reporting.
The plugin should be functionally, but a few items are missing:
 - image verification
 - safe mode handling
2017-08-21 17:05:44 +01:00
Mario Limonciello
d3f304c0f1 trivial: ci: build deb package with hardlinks instaed of symlinks 2017-08-17 12:41:06 -05:00
Matthias Klumpp
919e4ec61d ci: Echo shell commands, explicitly set error
By echoing the commands it is way easier to spot what the CI was doing
when a command failed. Setting fail-on-error mode explicitly makes sure
we always run with it, even if someone invokes the script with `bash
<scriptname>`
2017-08-16 23:00:29 -05:00
Matthias Klumpp
8a6337f146 trivial: Some small tweaks to the Debian CI
- Enable echoing in the CI script
- Use debuild
- Show info/experimental/pedantic lintian hints
- Use service instead of invoking an init script directly
2017-08-16 23:00:29 -05:00
Richard Hughes
7403dc505f Optionally use GnuTLS to verify PKCS7 certificates
We can use this as an alternative for GPG. No PKCS7 certificates are currently
installed by fwupd and it's expected that the LVFS will still only provide GPG
detached signatures.

If an OEM distributor wants to sign firmware with a PKCS7 and the corresponding
certificate is provided then the firmware will be marked as valid.

Only firmware shipping with a .p7b file will use the PKCS7 functionality,
similarly remote metadata validation will default to GPG unless Keyring=pkcs7
is specified in the config file.
2017-08-14 09:42:48 +01:00
Mario Limonciello
465f223710 ci: switch to debian unstable
appstream-glib was uploaded to unstable so now CI can run on that.
https://tracker.debian.org/news/860552
2017-08-04 09:53:53 -05:00
Richard Hughes
7664fa7251 trivial: Target Fedora 26 for CI 2017-08-03 11:52:35 +01:00
Mario Limonciello
47c2e9b6a8 rpm: enable test suite via /etc/fwupd.conf 2017-07-17 14:46:32 -05:00
Mario Limonciello
a8a3c6f6b6 debian: run lintian as part of CI
If any new changes are introduced that break plicy, this should
catch them much sooner.
2017-07-17 14:35:20 -05:00
Mario Limonciello
c9ff8f1e33 trivial: Add a Dockerfile for Ubuntu zesty (17.04)
This won't be run through CI (already have Debian coverage)
but it should make it easier to check Ubuntu/Debian deviations
in the future
2017-07-10 16:30:24 -05:00
Mario Limonciello
d97eb03b6b trivial: debian: calculate version number using git describe again
This will be more representative of what the build actually is
rather than a mismarked tag.

If the checkout doesn't include a tag, fallback to parsing meson.build
though.
2017-06-26 13:01:29 -05:00
Mario Limonciello
3db79f2ec2 trivial: Fixup the arch build to work on Travis
* Use sed to adjust package version while running script rather than `makepkg`
* Run script as root so it can modify `/build`
* Run `makepkg` as nobody rather than "build"
* Separate build/install steps
2017-06-26 12:57:55 -05:00
Bruno Pagani
1cc7d8d271 Add Arch Linux to CI 2017-06-26 09:50:11 -05:00
Mario Limonciello
db42f2bd27 trivial: don't pull debhelper from experimental on debian CI anymore
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=865363 has been
fixed
2017-06-26 08:55:49 -05:00
Mario Limonciello
43775d03f9 debian: use dpkg-divert to adjust the launch script for CI testing
This means that if someone wants to use the test inteface with
packages, no hacky launching needed.

Just:
2017-06-22 14:44:58 -05:00
Mario Limonciello
cca4297153 trivial: Switch installedtests from python2 to python3 2017-06-22 13:42:59 -05:00
Richard Hughes
2877237f8a trivial: Fix CI harder 2017-06-22 15:49:40 +01:00
Richard Hughes
5d9e9f4a36 trivial: Fix the CI build for the new hardware installed tests 2017-06-22 11:21:03 +01:00
Mario Limonciello
c5300df799 Drop additions to /etc/apt/sources.list for Debian
The docker base images include these already
2017-06-20 14:45:23 -05:00
Mario Limonciello
9a33ea6e06 Adjust debian dependencies
They were a little bit overzealous.
2017-06-20 14:17:49 -05:00
Mario Limonciello
f3f4390155 Only use the test runner plugin when CI is set in the env (#148)
This prevents an installed system from showing FakeDevices but
still allows exercising every commit with Travis CI
2017-06-20 13:56:13 -05:00
Mario Limonciello
b4208bb577 Adjust Debian version detection to just parse meson.build 2017-06-20 13:54:52 -05:00
Mario Limonciello
2c9a09f767 Add texlive-fonts-recommended to Debian container
Since the container is installed with --no-install-recommends
it isn't coming in by default.  Without it this bug occurs:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=865217
2017-06-19 16:04:12 -05:00
Richard Hughes
19fdebf4f4 trivial: Install two extra packages for the fedora Travis build 2017-06-16 07:59:02 +01:00
Mario Limonciello
4ba3d25ba1 Drop the locale hack on the Debian docker file 2017-06-15 17:09:42 -05:00
Richard Hughes
ae7e0d21b2 Add an installed test for verification 2017-06-15 16:23:52 +01:00
Richard Hughes
8d1054eaf1 trivial: Enable the tests in the reference spec file 2017-06-15 12:05:11 +01:00
Richard Hughes
58de3dbe77 Run the installed tests in Travis CI 2017-06-14 17:34:10 -05:00
Mario Limonciello
b9386372ca Copy RPMs into build root when done 2017-06-13 17:56:57 -05:00
Mario Limonciello
0ff9d5307b drop travis CI generic build and test case (it's implied by testing packaging) 2017-06-13 15:35:45 -05:00
Mario Limonciello
ab6884f44a enable tests in Travis CI for fedora 2017-06-13 15:35:45 -05:00
Mario Limonciello
0c50ed1af3 Generate deb & RPM packages as part of CI build (#134) 2017-06-13 15:35:45 -05:00
Mario Limonciello
d3c355e464 Add debian packaging 2017-06-13 15:35:45 -05:00
Mario Limonciello
3d77bd4ab4 Set Dockerfiles to UTF-8
Should resolve failed CI builds
2017-06-12 16:50:24 -05:00
Peter Jones
2297c09f81 Generate a pile of images for status messages during system firmware update. (#133)
This generates a pile of .bmp files to use as our status messages.

Signed-off-by: Peter Jones <pjones@redhat.com>
2017-06-12 13:11:22 -05:00
Mario Limonciello
825e881864 get debian travis builds working too
For now they'll need to build with debian experimental until
appstream-glib 0.6.13 flows up to unstable (probably after
stretch releases)
2017-06-08 09:09:32 -05:00
Richard Hughes
871618ae1b Enable Travis CI for Fedora 25
Debian Unstable is currently disabled as it does not work.
2017-06-08 12:36:41 +01:00