diff mbox series

CI: Update test/nokia_rx51_test.sh to use prebuilt images

Message ID 20230221162229.2845021-1-trini@konsulko.com
State Accepted
Commit ce0f745c36f5ff66c3dfb1320bb20727dc01b96f
Delegated to: Tom Rini
Headers show
Series CI: Update test/nokia_rx51_test.sh to use prebuilt images | expand

Commit Message

Tom Rini Feb. 21, 2023, 4:22 p.m. UTC
From: Pali Rohár <pali@kernel.org>

Now that the Dockerfile creates images which have the binaries we
require included, have CI make symlinks for them and update the existing
script to support this.

Signed-off-by: Tom Rini <trini@konsulko.com>
---
Pali, since you posted this in a thread as untested, can you please
reply with a S-o-b tag? I tweaked it slightly while testing. Thanks.
---
 .azure-pipelines.yml    |  9 ++++++++-
 .gitlab-ci.yml          | 11 +++++++++--
 test/nokia_rx51_test.sh | 24 ++++++++++++++++--------
 3 files changed, 33 insertions(+), 11 deletions(-)

Comments

Pali Rohár Feb. 21, 2023, 5:35 p.m. UTC | #1
On Tuesday 21 February 2023 11:22:29 Tom Rini wrote:
> From: Pali Rohár <pali@kernel.org>
> 
> Now that the Dockerfile creates images which have the binaries we
> require included, have CI make symlinks for them and update the existing
> script to support this.
> 
> Signed-off-by: Tom Rini <trini@konsulko.com>
> ---
> Pali, since you posted this in a thread as untested, can you please
> reply with a S-o-b tag? I tweaked it slightly while testing. Thanks.

If it works fine then OK.

Signed-off-by: Pali Rohár <pali@kernel.org>

