diff mbox series

.travis.yml: Use travis_retry() in case of network issues

Message ID 20200613130622.20541-1-f4bug@amsat.org
State New
Headers show
Series .travis.yml: Use travis_retry() in case of network issues | expand

Commit Message

Philippe Mathieu-Daudé June 13, 2020, 1:06 p.m. UTC
Use travis_retry() when cloning SLOF (see 31c8cc4f94e) in the
s390x container job, to avoid build failures:

  $ ( cd ${SRC_DIR} ; git submodule update --init roms/SLOF )
  Submodule 'roms/SLOF' (https://git.qemu.org/git/SLOF.git) registered for path 'roms/SLOF'
  Cloning into '/home/travis/build/user/qemu/roms/SLOF'...
  fatal: unable to access 'https://git.qemu.org/git/SLOF.git/': Could not resolve host: git.qemu.org
  fatal: clone of 'https://git.qemu.org/git/SLOF.git' into submodule path '/home/travis/build/user/qemu/roms/SLOF' failed
  Failed to clone 'roms/SLOF'. Retry scheduled
  Cloning into '/home/travis/build/user/qemu/roms/SLOF'...
  fatal: unable to access 'https://git.qemu.org/git/SLOF.git/': Could not resolve host: git.qemu.org
  fatal: clone of 'https://git.qemu.org/git/SLOF.git' into submodule path '/home/travis/build/user/qemu/roms/SLOF' failed
  Failed to clone 'roms/SLOF' a second time, aborting
  The command "( cd ${SRC_DIR} ; git submodule update --init roms/SLOF )" exited with 1.

Reported-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Mark Cave-Ayland June 14, 2020, 9:48 a.m. UTC | #1
On 13/06/2020 14:06, Philippe Mathieu-Daudé wrote:

> Use travis_retry() when cloning SLOF (see 31c8cc4f94e) in the
> s390x container job, to avoid build failures:
> 
>   $ ( cd ${SRC_DIR} ; git submodule update --init roms/SLOF )
>   Submodule 'roms/SLOF' (https://git.qemu.org/git/SLOF.git) registered for path 'roms/SLOF'
>   Cloning into '/home/travis/build/user/qemu/roms/SLOF'...
>   fatal: unable to access 'https://git.qemu.org/git/SLOF.git/': Could not resolve host: git.qemu.org
>   fatal: clone of 'https://git.qemu.org/git/SLOF.git' into submodule path '/home/travis/build/user/qemu/roms/SLOF' failed
>   Failed to clone 'roms/SLOF'. Retry scheduled
>   Cloning into '/home/travis/build/user/qemu/roms/SLOF'...
>   fatal: unable to access 'https://git.qemu.org/git/SLOF.git/': Could not resolve host: git.qemu.org
>   fatal: clone of 'https://git.qemu.org/git/SLOF.git' into submodule path '/home/travis/build/user/qemu/roms/SLOF' failed
>   Failed to clone 'roms/SLOF' a second time, aborting
>   The command "( cd ${SRC_DIR} ; git submodule update --init roms/SLOF )" exited with 1.
> 
> Reported-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>  .travis.yml | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/.travis.yml b/.travis.yml
> index ec6367af1f..19a1b55aab 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -496,7 +496,7 @@ jobs:
>          - CONFIG="--disable-containers --target-list=${MAIN_SOFTMMU_TARGETS},s390x-linux-user"
>          - UNRELIABLE=true
>        script:
> -        - ( cd ${SRC_DIR} ; git submodule update --init roms/SLOF )
> +        - ( cd ${SRC_DIR} ; travis_retry git submodule update --init roms/SLOF )
>          - BUILD_RC=0 && make -j${JOBS} || BUILD_RC=$?
>          - |
>            if [ "$BUILD_RC" -eq 0 ] ; then

Hi Phil,

Thanks for diagnosing and proposing a fix. Is there a reason why SLOF in particular
is failing compared to other repositories that might also need a similar change?


ATB,

Mark.
Thomas Huth June 15, 2020, 5:12 a.m. UTC | #2
On 14/06/2020 11.48, Mark Cave-Ayland wrote:
> On 13/06/2020 14:06, Philippe Mathieu-Daudé wrote:
> 
>> Use travis_retry() when cloning SLOF (see 31c8cc4f94e) in the
>> s390x container job, to avoid build failures:
>>
>>   $ ( cd ${SRC_DIR} ; git submodule update --init roms/SLOF )
>>   Submodule 'roms/SLOF' (https://git.qemu.org/git/SLOF.git) registered for path 'roms/SLOF'
>>   Cloning into '/home/travis/build/user/qemu/roms/SLOF'...
>>   fatal: unable to access 'https://git.qemu.org/git/SLOF.git/': Could not resolve host: git.qemu.org
>>   fatal: clone of 'https://git.qemu.org/git/SLOF.git' into submodule path '/home/travis/build/user/qemu/roms/SLOF' failed
>>   Failed to clone 'roms/SLOF'. Retry scheduled
>>   Cloning into '/home/travis/build/user/qemu/roms/SLOF'...
>>   fatal: unable to access 'https://git.qemu.org/git/SLOF.git/': Could not resolve host: git.qemu.org
>>   fatal: clone of 'https://git.qemu.org/git/SLOF.git' into submodule path '/home/travis/build/user/qemu/roms/SLOF' failed
>>   Failed to clone 'roms/SLOF' a second time, aborting
>>   The command "( cd ${SRC_DIR} ; git submodule update --init roms/SLOF )" exited with 1.
>>
>> Reported-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
>> ---
>>  .travis.yml | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/.travis.yml b/.travis.yml
>> index ec6367af1f..19a1b55aab 100644
>> --- a/.travis.yml
>> +++ b/.travis.yml
>> @@ -496,7 +496,7 @@ jobs:
>>          - CONFIG="--disable-containers --target-list=${MAIN_SOFTMMU_TARGETS},s390x-linux-user"
>>          - UNRELIABLE=true
>>        script:
>> -        - ( cd ${SRC_DIR} ; git submodule update --init roms/SLOF )
>> +        - ( cd ${SRC_DIR} ; travis_retry git submodule update --init roms/SLOF )
>>          - BUILD_RC=0 && make -j${JOBS} || BUILD_RC=$?
>>          - |
>>            if [ "$BUILD_RC" -eq 0 ] ; then
> 
> Hi Phil,
> 
> Thanks for diagnosing and proposing a fix. Is there a reason why SLOF in particular
> is failing compared to other repositories that might also need a similar change?

That's what I wonder, too. If git.qemu.org could not be resolved for
SLOF.git, why should it be resolvable for the other submodules that are
checked out automatically during the build process?

 Thomas
Philippe Mathieu-Daudé June 15, 2020, 6:38 a.m. UTC | #3
On 6/15/20 7:12 AM, Thomas Huth wrote:
> On 14/06/2020 11.48, Mark Cave-Ayland wrote:
>> On 13/06/2020 14:06, Philippe Mathieu-Daudé wrote:
>>
>>> Use travis_retry() when cloning SLOF (see 31c8cc4f94e) in the
>>> s390x container job, to avoid build failures:
>>>
>>>   $ ( cd ${SRC_DIR} ; git submodule update --init roms/SLOF )
>>>   Submodule 'roms/SLOF' (https://git.qemu.org/git/SLOF.git) registered for path 'roms/SLOF'
>>>   Cloning into '/home/travis/build/user/qemu/roms/SLOF'...
>>>   fatal: unable to access 'https://git.qemu.org/git/SLOF.git/': Could not resolve host: git.qemu.org
>>>   fatal: clone of 'https://git.qemu.org/git/SLOF.git' into submodule path '/home/travis/build/user/qemu/roms/SLOF' failed
>>>   Failed to clone 'roms/SLOF'. Retry scheduled
>>>   Cloning into '/home/travis/build/user/qemu/roms/SLOF'...
>>>   fatal: unable to access 'https://git.qemu.org/git/SLOF.git/': Could not resolve host: git.qemu.org
>>>   fatal: clone of 'https://git.qemu.org/git/SLOF.git' into submodule path '/home/travis/build/user/qemu/roms/SLOF' failed
>>>   Failed to clone 'roms/SLOF' a second time, aborting
>>>   The command "( cd ${SRC_DIR} ; git submodule update --init roms/SLOF )" exited with 1.
>>>
>>> Reported-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
>>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
>>> ---
>>>  .travis.yml | 2 +-
>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/.travis.yml b/.travis.yml
>>> index ec6367af1f..19a1b55aab 100644
>>> --- a/.travis.yml
>>> +++ b/.travis.yml
>>> @@ -496,7 +496,7 @@ jobs:
>>>          - CONFIG="--disable-containers --target-list=${MAIN_SOFTMMU_TARGETS},s390x-linux-user"
>>>          - UNRELIABLE=true
>>>        script:
>>> -        - ( cd ${SRC_DIR} ; git submodule update --init roms/SLOF )
>>> +        - ( cd ${SRC_DIR} ; travis_retry git submodule update --init roms/SLOF )
>>>          - BUILD_RC=0 && make -j${JOBS} || BUILD_RC=$?
>>>          - |
>>>            if [ "$BUILD_RC" -eq 0 ] ; then
>>
>> Hi Phil,
>>
>> Thanks for diagnosing and proposing a fix. Is there a reason why SLOF in particular
>> is failing compared to other repositories that might also need a similar change?
> 
> That's what I wonder, too. If git.qemu.org could not be resolved for
> SLOF.git, why should it be resolvable for the other submodules that are
> checked out automatically during the build process?

submodules updates are handled by make indeed:

config-host.mak -> git-submodule-update -> ./scripts/git-submodule.sh
using GIT_SUBMODULES generated by ./configure

Will respin.

> 
>  Thomas
>
diff mbox series

Patch

diff --git a/.travis.yml b/.travis.yml
index ec6367af1f..19a1b55aab 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -496,7 +496,7 @@  jobs:
         - CONFIG="--disable-containers --target-list=${MAIN_SOFTMMU_TARGETS},s390x-linux-user"
         - UNRELIABLE=true
       script:
-        - ( cd ${SRC_DIR} ; git submodule update --init roms/SLOF )
+        - ( cd ${SRC_DIR} ; travis_retry git submodule update --init roms/SLOF )
         - BUILD_RC=0 && make -j${JOBS} || BUILD_RC=$?
         - |
           if [ "$BUILD_RC" -eq 0 ] ; then