Mailinglist Archive: yast-devel (100 mails)

< Previous Next >
[yast-devel] Fail fast at Travis?

Hi all,

I'd like to discuss one Travis feature here.

Currently all Travis steps described in .travis.yml are executed
regardless whether something fails or not.

The problem is that if any step in the middle fails then it's quite
hard to find the issue as the logs are usually very long.
For example the yast2 log has over 4500 lines [1].

The question is whether we want to switch to the fail fast principle [2],
so the Travis build would stop at the first failure and you could easily find
it at
the end of the log. (Travis does not support failing fast out of box, but there
is a
workaround for this [3].)


Summary:

Current state (always run all steps)

+ can find multiple issues in a single run
- too long log for finding the issues
- may report false positives for dependent steps
(e.g. if compilation fails then obviously the tests fail too)
- longer build times


Fail fast

+ easy to find the failure
+ failed builds finish faster
- you can only see/fix one issue at a time, more iterations for fixing all
issues is needed (e.g. you fix a rubocop style issue, but then the testsuite
does not pass, after fixing it the install step fails because of a missing
change in Makefile... each fix means a new commit and a new build)


What do you think about it? Should we change the Travis behavior?




[1] https://travis-ci.org/yast/yast-yast2
[2] http://en.wikipedia.org/wiki/Fail-fast
[3] https://github.com/travis-ci/travis-ci/issues/1066#issuecomment-32415453


--

Best Regards

Ladislav Slez√°k
Yast Developer
------------------------------------------------------------------------
SUSE LINUX, s.r.o. e-mail: lslezak@xxxxxxx
Lihovarsk√° 1060/12 tel: +420 284 028 960
190 00 Prague 9 fax: +420 284 028 951
Czech Republic http://www.suse.cz/
--
To unsubscribe, e-mail: yast-devel+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: yast-devel+owner@xxxxxxxxxxxx

< Previous Next >
Follow Ups