Commit Graph

78 Commits

Author SHA1 Message Date
Stefan Schmidt b717deb098 Revert "ci: travis: stop osx builds until build failures are solved on Travis"
This was actually a problem we could solve on our side. Marcel has done
so in commit: 32597e7e77

This reverts commit b554b25c4c.
2020-03-09 10:11:50 +01:00
Stefan Schmidt b554b25c4c ci: travis: stop osx builds until build failures are solved on Travis
This looks like problems on the TravisCI side, but this is going on for
to long. Stop osx builds to have our on CI in a sane state again.
2020-03-06 12:01:46 +01:00
Stefan Schmidt 1fd5acc2fc ci: travis: ensure we update brew as well to avoid a problem on Travis
We normally did not use update as it could take up a few minutes for
every macos build and the packages have been recent enough. Since a few
hours we see build problems now on Travis:
Error: Unknown command: bundle

A way to get them fixed (until Travis updates their images for macos) is
to use the update command.
https://travis-ci.community/t/macos-build-fails-because-of-homebrew-bundle-unknown-command/7296/9

Also moving to a newer osx image here to avoid falling further behind on
the dependencies.
2020-02-21 15:38:56 +01:00
Stefan Schmidt 7c653df450 ci: enable exactness build on travis
Summary:
With exactness merged into efl we can finally enable some exactness
testing on our CI. As a first step we will run around 47 tests from our
elementary_tests recordings.

The base data is already in the specific docker image to avoid
downloading on each run. We also need to use a dedicated branch from the
repo while we are still working out all the problems to make exactness
recordings really independent from their env.

Depends on D11317

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11318
2020-02-12 12:10:07 -05:00
Stefan Schmidt e55f0a1dcf ci: travis: add build on ARM64 arch now provided by Travis
Summary:
Cheap and easy way for us to have basic compile testing on ARM64. Travis
is also offering ppc64le and s390x for builds, but on ppc64le we get a
internal compoler error (yay!) on c++ examples and on s390x we have no
luajit. So, these two have to wait a bit more.

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11060
2020-01-10 09:51:32 -05:00
Stefan Schmidt 8d9f032db6 ci: travis: enable ptrace capabilities to our docker runs
ASAN leak sanitizer needs ptrace capabilities to run. It seems the
removal sudo true brings up this issue for us.

https://github.com/google/sanitizers/issues/764
https://github.com/travis-ci/travis-ci/issues/9033

It fixes the recent breaks in our ASAN enabled job durign our cron
builds.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D11041
2020-01-08 14:23:38 +01:00
Stefan Schmidt 2af38d11ed ci: create a daily build to run with coverage enabled and upload to codecov
Summary:
For this we bring back a native Linux build on the Travis with Ubuntu
bionic. This allows use easy integration with codecov as Travis and
Codecov have figured out all details.
This means we need to be a bit more careful with our $DIST checks as
empty no longer means osx. It could as well be the Linux job.

Covergae reports will show up here:
https://codecov.io/gh/Enlightenment/efl

We are starting with 36%. Time to improve. :-)

Fixes: T7910

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10867
2019-12-30 11:39:39 -05:00
Stefan Schmidt 3234d65b1e ci: travis: merge two if clauses
A left-over from the various works in this file. All of these commands
are under the same conditions.

Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10864
2019-12-18 09:15:57 +01:00
Stefan Schmidt 9fb1ae0d3c ci: enable benchmark target again
It only runs after efl is installed and we need to ensure running with
Elm buffer engine in our docker build for the graphical collection
benchmark.

Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10848
2019-12-18 09:15:54 +01:00
Stefan Schmidt f825326750 ci: travis: add job to build efl and run tests with address sanitizer
A first step to have addrress sanitizer coverage on our EFL build. It
already catched some use after free errors and memory corruptions. Still
we have some limititation how we are running this right now. We
currently ignore some leaks that are exposed durign the normal build
wile haveing the short living runs of edje_cc, elm_prefs_cc, etc.
For now the whole leak detection is disabled on the testsuite as well.

