# Python CircleCI 2.0 configuration file # # Check https://circleci.com/docs/2.0/language-python/ for more details # version: 2 jobs: build: docker: # specify the version you desire here # use `-browsers` prefix for selenium tests, e.g. `3.6.1-browsers` - image: circleci/python:2.7.13 # Specify service dependencies here if necessary # CircleCI maintains a library of pre-built images # documented at https://circleci.com/docs/2.0/circleci-images/ # - image: circleci/postgres:9.4 environment: TEST_PLATFORM: "-e megaatmega2560" working_directory: ~/Marlin steps: - checkout - restore_cache: paths: - ~/.platformio - ~/Marlin/.piolibdeps keys: - v1-dependencies-{{ checksum "~/Marlin/platformio.ini" }} # fallback to using the latest cache if no exact match is found - v1-dependencies- - run: name: install dependencies command: | sudo pip install -U platformio # run tests! - run: name: run tests command: | # # # Fetch the tag information for the current branch ls -la git fetch origin --tags # # Publish the buildroot script folder chmod +x buildroot/bin/* export PATH=`pwd`/buildroot/bin/:${PATH} # Generate custom version include generate_version ./Marlin/src/inc cat ./Marlin/src/inc/_Version.h # # Backup pins_RAMPS.h # cp Marlin/src/pins/pins_RAMPS.h Marlin/src/pins/pins_RAMPS.h.backup # env_backup ################################# # Build all sample configurations ################################# echo testing megaatmega2560 targets... export TEST_PLATFORM="-e megaatmega2560" echo use_example_configs adafruit/ST7565 use_example_configs adafruit/ST7565 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs BQ/Hephestos use_example_configs BQ/Hephestos build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs BQ/Hephestos_2 use_example_configs BQ/Hephestos_2 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs BQ/WITBOX use_example_configs BQ/WITBOX build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs AliExpress/CL-260 use_example_configs AliExpress/CL-260 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs #echo use_example_configs Cartesio #use_example_configs Cartesio #build_marlin_pio ./ ${TEST_PLATFORM} #restore_configs echo use_example_configs delta/FLSUN/auto_calibrate use_example_configs delta/FLSUN/auto_calibrate build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs delta/FLSUN/kossel_mini use_example_configs delta/FLSUN/kossel_mini build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs delta/generic use_example_configs delta/generic build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs delta/kossel_mini use_example_configs delta/kossel_mini build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs delta/kossel_xl use_example_configs delta/kossel_xl build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs Felix use_example_configs Felix build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs Felix/DUAL use_example_configs Felix/DUAL build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs FolgerTech/i3-2020 use_example_configs FolgerTech/i3-2020 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs gCreate/gMax1.5+ use_example_configs gCreate/gMax1.5+ build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs Geeetech/GT2560 use_example_configs Geeetech/GT2560 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs #echo use_example_configs Geeetech/I3_Pro_X-GT2560 #use_example_configs Geeetech/I3_Pro_X-GT2560 #build_marlin_pio ./ ${TEST_PLATFORM} #restore_configs echo use_example_configs Infitary/i3-M508 use_example_configs Infitary/i3-M508 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs use_example_configs Malyan/M200 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs Micromake/C1/basic use_example_configs Micromake/C1/basic build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs Micromake/C1/enhanced use_example_configs Micromake/C1/enhanced build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs RepRapWorld/Megatronics use_example_configs RepRapWorld/Megatronics build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs RigidBot use_example_configs RigidBot build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs SCARA use_example_configs SCARA build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs Velleman/K8200 use_example_configs Velleman/K8200 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs Velleman/K8400/Dual-head use_example_configs Velleman/K8400/Dual-head build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs Velleman/K8400 use_example_configs Velleman/K8400 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs Wanhao/Duplicator6 use_example_configs Wanhao/Duplicator6 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs # Requires manual load of https://github.com/stawel/SlowSoftI2CMaster #use_example_configs wt150 #build_marlin_pio ./ ${TEST_PLATFORM} #restore_configs echo testing melzi targets... export TEST_PLATFORM="-e melzi" echo use_example_configs Anet/A6 use_example_configs Anet/A6 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs Anet/A8 use_example_configs Anet/A8 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs Creality/CR-10 use_example_configs Creality/CR-10 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs Malyan/M150 use_example_configs Malyan/M150 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs Sanguinololu use_example_configs Sanguinololu build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs TinyBoy2 use_example_configs TinyBoy2 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo testing rambo targets... export TEST_PLATFORM="-e rambo" echo use_example_configs AlephObjects/TAZ4 use_example_configs AlephObjects/TAZ4 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo testing at90usb1286_* targets... export TEST_PLATFORM="-e at90usb1286_dfu" #echo se_example_configs delta/kossel_pro #use_example_configs delta/kossel_pro #build_marlin_pio ./ ${TEST_PLATFORM} #restore_configs echo use_example_configs makibox use_example_configs makibox build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo testing sanguino_atmega644p targets... export TEST_PLATFORM="-e sanguino_atmega644p" echo use_example_configs tvrrug/Round2 use_example_configs tvrrug/Round2 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo testing LPC1768 targets... export TEST_PLATFORM="-e LPC1768" echo use_example_configs Mks/Sbase use_example_configs Mks/Sbase build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo testing STM32F1 targets... export TEST_PLATFORM="-e STM32F1" restore_configs echo use_example_configs STM32F10 use_example_configs STM32F10 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo use_example_configs stm32f103ret6 use_example_configs stm32f103ret6 build_marlin_pio ./ ${TEST_PLATFORM} restore_configs echo testing DUE targets... export TEST_PLATFORM="-e DUE" #echo use_example_configs UltiMachine/Archim2 #use_example_configs UltiMachine/Archim2 #build_marlin_pio ./ ${TEST_PLATFORM} #restore_configs # # Remove temp files from dependencies tree prior to caching rm -rf ~/Marlin/.piolibdeps/_tmp_* # # Restore the environment # env_restore - save_cache: paths: - ~/.platformio - ~/Marlin/.piolibdeps key: v1-dependencies-{{ checksum "~/Marlin/platformio.ini" }}