> ---
>  .azure-pipelines.yml    |  9 ++++++++-
>  .gitlab-ci.yml          | 11 +++++++++--
>  test/nokia_rx51_test.sh | 24 ++++++++++++++++--------
>  3 files changed, 33 insertions(+), 11 deletions(-)
> 
> diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml
> index 8327edf87aa1..30025ff7517e 100644
> --- a/.azure-pipelines.yml
> +++ b/.azure-pipelines.yml
> @@ -2,7 +2,7 @@ variables:
>    windows_vm: windows-2019
>    ubuntu_vm: ubuntu-22.04
>    macos_vm: macOS-12
> -  ci_runner_image: trini/u-boot-gitlab-ci-runner:jammy-20230126-10Feb2023
> +  ci_runner_image: trini/u-boot-gitlab-ci-runner:jammy-20230126-17Feb2023
>    # Add '-u 0' options for Azure pipelines, otherwise we get "permission
>    # denied" error when it tries to "useradd -m -u 1001 vsts_azpcontainer",
>    # since our $(ci_runner_image) user is not root.
> @@ -187,6 +187,13 @@ stages:
>        options: $(container_option)
>      steps:
>        - script: |
> +          mkdir nokia_rx51_tmp
> +          ln -s /opt/nokia/u-boot-gen-combined nokia_rx51_tmp/
> +          ln -s /opt/nokia/qemu-n900.tar.gz nokia_rx51_tmp/
> +          ln -s /opt/nokia/kernel_2.6.28-20103103+0m5_armel.deb nokia_rx51_tmp/
> +          ln -s /opt/nokia/libc6_2.5.1-1eglibc27+0m5_armel.deb nokia_rx51_tmp/
> +          ln -s /opt/nokia/busybox_1.10.2.legal-1osso30+0m5_armel.deb nokia_rx51_tmp/
> +          ln -s /opt/nokia/qemu-system-arm nokia_rx51_tmp/
>            export PATH=/opt/gcc-12.2.0-nolibc/arm-linux-gnueabi/bin:$PATH
>            test/nokia_rx51_test.sh
>  
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index c3ceca2974d3..e320a24ef31e 100644
> --- a/.gitlab-ci.yml
> +++ b/.gitlab-ci.yml
> @@ -2,7 +2,7 @@
>  
>  # Grab our configured image.  The source for this is found
>  # in the u-boot tree at tools/docker/Dockerfile
> -image: trini/u-boot-gitlab-ci-runner:jammy-20230126-10Feb2023
> +image: trini/u-boot-gitlab-ci-runner:jammy-20230126-17Feb2023
>  
>  # We run some tests in different order, to catch some failures quicker.
>  stages:
> @@ -213,7 +213,14 @@ Run binman, buildman, dtoc, Kconfig and patman testsuites:
>  Run tests for Nokia RX-51 (aka N900):
>    stage: testsuites
>    script:
> -    - export PATH=/opt/gcc-12.2.0-nolibc/arm-linux-gnueabi/bin:$PATH;
> +    - mkdir nokia_rx51_tmp;
> +      ln -s /opt/nokia/u-boot-gen-combined nokia_rx51_tmp/;
> +      ln -s /opt/nokia/qemu-n900.tar.gz nokia_rx51_tmp/;
> +      ln -s /opt/nokia/kernel_2.6.28-20103103+0m5_armel.deb nokia_rx51_tmp/;
> +      ln -s /opt/nokia/libc6_2.5.1-1eglibc27+0m5_armel.deb nokia_rx51_tmp/;
> +      ln -s /opt/nokia/busybox_1.10.2.legal-1osso30+0m5_armel.deb nokia_rx51_tmp/;
> +      ln -s /opt/nokia/qemu-system-arm nokia_rx51_tmp/;
> +      export PATH=/opt/gcc-12.2.0-nolibc/arm-linux-gnueabi/bin:$PATH;
>        test/nokia_rx51_test.sh
>  
>  # Check for any pylint regressions
> diff --git a/test/nokia_rx51_test.sh b/test/nokia_rx51_test.sh
> index a516ec2967c3..dca9ef3027b7 100755
> --- a/test/nokia_rx51_test.sh
> +++ b/test/nokia_rx51_test.sh
> @@ -83,8 +83,10 @@ echo
>  
>  # Download qflasher and nolo images
>  # This is proprietary qemu flasher tool with first stage images, but license allows non-commercial redistribution
> -wget -c http://repository.maemo.org/qemu-n900/qemu-n900.tar.gz
> -tar -xf qemu-n900.tar.gz
> +if ! test -f qflasher || ! test -f xloader-qemu.bin || ! test -f secondary-qemu.bin; then
> +	test -f qemu-n900.tar.gz || wget -c http://repository.maemo.org/qemu-n900/qemu-n900.tar.gz
> +	tar -xf qemu-n900.tar.gz
> +fi
>  
>  # Download Maemo script u-boot-gen-combined
>  if ! test -f u-boot-gen-combined; then
> @@ -94,16 +96,22 @@ if ! test -f u-boot-gen-combined; then
>  fi
>  
>  # Download Maemo fiasco kernel
> -wget -c http://repository.maemo.org/pool/maemo5.0/free/k/kernel/kernel_2.6.28-20103103+0m5_armel.deb
> -dpkg -x kernel_2.6.28-20103103+0m5_armel.deb kernel_2.6.28
> +if ! test -d kernel_2.6.28; then
> +	test -f kernel_2.6.28-20103103+0m5_armel.deb || wget -c http://repository.maemo.org/pool/maemo5.0/free/k/kernel/kernel_2.6.28-20103103+0m5_armel.deb
> +	dpkg -x kernel_2.6.28-20103103+0m5_armel.deb kernel_2.6.28
> +fi
>  
>  # Download Maemo libc
> -wget -c http://repository.maemo.org/pool/maemo5.0/free/g/glibc/libc6_2.5.1-1eglibc27+0m5_armel.deb
> -dpkg -x libc6_2.5.1-1eglibc27+0m5_armel.deb libc6_2.5.1
> +if ! test -d libc6_2.5.1; then
> +	test -f libc6_2.5.1-1eglibc27+0m5_armel.deb || wget -c http://repository.maemo.org/pool/maemo5.0/free/g/glibc/libc6_2.5.1-1eglibc27+0m5_armel.deb
> +	dpkg -x libc6_2.5.1-1eglibc27+0m5_armel.deb libc6_2.5.1
> +fi
>  
>  # Download Maemo busybox
> -wget -c http://repository.maemo.org/pool/maemo5.0/free/b/busybox/busybox_1.10.2.legal-1osso30+0m5_armel.deb
> -dpkg -x busybox_1.10.2.legal-1osso30+0m5_armel.deb busybox_1.10.2
> +if ! test -d busybox_1.10.2; then
> +	test -f busybox_1.10.2.legal-1osso30+0m5_armel.deb || wget -c http://repository.maemo.org/pool/maemo5.0/free/b/busybox/busybox_1.10.2.legal-1osso30+0m5_armel.deb
> +	dpkg -x busybox_1.10.2.legal-1osso30+0m5_armel.deb busybox_1.10.2
> +fi
>  
>  echo
>  echo "======================================="
> -- 
> 2.34.1
>
Simon Glass Feb. 21, 2023, 7:41 p.m. UTC | #2
On Tue, 21 Feb 2023 at 09:22, Tom Rini <trini@konsulko.com> wrote:
>
> From: Pali Rohár <pali@kernel.org>
>
> Now that the Dockerfile creates images which have the binaries we
> require included, have CI make symlinks for them and update the existing
> script to support this.
>
> Signed-off-by: Tom Rini <trini@konsulko.com>
> ---
> Pali, since you posted this in a thread as untested, can you please
> reply with a S-o-b tag? I tweaked it slightly while testing. Thanks.
> ---
>  .azure-pipelines.yml    |  9 ++++++++-
>  .gitlab-ci.yml          | 11 +++++++++--
>  test/nokia_rx51_test.sh | 24 ++++++++++++++++--------
>  3 files changed, 33 insertions(+), 11 deletions(-)

