Re: [PATCH v3 2/6] ci/lib-docker: preserve required environment variables
- From
SZEDER Gábor <szeder.dev@gmail.com>
- Date
- Apr 3, 2020, 08:22 UTC
- Message-ID
- <20200403082254.GJ2224@szeder.dev>
- In-Reply-To
- <b7b079f559a17b6d6cef037afd6ce023df8f90b0.1585832270.git.congdanhqx@gmail.com>
On Thu, Apr 02, 2020 at 08:04:01PM +0700, Đoàn Trần Công Danh wrote:
> We're using "su -m" to preserve environment variables in the shell run > by "su". But, that options will be ignored while "-l" (aka "--login") is > specified.
This is not true. See any previous runs of the 32 bit Linux job, which worked as expected, because none of these environment variables were cleared.
Show 36 quoted lines
> Since we don't have interest in all environment variables, > pass only those necessary variables to the inner script. > > Signed-off-by: Đoàn Trần Công Danh <congdanhqx@gmail.com> > --- > ci/run-linux32-build.sh | 13 ++++++++++--- > 1 file changed, 10 insertions(+), 3 deletions(-) > > diff --git a/ci/run-linux32-build.sh b/ci/run-linux32-build.sh > index e3a193adbc..7f985615c2 100755 > --- a/ci/run-linux32-build.sh > +++ b/ci/run-linux32-build.sh > @@ -51,10 +51,17 @@ else > fi > > # Build and test > -linux32 --32bit i386 su -m -l $CI_USER -c ' > +linux32 --32bit i386 su -m -l $CI_USER -c " > set -ex > + export DEVELOPER='$DEVELOPER' > + export DEFAULT_TEST_TARGET='$DEFAULT_TEST_TARGET' > + export GIT_PROVE_OPTS='$GIT_PROVE_OPTS' > + export GIT_TEST_OPTS='$GIT_TEST_OPTS' > + export GIT_TEST_CLONE_2GB='$GIT_TEST_CLONE_2GB' > + export MAKEFLAGS='$MAKEFLAGS' > + export cache_dir='$cache_dir' > cd /usr/src/git > - test -n "$cache_dir" && ln -s "$cache_dir/.prove" t/.prove > + test -n '$cache_dir' && ln -s '$cache_dir/.prove' t/.prove > make > make test > -' > +" > -- > 2.26.0.334.g6536db25bb >