path: root/.travis.yml (follow)
AgeCommit message (Collapse)Author
2019-01-23ci: travis: bring back default and wayland buildsStefan Schmidt
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:
2019-01-22ci: travis: stop pushing images after build to docker hubStefan Schmidt
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:
2019-01-22ci: travis: update distro tagsStefan Schmidt
Summary: Switch to newer versions of Fedora, Ubuntu and Debian. Reviewers: bu5hm4n, zmike Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2018-12-07travis: re-enable mingw build with newer eolian_gen for bootstrapStefan Schmidt
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 <> Differential Revision:
2018-11-23travis: temporarily disabled mingw job as hot fixStefan Schmidt
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-23travis: reorder jobs to reduce overall build time per pushStefan Schmidt
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:
2018-11-23ci: here comes ninja!Marcel Hollerbach
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:
2018-11-23travis: merge wayland build into misc and rename to options-enabledStefan Schmidt
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:
2018-11-20ci: mingw build target to cross compile EFL for WindowsStefan Schmidt
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:
2018-11-20travis: drop archlinux from Travis cron buildsStefan Schmidt
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:
2018-11-19Revert "ci: mingw build target to cross compile EFL for Windows"Marcel Hollerbach
This reverts commit 883058b92bf81784bf51f4cf97066e57367cc81c. This seems to bring up errors in the build -ldbus-1 cannot be found. Revisions is reopened.
2018-11-19ci: mingw build target to cross compile EFL for WindowsStefan Schmidt
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:
2018-11-16travis: move parts of our build matrix to only run on the daily travis cron jobStefan Schmidt
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:
2018-08-16ci: disable notifications for canceled buildsMike Blumenkrantz
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:
2018-08-16ci: disable unnecessary build targetsMike Blumenkrantz
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:
2018-08-08ci: automatically clear config.cache if it cannot be usedMike Blumenkrantz
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:
2018-08-03ci: add build time to IRC notificationMike Blumenkrantz
this will be useful while profiling CI builds to know whether a patch has made builds slower so that it can potentially be examined Differential Revision:
2018-08-01ci: explicitly set PKG_CONFIG_PATH for opensslMike Blumenkrantz
travis upgraded to macos high sierra overnight without notification(?) and this is now required in order to find openssl for some reason also disable config.cache to prevent configure errors Differential Revision:
2018-07-30ci: disable built-in make rules and variablesMike Blumenkrantz
these slow down build times and don't benefit us Differential Revision:
2018-07-26ci: run make check in buildMike Blumenkrantz
this adds a script to run make check after the build has finished, repeating tests 3 times to try and reduce false positives from intermittent failure tests ref T7094 Differential Revision:
2018-07-26ci: make release-ready not allow failuresMike Blumenkrantz
this should no longer fail Differential Revision:
2018-07-26ci: add osx homebrew packages to cacheMike Blumenkrantz
this adds the downloaded homebrew package files to a cache in order to avoid needing to separately download each file at the start of each build not sure we can do better here unless we buy the enterprise-level travis package which allows building with custom osx images which we could pre-install all these dependencies on ref T7096 Differential Revision:
2018-07-26ci: disable app build on osxMike Blumenkrantz
this isn't currently working, disable for now Differential Revision:
2018-07-26ci: add autoconf cachingMike Blumenkrantz
this enables caching of the autoreconf and ./configure stages of the build using autotools-provided caching mechanisms in order to speed up these steps fix T7136 Differential Revision:
2018-07-26ci: add ccache supportMike Blumenkrantz
this enables and implements full support for ccache on travis builds fix T7126 Differential Revision: =also includes previously-submitted patches= ci: split out ccache config setup into separate script this provides a more unified place to set ccache options also enable ccache compression to cut down on cache upload/download overhead ref D6613 ci: zero ccache stats before build and add some comments for options used zeroing the stats before each build will provide more insight into the cache performance for each build ref D6621 ci: break out ccache stat printing into separate script continue to make travis.yml more readable ref D6622 ci: add more ccache config options to improve cache direct hits ci: disable second cpp run for ccache this should avoid running cpp twice for files
2018-07-26ci: refactor all build steps into separate build scriptsMike Blumenkrantz
this moves each step of the ci build into a separate script with the build type passed as an argument, allowing for easier modification of each individual step as necessary and making travis.yml more readable Differential Revision: also includes: ci: break out make commands into travis.yml from build scripts this simplifies the platform-specific build scripts to only perform the configure stage of the build (and any additional setup) and then uses standardized commands for the build in addition to being simpler, this will also provide more/better info about build timings ref D6603
2018-07-24ci: add some line breaks in travis.yml for readabilityMike Blumenkrantz
no functional changes Differential Revision:
2018-07-24ci: always force eio to use fallback monitoring methodMike Blumenkrantz
inotify is not available in docker containers, so disable this for now as it will always cause codepaths relying on it to time out Differential Revision:
2018-07-12ci: set number of make jobs globally and decrease to 5 jobsMike Blumenkrantz
Summary: travis docs explicitly state that the expectation for builds is to have 2 cpus, meaning that 10 jobs is wayyyy too many and was actually causing some build failures due to strain on the virtual hw this sets the number of jobs using a global variable to avoid having to set it separately for each build Reviewers: devilhorns, ManMower Reviewed By: ManMower Subscribers: ManMower, cedric, #committers Tags: #efl Differential Revision:
2018-05-17ci: travis: tweak the IRC notification message template to our needsStefan Schmidt
I wanted to have the commit subject in it. This could be further changed if needed.
2018-05-17ci: travis: enable IRC notifications to #edevelopStefan Schmidt
2018-05-16ci: travis: move macos build out of allowed failuresStefan Schmidt
It is working fine again and we want to know if something breaks it.
2018-05-16ci: travis: switch Ubuntu and Fedora builds to latest releaseStefan Schmidt
2018-05-04ci: add new build to test release profile and distcheckStefan Schmidt
To avoid surprises when starting the release process make sure we have a build which actually runs the release profile and tests distcheck.
2018-04-27ci: travis: create misc-disabled buildStefan Schmidt
This build should cover all kind of disable configure flags we support in efl. Making sure we still work with all of these when a commit comes in.
2018-04-25ci: travis: allow for some failures in the matrix buildStefan Schmidt
We want to make sure to have a stable and reliable subset of builds that define if the build passed or not. We also want to have builds which are more experimental. They give us a good insight, but we are not yet ready to have them supported officially as need-to-pass build. Namely the macOS build. Another side effect of this change is that we reduce the critical build matrix to 5 builds. The exact number of parallel ones we are allowed. With fast_finish Travis will not wait for the other ones to finish before setting the build status. This will allow us to have all builds in parallel and not waiting for build #6 to be finished.
2018-01-10travis: add misc and wayland build options to build matrixStefan Schmidt
2018-01-10travis: drop older osx build, latest should be enoughStefan Schmidt
2018-01-10travis: test docker build with prebuild image for speedupStefan Schmidt
2018-01-09ci: actually install systemd in the Ubuntu 17.10 DockerfileStefan Schmidt
This allows us to build efl with systemd support on it and enables the newer Ubunutu version by default.
2018-01-04ci: stay with 17.04 for Ubuntu on Travis buildsStefan Schmidt
There is some glitch with 17.10 and systemd in our build. Roll back here to keep the Travis build stable until this is investigated.
2018-01-03ci: add Archlinux Dockerfile and use it in TravisStefan Schmidt
2018-01-03ci: update travis distro builds for Ubuntu and Fedora to newer versionsStefan Schmidt
We already have the needed Dockerfiles for the latest releases and they work fine. Make sure Travis runs use them.
2017-09-28ci: initial travis CI support for Linux distros and MacOSX buildsStefan Schmidt
This has been used by myself in a branch for a while now and it is time to bring it into master as a base for all future CI related work. I plan to use the same scripts and other bits for Jenkins as well as other CI systems later on. What we currently cover with this setup are linux builds for three different distros and MacOSX builds for two different versions. Travis will only be called when new commits get mirrored onto our GitHub mirror (which only happens once an hour). Expect delays on these builds.