This is still very valuable, especially for all non-leak cases it finds,
thus we are goign to run this on our daily build.

Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10691
2019-11-27 14:21:25 +01:00
Stefan Schmidt 4539c85855 ci/travis: remove no longer needed travis keywords
Highlighted by the new build config validation feature we can see that
sudo is no longer needed and on_cancel is not a valid keyowrk for IRC
notifications.

Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10665
2019-11-17 11:57:41 +01:00
Stefan Schmidt 7d7beccad6 ci/travis: Enable the new build config validation beta feature
This feature wil enable the validation of our config files (only
.travis.yml in our case) and give out warnings and errors on problematic
parts in the "View Config" tab on the Travis UI.

Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10664
2019-11-17 11:57:39 +01:00
Stefan Schmidt 6a4c72f6fe travis: update Ubuntu image to the 19.10 release
We keep the 18.04 LTS until a new LTS comes along.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10600
2019-11-05 16:59:16 +01:00
Stefan Schmidt 5ad0f5f7d0 travis/ci: update Fedora CI images to 31
Also disable the gstreamer 0.10 module since this version is no longer
shipped with Fedora 31.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10597
2019-11-05 16:59:12 +01:00
Mike Blumenkrantz 8b2cae5b07 ci: add back target to do out-of-tree test build
this is necessary in order to ensure that our headers are usable

ref T8228

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D10036
2019-09-23 14:16:22 +02:00
Stefan Schmidt f8aa44eef7 ci: travis: update last jobs from Fedora 29 to 30 docker image
With the specsuite tests fixed now we can see that the build also works
with Fedora 30, so we can update the last missing jobs not having it.

Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9193
2019-06-27 13:59:20 +02:00
Stefan Schmidt 4f0989f290 ci: travis: add coverity build job to be run from cron
Summary:
We finally have regular Coverity Scan runs back to our CI.
It gets triggered from the cron jobs on Travis. As we are not able to
identify if it comes from a daily or weekly cron build I added a check
to only run the scan build on a Saturday so we should have a nice and
fresh report on Monday morning in our mailboxes.

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9175
2019-06-25 12:11:33 -04:00
Stefan Schmidt 1d2301818c ci: travis: remove left over from autotools build
Summary:
This caching is no longer needed. No m4 cache around with meson.
Our config.cache setup by our autotools build is no longer there either.

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9160
2019-06-25 09:08:16 -04:00
Stefan Schmidt 61235a6e5c ci: travis: osx: switch to newer macos image and brew addon for packages
Summary:
One of the time consuming parts of the macos build we have is the
installing of the efl dependencies as packages from brew.
The brew update command alone is often taking 5m to run.

To avoid running brew update at all we are switching to a newer osx
image from Travis, which comes with a newer set of brew metadata and
gets us around a brew update for now. Together with this we are also
switching from our own dependency install script to the brew package
addon provided by travis already.

In my testing this shows we are only spending 270s in the brew package
updates comapred to 635s before. So we have a 6 minutes speedup for
every osx build!
Depends on D9161

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9162
2019-06-24 09:10:56 -04:00
Stefan Schmidt 227df38b5f ci: travis: no need to cache the autom4te.cache any longer
Summary:
This was part of the caching speedup for autotools we no longer need.
Depends on D9121

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9122
2019-06-19 09:26:29 -04:00
Stefan Schmidt 06d59c3457 ci: remove no longer needed make examples script
Summary:
With the meson build the examples do not have a dedicated target, no
need for this script anymore.
Depends on D9120

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9121
2019-06-19 09:26:23 -04:00
Stefan Schmidt f0f799e4a8 ci: remove no longer needed MAKEFLAGS env variable
Summary:
This was used to pass to make and is no longer used with ninja.
Depends on D9117

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9118
2019-06-19 09:26:08 -04:00
Stefan Schmidt eb16fc0676 ci: travis: remove no longer used BUILDSYSTEM env variable
Summary:
We used this to have a conditional to enter the different autotools
and meson branches in our build scripts. No longer needed.
Depends on D9116

Reviewers: zmike, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9117
2019-06-19 09:26:01 -04:00
Mike Blumenkrantz 90f5d5e1f1 ci: remove autotools-related conditionals
these are no longer used by anything

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9108
2019-06-19 13:26:06 +02:00
Marcel Hollerbach 639869703f autotools: REMOVAL!
Get your seatbelt fastend! It is happening! AUTOTOOLS IS GONE NOW!
All praise to meson!

This time the final version, ci has been adjusted, and now does not try
anymore to build a removed buildsystem. However, the scripts in there
need cleaning up.

Differential Revision: https://phab.enlightenment.org/D9027
2019-06-18 08:56:34 +02:00
Marcel Hollerbach 4f8e15c16c Revert "autotools: REMOVAL!"
This reverts commit e8c69667b0.

git push on a wrong branch, sorry. This will land today, but not now.
2019-06-18 08:12:53 +02:00
Marcel Hollerbach e8c69667b0 autotools: REMOVAL!
Get your seatbelt fastend! It is happening! AUTOTOOLS IS GONE NOW!
All praise to meson!

