diff --git a/.travis.yml b/.travis.yml index a3fc8a0a6..529a4e46b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,8 +5,14 @@ git: quiet: true env: - - BSP_PATH="$HOME/.arduino15/packages/adafruit/hardware/nrf52" - + global: + - BSP_PATH="$HOME/.arduino15/packages/adafruit/hardware/nrf52" + jobs: + # Split into one job per board (aka variant) + - VARIANT="feather52840" + - VARIANT="cplaynrf52840" + - VARIANT="feather52832" + addons: apt: packages: diff --git a/tools/build_all.py b/tools/build_all.py index 766897721..f0d01f571 100644 --- a/tools/build_all.py +++ b/tools/build_all.py @@ -65,8 +65,23 @@ def build_examples(variant): build_time = time.monotonic() -for var in variants_dict: - build_examples(var) +ENV_VARIABLE_NAME = 'VARIANT' + +# build only one variant if the environment variable is specified +if (ENV_VARIABLE_NAME in os.environ): + variant = os.environ.get(ENV_VARIABLE_NAME) + # only use the environment variable if the variant exists in the dictionary + if (variant in variants_dict): + build_examples(variant) + else: + print('\033[31failed\033[0m - invalid variant name "{}"'.format(variant)) + fail_count += 1 + exit_status = -1 + +else: # no environment variable specified, so build all variants + for var in variants_dict: + build_examples(var) + print(build_separator) build_time = time.monotonic() - build_time