Thread (9 messages) flat view 9 messages, 4 authors, 2018-01-14

Re: [PATCH] travis-ci: build Git during the 'script' phase

From: SZEDER Gábor <hidden>
Date: 2018-01-12 13:33:03

Possibly related (same subject, not in this thread)

On Mon, Jan 8, 2018 at 11:38 PM, Lars Schneider
[off-list ref] wrote:
quoted
On 08 Jan 2018, at 23:07, Junio C Hamano [off-list ref] wrote:

SZEDER Gábor [off-list ref] writes:
quoted
The reason why Travis CI does it this way and why it's a better
approach than ours lies in how unsuccessful build jobs are
categorized.  ...
...
This makes it easier, both for humans looking at the Travis CI web
interface and for automated tools querying the Travis CI API,...
...
A verbose commit message for such a change... but I don't know why we
started with building Git in the 'before_script' phase.
Thanks for writing it up clearly.  TBH, I didn't even realize that
there were meaningful distinctions between the two cases after
seeing that sometimes our tests were failing and sometimes erroring
;-)
I understand the reasons for the proposed patch. However, I did this
intentionally back then. Here is my reason:

If `make` is successful, then I am not interested in its output.
If 'prove' is successful, then I'm not interested in its output ;)
Look at this run: https://travis-ci.org/szeder/git/jobs/324271623

You have to scroll down 1,406 lines to get to the test result
output (this is usually the interesting part).
That's the just beginning of a looong list of executed test scripts in
seemingly pseudo-random order.  IMHO that's very rarely the interesting
part; I, for one, am only interested in that list in exceptional cases,
e.g. while tweaking the build dependencies or the 'prove --state=...'
options.

These are the really interesting parts of the build job's output, the
parts that do matter most of the time:

  # compiler error
  https://travis-ci.org/git/git/jobs/325252417#L1766
  # which tests failed
  https://travis-ci.org/git/git/jobs/315658238#L2247
  # stray build artifacts
  https://travis-ci.org/szeder/git/jobs/323531220#L2236
  # (no example logs for erroring while installing dependencies, OSX
  # timeout, etc.)

Note that these are all at the very end of the trace log, i.e. they are
easily accessible by one or two keystrokes (depending on whether the
keyboard has a dedicated 'End' key or requires an Fn combo), a vigorous
drag of the scrollbar, or a click on the "Scroll to end of log" circle
in the top right corner.
If this is a valid argument for you,
I'm unconvinced :)
would it be an option to
pipe the verbose `make` output to a file and only print it in case
of error (we do something similar for the tests already).
It's risky, because the build process would be completely silent for the
duration of building Git.  Travis CI considers a build 'errored' if it
doesn't produce any output for 10 minutes.  While building Git usually
takes much less time, transient slowdowns apparently do occur.

Gábor
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help