Yippee!

Reviewed-by: Simon Glass <sjg@chromium.org>
Tom Rini Feb. 25, 2023, 6:23 p.m. UTC | #3
On Tue, Feb 21, 2023 at 11:22:29AM -0500, Tom Rini wrote:

> From: Pali Rohár <pali@kernel.org>
> 
> Now that the Dockerfile creates images which have the binaries we
> require included, have CI make symlinks for them and update the existing
> script to support this.
> 
> Signed-off-by: Tom Rini <trini@konsulko.com>
> Signed-off-by: Pali Rohár <pali@kernel.org>
> Reviewed-by: Simon Glass <sjg@chromium.org>

Applied to u-boot/next, thanks!
Pali Rohár Feb. 25, 2023, 6:35 p.m. UTC | #4
On Saturday 25 February 2023 13:23:33 Tom Rini wrote:
> On Tue, Feb 21, 2023 at 11:22:29AM -0500, Tom Rini wrote:
> 
> > From: Pali Rohár <pali@kernel.org>
> > 
> > Now that the Dockerfile creates images which have the binaries we
> > require included, have CI make symlinks for them and update the existing
> > script to support this.
> > 
> > Signed-off-by: Tom Rini <trini@konsulko.com>
> > Signed-off-by: Pali Rohár <pali@kernel.org>
> > Reviewed-by: Simon Glass <sjg@chromium.org>
> 
> Applied to u-boot/next, thanks!
> 
> -- 
> Tom

Maybe you wanted this in master to make CI reliable also for master branch?
Tom Rini Feb. 25, 2023, 6:48 p.m. UTC | #5
On Sat, Feb 25, 2023 at 07:35:28PM +0100, Pali Rohár wrote:
> On Saturday 25 February 2023 13:23:33 Tom Rini wrote:
> > On Tue, Feb 21, 2023 at 11:22:29AM -0500, Tom Rini wrote:
> > 
> > > From: Pali Rohár <pali@kernel.org>
> > > 
> > > Now that the Dockerfile creates images which have the binaries we
> > > require included, have CI make symlinks for them and update the existing
> > > script to support this.
> > > 
> > > Signed-off-by: Tom Rini <trini@konsulko.com>
> > > Signed-off-by: Pali Rohár <pali@kernel.org>
> > > Reviewed-by: Simon Glass <sjg@chromium.org>
> > 
> > Applied to u-boot/next, thanks!
> > 
> > -- 
> > Tom
> 
> Maybe you wanted this in master to make CI reliable also for master branch?