Differential Revision: https://phab.enlightenment.org/D9027
2019-06-18 08:11:55 +02:00
Stefan Schmidt 8a10b62fc2 ci: travis: switch to newer distro releases
Summary:
We follow Debian 9.9, Ubuntu 19.04 and Fedora 30 releases.
Also adding a build for Ubuntu 18.04 LTS to the cron job.

Not all jobs are updated yet as some experience failures
(old or new versions) which need to be understand and fixed
before we move on.

Reviewers: zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9088
2019-06-12 11:44:11 -04:00
Stefan Schmidt 202c945bd3 ci/travis: add meson windows cross build
Summary:
catchup with the windows cross build autotools build we have and provide
the matching meson build.
Depends on D9042

Reviewers: bu5hm4n, zmike, vtorri

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9043
2019-05-29 12:29:04 -04:00
Stefan Schmidt c84a5fce0b travis: re-enable updated mingw windows cross-build
Summary:
Updated mingw toolchain (6.0 plus gcc 9.3) based on Fedora 30.
Also updated ewpi with more and newer cross compiled deps.
Depends on D9041

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9042
2019-05-29 12:29:04 -04:00
Mike Blumenkrantz db1bb63e0e ci: disable mingw build temporarily
Summary: this cannot succeed until the docker image is rebuilt

Reviewers: lauromoura

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8648
2019-04-18 12:35:52 -04:00
Stefan Schmidt 95a9cc90d1 ci: travis: switch mingw cross build to also use Fedora 29 as base
Summary:
The new image also contains the ewpi install in a different location.
Updating the references here.

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7833
2019-01-30 14:51:31 -05:00
Stefan Schmidt 5791ea7158 ci: travis: shorten job descriptions
Summary:
This makes job descriptions shorter and also clearer to see what env
variable belongs to what job and os.

Moving the release ready build to an earlier start position in the cron
job to shorten the total build time.
Depends on D7799

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7800
2019-01-28 12:00:38 -05:00
Stefan Schmidt 8da1d8a8b2 ci: travis: enable a meson/ninja build on osx
Summary:
This cuts down the time the osx builld takes from ~30min to ~20min
Keeping the autotools osx build in the cron job for now.

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7799
2019-01-28 12:00:38 -05:00
Stefan Schmidt cea392390f ci: travis: bring back default and wayland builds
Summary:
With some recent changes we only had builds running after a push which
did not qualify for a make check / ninja test run. Mostly due to problems
with the tests and specific config options. Bring back a default build
which will also run the unit tests un every push.

Also adding back a dedicated wayland build due to conflicts of gl
versions with the all options enabled build.

Fixes T7545

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7545

Differential Revision: https://phab.enlightenment.org/D7727
2019-01-23 09:13:27 -05:00
Stefan Schmidt 39ed72b236 ci: travis: stop pushing images after build to docker hub
Summary:
This stopped working a while ago and we are not actively using it.
If we need it we can bring it back in a better way later.
Depends on D7708

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7709
2019-01-22 08:54:39 -05:00
Stefan Schmidt ede20292a3 ci: travis: update distro tags
Summary: Switch to newer versions of Fedora, Ubuntu and Debian.

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7708
2019-01-22 08:53:55 -05:00
Stefan Schmidt 8e9f773f04 travis: re-enable mingw build with newer eolian_gen for bootstrap
The docker image now contains a native efl build as bootstrap for doing
the mingw cross-build. Paths to the generator binaries have been
update. We also switched to using a dedicated Fedora28-mingw docker
image for now to have a more stable environment for now.

Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7377
2018-12-07 12:39:35 +01:00
Stefan Schmidt cc07318377 travis: temporarily disabled mingw job as hot fix
Since a recent commit eolian_gen from HEAD is needed to build efl.
So far the mingw cross build avoided the double build of efl for
bootstrapping purpose and used the 1.21 package for the cross build.

This does no longer work and all Travis jobs are now failung due to
this. As a hotfix I disable the build now (Friday evening) to have
working builds over the weekend and find a better solution next week.
2018-11-23 17:11:05 +01:00
Stefan Schmidt aa19ecb390 travis: reorder jobs to reduce overall build time per push
We currently have 6 jobs runnign after a git push, but only 5 parallel
workers available. The macos build takes way longer then the meson
builds for example which we will use to our advantage.

Starting the longest builds (macos and mingw) first and letting the
second meson build start after the first ones finishes. That way the
limitation is still the long running macos job.

