Re: [PATCH v2 1/8] travis-ci: use 'set -x' in select 'ci/*' scripts for extra tracing
- From
Lars Schneider <larsxschneider@gmail.com>
- Date
- Dec 18, 2017, 21:53 UTC
- Message-ID
- <B2E7DCD0-E4E8-4898-ABC5-5C2E70284CFA@gmail.com>
- In-Reply-To
- <20171216125418.10743-2-szeder.dev@gmail.com>
Show 24 quoted lines
> On 16 Dec 2017, at 13:54, SZEDER Gábor <szeder.dev@gmail.com> wrote: > > While the build logic was embedded in our '.travis.yml', Travis CI > used to produce a nice trace log including all commands executed in > those embedded scriptlets. Since 657343a60 (travis-ci: move Travis CI > code into dedicated scripts, 2017-09-10), however, we only see the > name of the dedicated scripts, but not what those scripts are actually > doing, resulting in a less useful trace log about e.g. installing > dependencies. A patch later in this series will move setting > environment variables from '.travis.yml' to 'ci/lib-travisci.sh', so > not even those will be included in the trace log. Unrelated to > 657343a60, 'ci/test-documentation.sh' runs a bunch of 'test -s <file>' > checks which would fail quietly if something were wrong, leaving no > clue about which one of those checks triggered the failure. > > Use 'set -x' in 'ci/lib-travisci.sh' to get more detailed trace log > about the commands executed in the 'ci/*' scripts. Use it in > 'ci/run-linux32-build.sh' as well, which is run in a Docker container > and therefore doesn't source 'ci/lib-travisci.sh'. The secret token > used for the Windows builds is specified as an encrypted environment > variable in git/git repository settings on Travis CI and it's redacted > in the trace logs even with 'set -x'. However, disable this tracing > in 'ci/print-test-failures.sh', as it produces far too much noise in > the output of that script.
I ACK too soon in my other email ;-)
Can you disable the trace log for the loop in "run-windows-build.sh": https://github.com/git/git/blob/52015aaf9d19c97b52c47c7046058e6d029ff856/ci/run-windows-build.sh#L75-L88
Otherwise the Travis output look like this: https://travis-ci.org/git/git/jobs/316791071
- Lars
Show 55 quoted lines
>
> Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com>
> ---
> ci/lib-travisci.sh | 6 ++++--
> ci/print-test-failures.sh | 3 +++
> ci/run-linux32-build.sh | 2 ++
> 3 files changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/ci/lib-travisci.sh b/ci/lib-travisci.sh
> index ac05f1f46..2d0d1d613 100755
> --- a/ci/lib-travisci.sh
> +++ b/ci/lib-travisci.sh
> @@ -22,8 +22,10 @@ skip_branch_tip_with_tag () {
> }
>
> # Set 'exit on error' for all CI scripts to let the caller know that
> -# something went wrong
> -set -e
> +# something went wrong.
> +# Set tracing executed commands, primarily setting environment variables
> +# and installing dependencies.
> +set -ex
>
> skip_branch_tip_with_tag
>
> diff --git a/ci/print-test-failures.sh b/ci/print-test-failures.sh
> index 8c8973cbf..f757e616c 100755
> --- a/ci/print-test-failures.sh
> +++ b/ci/print-test-failures.sh
> @@ -5,6 +5,9 @@
>
> . ${0%/*}/lib-travisci.sh
>
> +# Tracing executed commands would produce too much noise in this script.
> +set +x
> +
> for TEST_EXIT in t/test-results/*.exit
> do
> if [ "$(cat "$TEST_EXIT")" != "0" ]
> diff --git a/ci/run-linux32-build.sh b/ci/run-linux32-build.sh
> index e30fb2cdd..a8518eddf 100755
> --- a/ci/run-linux32-build.sh
> +++ b/ci/run-linux32-build.sh
> @@ -6,6 +6,8 @@
> # run-linux32-build.sh [host-user-id]
> #
>
> +set -x
> +
> # Update packages to the latest available versions
> linux32 --32bit i386 sh -c '
> apt update >/dev/null &&
> --
> 2.15.1.429.ga000dd9c7
>