I'm trying to follow my own "just fixes, really" rule. I don't know
_why_ Azure fails out randomly, but I don't think bumping the containers
for just this, right now, is a fix, exactly.
Pali Rohár Feb. 25, 2023, 9:37 p.m. UTC | #6
On Saturday 25 February 2023 13:48:25 Tom Rini wrote:
> On Sat, Feb 25, 2023 at 07:35:28PM +0100, Pali Rohár wrote:
> > On Saturday 25 February 2023 13:23:33 Tom Rini wrote:
> > > On Tue, Feb 21, 2023 at 11:22:29AM -0500, Tom Rini wrote:
> > > 
> > > > From: Pali Rohár <pali@kernel.org>
> > > > 
> > > > Now that the Dockerfile creates images which have the binaries we
> > > > require included, have CI make symlinks for them and update the existing
> > > > script to support this.
> > > > 
> > > > Signed-off-by: Tom Rini <trini@konsulko.com>
> > > > Signed-off-by: Pali Rohár <pali@kernel.org>
> > > > Reviewed-by: Simon Glass <sjg@chromium.org>
> > > 
> > > Applied to u-boot/next, thanks!
> > > 
> > > -- 
> > > Tom
> > 
> > Maybe you wanted this in master to make CI reliable also for master branch?
> 
> I'm trying to follow my own "just fixes, really" rule. I don't know
> _why_ Azure fails out randomly, but I don't think bumping the containers
> for just this, right now, is a fix, exactly.
> 
> -- 
> Tom

Ok!
diff mbox series

Patch

diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml
index 8327edf87aa1..30025ff7517e 100644
--- a/.azure-pipelines.yml
+++ b/.azure-pipelines.yml
@@ -2,7 +2,7 @@  variables:
   windows_vm: windows-2019
   ubuntu_vm: ubuntu-22.04
   macos_vm: macOS-12
-  ci_runner_image: trini/u-boot-gitlab-ci-runner:jammy-20230126-10Feb2023
+  ci_runner_image: trini/u-boot-gitlab-ci-runner:jammy-20230126-17Feb2023
   # Add '-u 0' options for Azure pipelines, otherwise we get "permission
   # denied" error when it tries to "useradd -m -u 1001 vsts_azpcontainer",
   # since our $(ci_runner_image) user is not root.
@@ -187,6 +187,13 @@  stages:
       options: $(container_option)
     steps:
       - script: |
+          mkdir nokia_rx51_tmp
+          ln -s /opt/nokia/u-boot-gen-combined nokia_rx51_tmp/
+          ln -s /opt/nokia/qemu-n900.tar.gz nokia_rx51_tmp/
+          ln -s /opt/nokia/kernel_2.6.28-20103103+0m5_armel.deb nokia_rx51_tmp/
+          ln -s /opt/nokia/libc6_2.5.1-1eglibc27+0m5_armel.deb nokia_rx51_tmp/
+          ln -s /opt/nokia/busybox_1.10.2.legal-1osso30+0m5_armel.deb nokia_rx51_tmp/
+          ln -s /opt/nokia/qemu-system-arm nokia_rx51_tmp/
           export PATH=/opt/gcc-12.2.0-nolibc/arm-linux-gnueabi/bin:$PATH
           test/nokia_rx51_test.sh
 
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index c3ceca2974d3..e320a24ef31e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -2,7 +2,7 @@ 
 
 # Grab our configured image.  The source for this is found
 # in the u-boot tree at tools/docker/Dockerfile
-image: trini/u-boot-gitlab-ci-runner:jammy-20230126-10Feb2023
+image: trini/u-boot-gitlab-ci-runner:jammy-20230126-17Feb2023
 
 # We run some tests in different order, to catch some failures quicker.
 stages:
@@ -213,7 +213,14 @@  Run binman, buildman, dtoc, Kconfig and patman testsuites:
 Run tests for Nokia RX-51 (aka N900):
   stage: testsuites
   script:
