diff --git a/.github/workflows/test-on-iotlab.yml b/.github/workflows/test-on-iotlab.yml index fc5f90cc936b..f45d159001c3 100644 --- a/.github/workflows/test-on-iotlab.yml +++ b/.github/workflows/test-on-iotlab.yml @@ -70,10 +70,6 @@ jobs: env: IOTLAB_NODE: auto BUILD_IN_DOCKER: 1 - # Force .bin files generation because these files are used to flash on IoT-LAB and - # because compile_and_test_for_board forces RIOT_CI_BUILD which skip .bin - # files generation - DOCKER_ENVIRONMENT_CMDLINE: -e BUILD_FILES=\$$\(BINFILE\) COMPILE_AND_TEST_FOR_BOARD: ./dist/tools/compile_and_test_for_board/compile_and_test_for_board.py COMPILE_AND_TEST_ARGS: --with-test-only --jobs=2 --report-xml # Exclude applications that are expected to fail or cannot run on iotlab diff --git a/Makefile.include b/Makefile.include index a91c125eccde..97810cece760 100644 --- a/Makefile.include +++ b/Makefile.include @@ -386,6 +386,17 @@ ifneq (,$(IOTLAB_NODE)) PROGRAMMER ?= iotlab # iotlab uses ELFFILE by default for flashing boards. FLASHFILE ?= $(ELFFILE) + # RIOT_CI_BUILD disables the build of BINFILE which is required for flashing + # on IoT-LAB + ifeq (1,$(RIOT_CI_BUILD)) + BUILD_FILES += $(BINFILE) + endif + # Disable IOTLAB_NODE if inside Docker to avoid including the + # iotlab.single.inc.mk file which is useless there: it's only useful for + # flashing and this is done outside of Docker. + ifeq (1,$(INSIDE_DOCKER)) + IOTLAB_NODE := + endif endif # Add standard include directories diff --git a/makefiles/docker.inc.mk b/makefiles/docker.inc.mk index cfa6cc7c4e5f..c32a24499355 100644 --- a/makefiles/docker.inc.mk +++ b/makefiles/docker.inc.mk @@ -47,6 +47,7 @@ export DOCKER_ENV_VARS += \ ELFFILE \ HEXFILE \ FLASHFILE \ + IOTLAB_NODE \ LINK \ LINKFLAGPREFIX \ LINKFLAGS \