Differential Revision: https://phab.enlightenment.org/D7321
2018-11-23 14:40:05 +01:00
Marcel Hollerbach 8d1a1f603b ci: here comes ninja!
this updates the scripts in order to make ninja all / ninja test work as
expected. For now there are 2 new jobs options-enabled and
options-disabled. mingw and osx will follow in another commit.
Benchmarks are disabled for now, as the eina benchmark does not seem to
terminate.

Differential Revision: https://phab.enlightenment.org/D7255
2018-11-23 14:38:26 +01:00
Stefan Schmidt defded25eb travis: merge wayland build into misc and rename to options-enabled
The misc build already had most of the extra options enabled for the EFL
build. Instead of wasting CPU cycles on a full seperate build for just
wayland options we merge these two together. In the process we rename
from misc (pretty vague) to options-enabled and options-disbaled.

Due to the combination of options we need to disable sdl for now. It
clashes with the OpenGL ES option we enable for wayland. Having build
for the different GL flavours is something we should look into at some
point.

Patch is based on the patches from Marcel in D7253 and D7254

Differential Revision: https://phab.enlightenment.org/D7320
2018-11-23 14:20:25 +01:00
Stefan Schmidt 1a17f41584 ci: mingw build target to cross compile EFL for Windows
We are using the EFL windows package installer (ewpi) from Vincent Torri
here (thanks!) to setup all the needed cross compiled dependencies for
EFL.

The make target is disabled as we are not able to execute the windows
binaries withour additional work to run check.

Work is ongoing in ewpi to have the dependencies provided for soem of
the disabled build options (gstreamer, webp, tiff, physics, etc). Once
these are working well in ewpi we will enable them here as well.

[Brought back after revert. CI image is now fixed to have the needed
pre-built windows components again]

Differential Revision: https://phab.enlightenment.org/D7294
2018-11-20 11:17:37 +01:00
Stefan Schmidt c60e4c7c24 travis: drop archlinux from Travis cron builds
With Archlinux being a rolling release every new build of the docker
image could contain new changes that would break for us. For all other
distros we also follow the latest release approach where we want to make
sure efl still builds for it. With Archlinux this is not possible by its
nature. Luckily enough efl developers use Archlinux so the risk of
issues being left unnoticed is small enough.

Differential Revision: https://phab.enlightenment.org/D7306
2018-11-20 10:29:40 +01:00
Marcel Hollerbach ffb992cd4f Revert "ci: mingw build target to cross compile EFL for Windows"
This reverts commit 883058b92b.

This seems to bring up errors in the build -ldbus-1 cannot be found.
Revisions is reopened.
2018-11-19 19:00:11 +01:00
Stefan Schmidt 883058b92b ci: mingw build target to cross compile EFL for Windows
We are using the EFL windows package installer (ewpi) from Vincent Torri
here (thanks!) to setup all the needed cross compiled dependencies for
EFL.

The make target is disabled as we are not able to execute the windows
binaries withour additional work to run check.

Work is ongoing in ewpi to have the dependencies provided for soem of
the disabled build options (gstreamer, webp, tiff, physics, etc). Once
these are working well in ewpi we will enable them here as well.

Differential Revision: https://phab.enlightenment.org/D7294
2018-11-19 09:29:43 +01:00
Stefan Schmidt 372374382a travis: move parts of our build matrix to only run on the daily travis cron job
We need to keep our builds running for every push to a minimum. Various
distro builds as well as the release-ready build can happily run once a
day.
This commit also switches from a build matrix to a simple list of build
jobs to allow the usage of build type = cron condition (not possible
with the matrix builds)

Differential Revision: https://phab.enlightenment.org/D7293
2018-11-16 15:39:41 +01:00
Mike Blumenkrantz 88ecbdadc3 ci: disable notifications for canceled builds
canceled builds indicate that someone is actively watching a build,
likely in order to test changes. there's no point in spamming irc for
these events

Differential Revision: https://phab.enlightenment.org/D6730
2018-08-16 11:35:50 +02:00
Mike Blumenkrantz 52b8e684e2 ci: disable unnecessary build targets
examples and install are both built by distcheck build, no need to also
build them in every other build

there's also no need to try building an app against the compiled libraries
since ci runs unit tests, requiring binaries to run after linking to the
libraries

Differential Revision: https://phab.enlightenment.org/D6663
2018-08-16 11:11:44 +02:00
Mike Blumenkrantz 1edf1295e8 ci: automatically clear config.cache if it cannot be used
Summary:
if env vars change between runs then the cache is invalidated, causing
configure to print a very specific error

by running a separate script to catch this error, the build can detect
and clear the cache when necessary to avoid having to manually disable
the cache when changing build settings
Depends on D6697

Reviewers: stefan_schmidt, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6732
2018-08-08 09:38:25 -04:00