-    - export PATH=/opt/gcc-12.2.0-nolibc/arm-linux-gnueabi/bin:$PATH;
+    - mkdir nokia_rx51_tmp;
+      ln -s /opt/nokia/u-boot-gen-combined nokia_rx51_tmp/;
+      ln -s /opt/nokia/qemu-n900.tar.gz nokia_rx51_tmp/;
+      ln -s /opt/nokia/kernel_2.6.28-20103103+0m5_armel.deb nokia_rx51_tmp/;
+      ln -s /opt/nokia/libc6_2.5.1-1eglibc27+0m5_armel.deb nokia_rx51_tmp/;
+      ln -s /opt/nokia/busybox_1.10.2.legal-1osso30+0m5_armel.deb nokia_rx51_tmp/;
+      ln -s /opt/nokia/qemu-system-arm nokia_rx51_tmp/;
+      export PATH=/opt/gcc-12.2.0-nolibc/arm-linux-gnueabi/bin:$PATH;
       test/nokia_rx51_test.sh
 
 # Check for any pylint regressions
diff --git a/test/nokia_rx51_test.sh b/test/nokia_rx51_test.sh
index a516ec2967c3..dca9ef3027b7 100755
--- a/test/nokia_rx51_test.sh
+++ b/test/nokia_rx51_test.sh
@@ -83,8 +83,10 @@  echo
 
 # Download qflasher and nolo images
 # This is proprietary qemu flasher tool with first stage images, but license allows non-commercial redistribution
-wget -c http://repository.maemo.org/qemu-n900/qemu-n900.tar.gz
-tar -xf qemu-n900.tar.gz
+if ! test -f qflasher || ! test -f xloader-qemu.bin || ! test -f secondary-qemu.bin; then
+	test -f qemu-n900.tar.gz || wget -c http://repository.maemo.org/qemu-n900/qemu-n900.tar.gz
+	tar -xf qemu-n900.tar.gz
+fi
 
 # Download Maemo script u-boot-gen-combined
 if ! test -f u-boot-gen-combined; then
@@ -94,16 +96,22 @@  if ! test -f u-boot-gen-combined; then
 fi
 
 # Download Maemo fiasco kernel
-wget -c http://repository.maemo.org/pool/maemo5.0/free/k/kernel/kernel_2.6.28-20103103+0m5_armel.deb
-dpkg -x kernel_2.6.28-20103103+0m5_armel.deb kernel_2.6.28
+if ! test -d kernel_2.6.28; then
+	test -f kernel_2.6.28-20103103+0m5_armel.deb || wget -c http://repository.maemo.org/pool/maemo5.0/free/k/kernel/kernel_2.6.28-20103103+0m5_armel.deb
+	dpkg -x kernel_2.6.28-20103103+0m5_armel.deb kernel_2.6.28
+fi
 
 # Download Maemo libc
-wget -c http://repository.maemo.org/pool/maemo5.0/free/g/glibc/libc6_2.5.1-1eglibc27+0m5_armel.deb
-dpkg -x libc6_2.5.1-1eglibc27+0m5_armel.deb libc6_2.5.1
+if ! test -d libc6_2.5.1; then
+	test -f libc6_2.5.1-1eglibc27+0m5_armel.deb || wget -c http://repository.maemo.org/pool/maemo5.0/free/g/glibc/libc6_2.5.1-1eglibc27+0m5_armel.deb
+	dpkg -x libc6_2.5.1-1eglibc27+0m5_armel.deb libc6_2.5.1
+fi
 
 # Download Maemo busybox
-wget -c http://repository.maemo.org/pool/maemo5.0/free/b/busybox/busybox_1.10.2.legal-1osso30+0m5_armel.deb
-dpkg -x busybox_1.10.2.legal-1osso30+0m5_armel.deb busybox_1.10.2
+if ! test -d busybox_1.10.2; then
+	test -f busybox_1.10.2.legal-1osso30+0m5_armel.deb || wget -c http://repository.maemo.org/pool/maemo5.0/free/b/busybox/busybox_1.10.2.legal-1osso30+0m5_armel.deb
+	dpkg -x busybox_1.10.2.legal-1osso30+0m5_armel.deb busybox_1.10.2
+fi
 
 echo
 echo "======================================="