[RFC] deb-dl-dir: Retry downloads 3 times for src files

Message ID 20220119125537.1734102-1-Srinuvasan_A@mentor.com
State Accepted, archived
Headers show
Series [RFC] deb-dl-dir: Retry downloads 3 times for src files | expand

Commit Message

Srinuvasan Arjunan Jan. 19, 2022, 2:55 a.m. UTC
From: Srinuvasan A <srinuvasan_a@mentor.com>

Sometime the source packages are not downloaded successfully due to bad network,
hence the builds get fails with timeout issue

Added a retry mechanism to attempt multiple times before giving up.

Signed-off-by: Srinuvasan A <srinuvasan_a@mentor.com>
---
 meta/classes/deb-dl-dir.bbclass | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

vijai kumar Jan. 20, 2022, 6:11 a.m. UTC | #1
On Wed, Jan 19, 2022 at 6:26 PM Srinuvasan A <Srinuvasan_A@mentor.com> wrote:
>
> From: Srinuvasan A <srinuvasan_a@mentor.com>
>
> Sometime the source packages are not downloaded successfully due to bad network,
> hence the builds get fails with timeout issue
>
> Added a retry mechanism to attempt multiple times before giving up.


If this is approved, we should probably include it for the upcoming
v0.8 release.

Thanks,
Vijai Kumar K

>
> Signed-off-by: Srinuvasan A <srinuvasan_a@mentor.com>
> ---
>  meta/classes/deb-dl-dir.bbclass | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/meta/classes/deb-dl-dir.bbclass b/meta/classes/deb-dl-dir.bbclass
> index ffbff07..42542d7 100644
> --- a/meta/classes/deb-dl-dir.bbclass
> +++ b/meta/classes/deb-dl-dir.bbclass
> @@ -57,7 +57,7 @@ debsrc_download() {
>          [ -n "$dscfile" ] && continue
>
>          sudo -E chroot --userspec=$( id -u ):$( id -g ) ${rootfs} \
> -            sh -c ' mkdir -p "/deb-src/${1}/${2}" && cd "/deb-src/${1}/${2}" && apt-get -y --download-only --only-source source "$2"="$3" ' download-src "${rootfs_distro}" "${src}" "${version}"
> +            sh -c ' mkdir -p "/deb-src/${1}/${2}" && cd "/deb-src/${1}/${2}" && apt-get -y -o Acquire::Retries=3 --download-only --only-source source "$2"="$3" ' download-src "${rootfs_distro}" "${src}" "${version}"
>      done
>      ) 9>"${DEBSRCDIR}/${rootfs_distro}.lock"
>
> --
> 2.25.1
>
> --
> You received this message because you are subscribed to the Google Groups "isar-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+unsubscribe@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/isar-users/20220119125537.1734102-1-Srinuvasan_A%40mentor.com.
Anton Mikanovich Jan. 21, 2022, 5:36 a.m. UTC | #2
19.01.2022 15:55, Srinuvasan A wrote:
> From: Srinuvasan A <srinuvasan_a@mentor.com>
>
> Sometime the source packages are not downloaded successfully due to bad network,
> hence the builds get fails with timeout issue
>
> Added a retry mechanism to attempt multiple times before giving up.
>
> Signed-off-by: Srinuvasan A <srinuvasan_a@mentor.com>
> ---
>   meta/classes/deb-dl-dir.bbclass | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/meta/classes/deb-dl-dir.bbclass b/meta/classes/deb-dl-dir.bbclass
> index ffbff07..42542d7 100644
> --- a/meta/classes/deb-dl-dir.bbclass
> +++ b/meta/classes/deb-dl-dir.bbclass
> @@ -57,7 +57,7 @@ debsrc_download() {
>           [ -n "$dscfile" ] && continue
>   
>           sudo -E chroot --userspec=$( id -u ):$( id -g ) ${rootfs} \
> -            sh -c ' mkdir -p "/deb-src/${1}/${2}" && cd "/deb-src/${1}/${2}" && apt-get -y --download-only --only-source source "$2"="$3" ' download-src "${rootfs_distro}" "${src}" "${version}"
> +            sh -c ' mkdir -p "/deb-src/${1}/${2}" && cd "/deb-src/${1}/${2}" && apt-get -y -o Acquire::Retries=3 --download-only --only-source source "$2"="$3" ' download-src "${rootfs_distro}" "${src}" "${version}"
>       done
>       ) 9>"${DEBSRCDIR}/${rootfs_distro}.lock"
>   

Looks good, we can apply it next week even without resending as a 
[PATCH] if no objection.
Anton Mikanovich Jan. 27, 2022, 5:02 a.m. UTC | #3
19.01.2022 15:55, Srinuvasan A wrote:
> From: Srinuvasan A <srinuvasan_a@mentor.com>
>
> Sometime the source packages are not downloaded successfully due to bad network,
> hence the builds get fails with timeout issue
>
> Added a retry mechanism to attempt multiple times before giving up.
>
> Signed-off-by: Srinuvasan A <srinuvasan_a@mentor.com>
> ---
>   meta/classes/deb-dl-dir.bbclass | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/meta/classes/deb-dl-dir.bbclass b/meta/classes/deb-dl-dir.bbclass
> index ffbff07..42542d7 100644
> --- a/meta/classes/deb-dl-dir.bbclass
> +++ b/meta/classes/deb-dl-dir.bbclass
> @@ -57,7 +57,7 @@ debsrc_download() {
>           [ -n "$dscfile" ] && continue
>   
>           sudo -E chroot --userspec=$( id -u ):$( id -g ) ${rootfs} \
> -            sh -c ' mkdir -p "/deb-src/${1}/${2}" && cd "/deb-src/${1}/${2}" && apt-get -y --download-only --only-source source "$2"="$3" ' download-src "${rootfs_distro}" "${src}" "${version}"
> +            sh -c ' mkdir -p "/deb-src/${1}/${2}" && cd "/deb-src/${1}/${2}" && apt-get -y -o Acquire::Retries=3 --download-only --only-source source "$2"="$3" ' download-src "${rootfs_distro}" "${src}" "${version}"
>       done
>       ) 9>"${DEBSRCDIR}/${rootfs_distro}.lock"
>   

Applied to next, thanks.

Patch

diff --git a/meta/classes/deb-dl-dir.bbclass b/meta/classes/deb-dl-dir.bbclass
index ffbff07..42542d7 100644
--- a/meta/classes/deb-dl-dir.bbclass
+++ b/meta/classes/deb-dl-dir.bbclass
@@ -57,7 +57,7 @@  debsrc_download() {
         [ -n "$dscfile" ] && continue
 
         sudo -E chroot --userspec=$( id -u ):$( id -g ) ${rootfs} \
-            sh -c ' mkdir -p "/deb-src/${1}/${2}" && cd "/deb-src/${1}/${2}" && apt-get -y --download-only --only-source source "$2"="$3" ' download-src "${rootfs_distro}" "${src}" "${version}"
+            sh -c ' mkdir -p "/deb-src/${1}/${2}" && cd "/deb-src/${1}/${2}" && apt-get -y -o Acquire::Retries=3 --download-only --only-source source "$2"="$3" ' download-src "${rootfs_distro}" "${src}" "${version}"
     done
     ) 9>"${DEBSRCDIR}/${rootfs_distro}.lock"