HI all the results from my test are available on https://gist.github.com/jerpelea
I think that we should push all results on a git with date sorted by platform /board then create a simple heatmap with the latest build and green/red @lup what do you think ? Best regards Alin On Mon, Oct 28, 2024 at 9:15 AM Alin Jerpelea <jerpe...@gmail.com> wrote: > Hi Lup, > > please add to the guide > "gh auth login" so that users can upload the results > > Best regards > Alin > > > On Mon, Oct 28, 2024 at 9:12 AM Lee, Lup Yuen <lu...@appkaki.com> wrote: > >> << please add to the guide "apt install gh " on host os >> >> >> Yep thanks Alin! I have updated the article: >> >> https://lupyuen.codeberg.page/articles/ci2.html#build-nuttx-for-all-target-groups >> >> ## Download the scriptsgit clone >> https://github.com/lupyuen/nuttx-releasecd nuttx-release >> ## Login to GitHub in Headless Modesudo apt install ghsudo gh auth login >> ## Run the Build Job forever: arm-01 ... arm-14sudo ./run-ci.sh >> >> >> Lup >> >> On Mon, Oct 28, 2024 at 4:05 PM Alin Jerpelea <jerpe...@gmail.com> wrote: >> >> > Hi Lup >> > >> > please add to the guide >> > "apt install gh " >> > on host os >> > >> > Best regards >> > Alin >> > >> > On Mon, Oct 28, 2024 at 8:50 AM Lee, Lup Yuen <lu...@appkaki.com> >> wrote: >> > >> > > Thanks Alin, I think the fix is here: >> > > https://github.com/apache/nuttx/pull/14527 >> > > >> > > Lup >> > > >> > > On Mon, Oct 28, 2024 at 3:43 PM Alin Jerpelea <jerpe...@gmail.com> >> > wrote: >> > > >> > > > Cmake in present: stm32f334-disco/nsh,CONFIG_ARM_TOOLCHAIN_CLANG >> > > > Configuration/Tool: stm32f334-disco/nsh,CONFIG_ARM_TOOLCHAIN_CLANG >> > > > 2024-10-28 07:41:50 >> > > > >> > > > >> > > >> > >> ------------------------------------------------------------------------------------ >> > > > Cleaning... >> > > > Configuring... >> > > > CMake Warning at cmake/nuttx_kconfig.cmake:171 (message): >> > > > Kconfig Configuration Error: warning: STM32_HAVE_HRTIM1_PLLCLK >> > (defined >> > > > at >> > > > arch/arm/src/stm32/Kconfig:8109) has direct dependencies >> STM32_HRTIM >> > && >> > > > ARCH_CHIP_STM32 && ARCH_ARM with value n, but is currently being >> > > > y-selected >> > > > by the following symbols: >> > > > >> > > > - STM32_STM32F33XX (defined at arch/arm/src/stm32/Kconfig:1533), >> > with >> > > > value y, direct dependencies ARCH_CHIP_STM32 && ARCH_ARM (value: y), >> > and >> > > > select condition ARCH_CHIP_STM32 && ARCH_ARM (value: y) >> > > > >> > > > Call Stack (most recent call first): >> > > > CMakeLists.txt:322 (nuttx_olddefconfig) >> > > > >> > > > >> > > > Select HOST_LINUX=y >> > > > CMake Warning at cmake/nuttx_kconfig.cmake:192 (message): >> > > > Kconfig Configuration Error: warning: STM32_HAVE_HRTIM1_PLLCLK >> > (defined >> > > > at >> > > > arch/arm/src/stm32/Kconfig:8109) has direct dependencies >> STM32_HRTIM >> > && >> > > > ARCH_CHIP_STM32 && ARCH_ARM with value n, but is currently being >> > > > y-selected >> > > > by the following symbols: >> > > > >> > > > - STM32_STM32F33XX (defined at arch/arm/src/stm32/Kconfig:1533), >> > with >> > > > value y, direct dependencies ARCH_CHIP_STM32 && ARCH_ARM (value: y), >> > and >> > > > select condition ARCH_CHIP_STM32 && ARCH_ARM (value: y) >> > > > >> > > > Call Stack (most recent call first): >> > > > cmake/nuttx_sethost.cmake:107 (nuttx_setconfig) >> > > > CMakeLists.txt:333 (nuttx_sethost) >> > > > >> > > > >> > > > Disabling CONFIG_ARM_TOOLCHAIN_BUILDROOT >> > > > Enabling CONFIG_ARM_TOOLCHAIN_CLANG >> > > > Building NuttX... >> > > > >> > > > On Mon, Oct 28, 2024 at 8:18 AM Alin Jerpelea <jerpe...@gmail.com> >> > > wrote: >> > > > >> > > > > HI Lup >> > > > > I found another one >> > > > > >> > > > > Cmake in present: nucleo-f334r8/adc,CONFIG_ARM_TOOLCHAIN_CLANG >> > > > > Configuration/Tool: nucleo-f334r8/adc,CONFIG_ARM_TOOLCHAIN_CLANG >> > > > > 2024-10-28 07:17:15 >> > > > > >> > > > > >> > > > >> > > >> > >> ------------------------------------------------------------------------------------ >> > > > > Cleaning... >> > > > > Configuring... >> > > > > CMake Warning at cmake/nuttx_kconfig.cmake:171 (message): >> > > > > Kconfig Configuration Error: warning: STM32_HAVE_HRTIM1_PLLCLK >> > > (defined >> > > > > at >> > > > > arch/arm/src/stm32/Kconfig:8109) has direct dependencies >> > STM32_HRTIM >> > > && >> > > > > ARCH_CHIP_STM32 && ARCH_ARM with value n, but is currently being >> > > > > y-selected >> > > > > by the following symbols: >> > > > > >> > > > > - STM32_STM32F33XX (defined at >> arch/arm/src/stm32/Kconfig:1533), >> > > with >> > > > > value y, direct dependencies ARCH_CHIP_STM32 && ARCH_ARM (value: >> y), >> > > and >> > > > > select condition ARCH_CHIP_STM32 && ARCH_ARM (value: y) >> > > > > >> > > > > Call Stack (most recent call first): >> > > > > CMakeLists.txt:322 (nuttx_olddefconfig) >> > > > > >> > > > > >> > > > > Select HOST_LINUX=y >> > > > > CMake Warning at cmake/nuttx_kconfig.cmake:192 (message): >> > > > > Kconfig Configuration Error: warning: STM32_HAVE_HRTIM1_PLLCLK >> > > (defined >> > > > > at >> > > > > arch/arm/src/stm32/Kconfig:8109) has direct dependencies >> > STM32_HRTIM >> > > && >> > > > > ARCH_CHIP_STM32 && ARCH_ARM with value n, but is currently being >> > > > > y-selected >> > > > > by the following symbols: >> > > > > >> > > > > - STM32_STM32F33XX (defined at >> arch/arm/src/stm32/Kconfig:1533), >> > > with >> > > > > value y, direct dependencies ARCH_CHIP_STM32 && ARCH_ARM (value: >> y), >> > > and >> > > > > select condition ARCH_CHIP_STM32 && ARCH_ARM (value: y) >> > > > > >> > > > > Call Stack (most recent call first): >> > > > > cmake/nuttx_sethost.cmake:107 (nuttx_setconfig) >> > > > > CMakeLists.txt:333 (nuttx_sethost) >> > > > > >> > > > > >> > > > > Disabling CONFIG_ARM_TOOLCHAIN_GNU_EABI >> > > > > Enabling CONFIG_ARM_TOOLCHAIN_CLANG >> > > > > Building NuttX... >> > > > > >> > > > > Thanks >> > > > > Alin >> > > > > >> > > > > On Mon, Oct 28, 2024 at 4:40 AM Lee, Lup Yuen <lu...@appkaki.com> >> > > wrote: >> > > > > >> > > > >> << needed on host machine (please update the article) >> > > > >> apt install gcc-arm-none-eabi binutils-arm-none-eabi genromfs >> >> > > > >> >> > > > >> Hi Alin: This is super strange. genromfs isn't installed on my >> Host >> > > > >> Machine: >> > > > >> >> > > > >> ## genromfs isn't installed on my Host Machine >> > > > >> $ genromfs -h >> > > > >> Command 'genromfs' not found >> > > > >> >> > > > >> ## genromfs works fine inside Docker >> > > > >> $ sudo docker run -it \ >> > > > >> ghcr.io/apache/nuttx/apache-nuttx-ci-linux:latest \ >> > > > >> /bin/bash -c "genromfs -h" >> > > > >> genromfs 0.5.2 >> > > > >> >> > > > >> Is anyone else having problems building NuttX with our Docker >> Image? >> > > > >> Please >> > > > >> lemme know thanks! >> > > > >> >> > > > >> << /usr/bin/bash: line 1: arm-nuttx-eabi-gcc: command not found >> >> >> > > > >> >> > > > >> This is a harmless message, we're tracking the issue here: >> > > > >> https://github.com/apache/nuttx/issues/14374 >> > > > >> >> > > > >> Lup >> > > > >> >> > > > >> On Mon, Oct 28, 2024 at 11:23 AM Alin Jerpelea < >> jerpe...@gmail.com> >> > > > >> wrote: >> > > > >> >> > > > >> > Hi Lup, >> > > > >> > >> > > > >> > needed on host machine (please update the article) >> > > > >> > >> > > > >> > apt install gcc-arm-none-eabi binutils-arm-none-eabi genromfs >> > > > >> > >> > > > >> > error still unidentified >> > > > >> > >> > > > >> > onfiguration/Tool: >> c5471evm/nettest,CONFIG_ARM_TOOLCHAIN_GNU_EABI >> > > > >> > 2024-10-28 04:20:28 >> > > > >> > >> > > > >> > >> > > > >> >> > > > >> > > >> > >> ------------------------------------------------------------------------------------ >> > > > >> > Cleaning... >> > > > >> > Configuring... >> > > > >> > Disabling CONFIG_ARM_TOOLCHAIN_BUILDROOT >> > > > >> > Enabling CONFIG_ARM_TOOLCHAIN_GNU_EABI >> > > > >> > Building NuttX... >> > > > >> > Normalize c5471evm/nettest >> > > > >> > /usr/bin/bash: line 1: arm-nuttx-eabi-gcc: command not found >> > > > >> > /usr/bin/bash: line 1: arm-nuttx-eabi-gcc: command not found >> > > > >> > >> > > > >> > Best Regards >> > > > >> > >> > > > >> > Alin >> > > > >> > >> > > > >> > >> > > > >> > On Mon, Oct 28, 2024 at 3:25 AM Lee, Lup Yuen < >> lu...@appkaki.com> >> > > > >> wrote: >> > > > >> > >> > > > >> > > << /usr/bin/bash: line 1: genromfs: command not found >> >> > > > >> > > >> > > > >> > > Hi Alin: That's very odd, genromfs is inside the Docker >> Image so >> > > it >> > > > >> > > shouldn't fail (unless we're running outside Docker?). Here's >> > how >> > > we >> > > > >> > check >> > > > >> > > genromfs: >> > > > >> > > >> > > > >> > > ## This will show "genromfs 0.5.2" >> > > > >> > > sudo docker run -it \ >> > > > >> > > ghcr.io/apache/nuttx/apache-nuttx-ci-linux:latest \ >> > > > >> > > /bin/bash -c "genromfs -h" >> > > > >> > > >> > > > >> > > Also spresense:elf builds OK on my Ubuntu PC: >> > > > >> > > >> > > > >> > > >> > > > >> > >> > > > >> >> > > > >> > > >> > >> https://gist.github.com/nuttxpr/8a203426383b84626c8a5bd06168bf9b#file-ci-arm-01-log-L359 >> > > > >> > > >> > > > >> > > Could you try this (from my article) and lemme know if it >> works? >> > > > >> Thanks! >> > > > >> > > >> > > > >> > > ## Compile Target Group arm-01, including spresense/elf >> > > > >> > > job=arm-01 >> > > > >> > > sudo docker run -it \ >> > > > >> > > ghcr.io/apache/nuttx/apache-nuttx-ci-linux:latest \ >> > > > >> > > /bin/bash -c " >> > > > >> > > cd ; >> > > > >> > > pwd ; >> > > > >> > > git clone https://github.com/apache/nuttx ; >> > > > >> > > git clone https://github.com/apache/nuttx-apps apps ; >> > > > >> > > pushd nuttx ; echo NuttX Source: >> > > > >> > > https://github.com/apache/nuttx/tree/\$(git rev-parse HEAD) >> ; >> > > popd >> > > > ; >> > > > >> > > pushd apps ; echo NuttX Apps: >> > > > >> > > https://github.com/apache/nuttx-apps/tree/\$(git rev-parse >> > HEAD) >> > > ; >> > > > >> popd >> > > > >> > ; >> > > > >> > > sleep 10 ; >> > > > >> > > cd nuttx/tools/ci ; >> > > > >> > > (./cibuild.sh -c -A -N -R testlist/$job.dat || echo '***** >> > BUILD >> > > > >> > FAILED') >> > > > >> > > ; >> > > > >> > > " >> > > > >> > > >> > > > >> > > Lup >> > > > >> > > >> > > > >> > > On Mon, Oct 28, 2024 at 10:01 AM Alin Jerpelea < >> > > jerpe...@gmail.com> >> > > > >> > wrote: >> > > > >> > > >> > > > >> > > > Hi Lup >> > > > >> > > > I started the test and I found a fiew issues >> > > > >> > > > >> > > > >> > > > Configuration/Tool: >> > spresense/elf,CONFIG_ARM_TOOLCHAIN_GNU_EABI >> > > > >> > > > 2024-10-28 02:49:20 >> > > > >> > > > >> > > > >> > > > >> > > > >> > > >> > > > >> > >> > > > >> >> > > > >> > > >> > >> ------------------------------------------------------------------------------------ >> > > > >> > > > Cleaning... >> > > > >> > > > Configuring... >> > > > >> > > > Disabling CONFIG_ARM_TOOLCHAIN_GNU_EABI >> > > > >> > > > Enabling CONFIG_ARM_TOOLCHAIN_GNU_EABI >> > > > >> > > > Building NuttX... >> > > > >> > > > /usr/bin/bash: line 1: genromfs: command not found >> > > > >> > > > make[3]: *** [Makefile:81: >> > > > >> > > > /awork/nuttx/NuttX/farm/apps/examples/elf/tests/romfs.img] >> > Error >> > > > 127 >> > > > >> > > > make[3]: Target 'all' not remade because of errors. >> > > > >> > > > make[2]: *** [Makefile:59: build] Error 2 >> > > > >> > > > make[2]: Target 'all' not remade because of errors. >> > > > >> > > > make[1]: *** [Makefile:52: >> > > > >> > /awork/nuttx/NuttX/farm/apps/examples/elf_all] >> > > > >> > > > Error 2 >> > > > >> > > > make[1]: Target 'all' not remade because of errors. >> > > > >> > > > make: *** [tools/LibTargets.mk:232: >> > > > >> > > /awork/nuttx/NuttX/farm/apps/libapps.a] >> > > > >> > > > Error 2 >> > > > >> > > > make: Target 'all' not remade because of errors. >> > > > >> > > > /awork/nuttx/NuttX/farm/nuttx/tools/testbuild.sh: line 385: >> > > > >> > > > /awork/nuttx/NuttX/farm/nuttx/../nuttx/nuttx.manifest: No >> such >> > > > file >> > > > >> or >> > > > >> > > > directory >> > > > >> > > > Normalize spresense/elf >> > > > >> > > > >> > > > >> > > > Configuration/Tool: >> > > > >> spresense/posix_spawn,CONFIG_ARM_TOOLCHAIN_GNU_EABI >> > > > >> > > > 2024-10-28 02:51:17 >> > > > >> > > > >> > > > >> > > > >> > > > >> > > >> > > > >> > >> > > > >> >> > > > >> > > >> > >> ------------------------------------------------------------------------------------ >> > > > >> > > > Cleaning... >> > > > >> > > > Configuring... >> > > > >> > > > Disabling CONFIG_ARM_TOOLCHAIN_GNU_EABI >> > > > >> > > > Enabling CONFIG_ARM_TOOLCHAIN_GNU_EABI >> > > > >> > > > Building NuttX... >> > > > >> > > > /usr/bin/bash: line 1: genromfs: command not found >> > > > >> > > > make[3]: *** [Makefile:50: >> > > > >> > > > >> > > > >> >> > > >> /awork/nuttx/NuttX/farm/apps/examples/posix_spawn/filesystem/romfs.img] >> > > > >> > > > Error 127 >> > > > >> > > > make[3]: Target 'all' not remade because of errors. >> > > > >> > > > make[2]: *** [Makefile:47: build] Error 2 >> > > > >> > > > make[2]: Target 'all' not remade because of errors. >> > > > >> > > > make[1]: *** [Makefile:52: >> > > > >> > > > /awork/nuttx/NuttX/farm/apps/examples/posix_spawn_all] >> Error 2 >> > > > >> > > > make[1]: Target 'all' not remade because of errors. >> > > > >> > > > make: *** [tools/LibTargets.mk:232: >> > > > >> > > /awork/nuttx/NuttX/farm/apps/libapps.a] >> > > > >> > > > Error 2 >> > > > >> > > > make: Target 'all' not remade because of errors. >> > > > >> > > > /awork/nuttx/NuttX/farm/nuttx/tools/testbuild.sh: line 385: >> > > > >> > > > /awork/nuttx/NuttX/farm/nuttx/../nuttx/nuttx.manifest: No >> such >> > > > file >> > > > >> or >> > > > >> > > > directory >> > > > >> > > > Normalize spresense/posix_spawn >> > > > >> > > > >> > > > >> > > > Can you please take a look >> > > > >> > > > >> > > > >> > > > Best regards >> > > > >> > > > >> > > > >> > > > On Sun, Oct 27, 2024 at 11:47 PM Lee, Lup Yuen < >> > > lu...@appkaki.com >> > > > > >> > > > >> > > wrote: >> > > > >> > > > >> > > > >> > > > > << 1) Regarding the script that uploads CI results to >> github >> > > > >> gists: >> > > > >> > > will >> > > > >> > > > > this >> > > > >> > > > > work for anyone who runs the docker image? If not, what >> > should >> > > > be >> > > > >> > done >> > > > >> > > > with >> > > > >> > > > > the results? >> >> > > > >> > > > > >> > > > >> > > > > Thanks Nathan! I'm using GitHub Gists as a simple way to >> > push >> > > > our >> > > > >> > Build >> > > > >> > > > > Logs to the cloud for further processing and alerting. >> > (There >> > > > >> might >> > > > >> > be >> > > > >> > > a >> > > > >> > > > > better way) >> > > > >> > > > > >> > > > >> > > > > I'm running my Build Server logged in as the `nuttxpr` >> > GitHub >> > > > >> Account >> > > > >> > > > (via >> > > > >> > > > > `gh login auth`), so all Gists will be published under >> the >> > > > >> `nuttxpr` >> > > > >> > > > > account. Someone who runs the Docker Image will probably >> > > create >> > > > a >> > > > >> new >> > > > >> > > > > GitHub Account to publish the Gists: >> > > > >> https://gist.github.com/nuttxpr >> > > > >> > > > > >> > > > >> > > > > What we need next: A script that will (1) Consolidate the >> > > Gists >> > > > >> > > > > across Multiple GitHub Accounts (2) Scan the Build Logs >> for >> > > > Errors >> > > > >> > and >> > > > >> > > > > Warnings (3) Alert somebody. >> > > > >> > > > > >> > > > >> > > > > << 2) Is there a way to detect (like a GPIO rising or >> > falling >> > > > >> edge, >> > > > >> > for >> > > > >> > > > > lack >> > > > >> > > > > of a better description) that a build that previously >> > > succeeded >> > > > is >> > > > >> > > > failing, >> > > > >> > > > > or a build that was previously failing succeeds again, to >> > > notify >> > > > >> only >> > > > >> > > > about >> > > > >> > > > > targets that change status? >> >> > > > >> > > > > >> > > > >> > > > > We have a problem: There doesn't seem to be an easy to >> scan >> > > our >> > > > >> Build >> > > > >> > > > Logs >> > > > >> > > > > for Errors and Warnings: >> > > > >> > > > > >> > > > >> > > >> > > > >> >> > > > >> > >> https://lupyuen.codeberg.page/articles/ci2.html#find-errors-and-warnings >> > > > >> > > > > >> > > > >> > > > > We should implement this Log Scanning in the script that >> I >> > > > >> mentioned >> > > > >> > > > > earlier. Then we can detect Failed Builds and alert >> > somebody. >> > > > >> Maybe >> > > > >> > > > through >> > > > >> > > > > open-source Prometheus + Grafana: >> > > > >> > > > > https://lupyuen.github.io/articles/prometheus >> > > > >> > > > > >> > > > >> > > > > << 3) Regarding M1 macs not being able to run the CI >> > builds, I >> > > > >> > suggest >> > > > >> > > to >> > > > >> > > > > state that as a call to action, e.g., help wanted to make >> > the >> > > > >> build >> > > > >> > > > succeed >> > > > >> > > > > on M1 macs, please see such-and-such issue on github... >> >> >> > > > >> > > > > >> > > > >> > > > > Yep I'll post an Issue at our NuttX Repo. I'll explain >> what >> > > > >> happens >> > > > >> > > when >> > > > >> > > > I >> > > > >> > > > > run the CI Build on my M2 Mac. Thanks! >> > > > >> > > > > >> > > > >> > > > > Lup >> > > > >> > > > > >> > > > >> > > > > On Mon, Oct 28, 2024 at 12:15 AM Nathan Hartman < >> > > > >> > > > hartman.nat...@gmail.com> >> > > > >> > > > > wrote: >> > > > >> > > > > >> > > > >> > > > > > Nice article Lup! Thank you. A few questions: >> > > > >> > > > > > >> > > > >> > > > > > 1) Regarding the script that uploads CI results to >> github >> > > > gists: >> > > > >> > will >> > > > >> > > > > this >> > > > >> > > > > > work for anyone who runs the docker image? If not, what >> > > should >> > > > >> be >> > > > >> > > done >> > > > >> > > > > with >> > > > >> > > > > > the results? >> > > > >> > > > > > >> > > > >> > > > > > 2) Is there a way to detect (like a GPIO rising or >> falling >> > > > edge, >> > > > >> > for >> > > > >> > > > lack >> > > > >> > > > > > of a better description) that a build that previously >> > > > succeeded >> > > > >> is >> > > > >> > > > > failing, >> > > > >> > > > > > or a build that was previously failing succeeds again, >> to >> > > > notify >> > > > >> > only >> > > > >> > > > > about >> > > > >> > > > > > targets that change status? >> > > > >> > > > > > >> > > > >> > > > > > 3) Regarding M1 macs not being able to run the CI >> builds, >> > I >> > > > >> suggest >> > > > >> > > to >> > > > >> > > > > > state that as a call to action, e.g., help wanted to >> make >> > > the >> > > > >> build >> > > > >> > > > > succeed >> > > > >> > > > > > on M1 macs, please see such-and-such issue on github... >> > > > >> > > > > > >> > > > >> > > > > > Otherwise looks good and thanks again! >> > > > >> > > > > > >> > > > >> > > > > > Cheers, >> > > > >> > > > > > Nathan >> > > > >> > > > > > >> > > > >> > > > > > On Sat, Oct 26, 2024 at 6:08 PM Lee, Lup Yuen < >> > > > >> lu...@appkaki.com> >> > > > >> > > > wrote: >> > > > >> > > > > > >> > > > >> > > > > > > Refurbished Ubuntu PCs have become quite affordable. >> Can >> > > we >> > > > >> turn >> > > > >> > > them >> > > > >> > > > > > into >> > > > >> > > > > > > a (Low-Cost) Build Farm for NuttX? >> > > > >> > > > > > > >> > > > >> > > > > > > In this article we… >> > > > >> > > > > > > (1) Compile NuttX for a group of Arm32 Boards >> > > > >> > > > > > > (2) Then scale up and compile NuttX for All Arm32 >> Boards >> > > > >> > > > > > > (3) Thanks to the Docker Image provided by NuttX >> > > > >> > > > > > > (4) Why do this? Because GitHub Actions taught us a >> > > Painful >> > > > >> > Lesson: >> > > > >> > > > > > > Freebies Won’t Last Forever! >> > > > >> > > > > > > >> > > > >> > > > > > > Check out the article: >> > > > >> > > > https://lupyuen.codeberg.page/articles/ci2.html >> > > > >> > > > > > > >> > > > >> > > > > > > Lup >> > > > >> > > > > > > >> > > > >> > > > > > >> > > > >> > > > > >> > > > >> > > > >> > > > >> > > >> > > > >> > >> > > > >> >> > > > > >> > > > >> > > >> > >> >