os: linux dist: trusty sudo: required language: c stage: build notifications: email: on_success: never stages: - build - deploy cache: directories: - "${HOME}/persist" script: # update submodules - git submodule update --init --recursive # install ARM GCC - pushd . - cd ~ && mkdir gcc && cd gcc - GCC_URL="https://armkeil.blob.core.windows.net/developer/Files/downloads/gnu-rm/7-2018q2/gcc-arm-none-eabi-7-2018-q2-update-linux.tar.bz2" - wget -O gcc.tar.bz2 ${GCC_URL} - tar -jxf gcc.tar.bz2 --strip 1 - exportline="export PATH=\$HOME/gcc/bin:\$PATH" - if grep -Fxq "$exportline" ~/.profile; then echo nothing to do ; else echo $exportline >> ~/.profile; fi - . ~/.profile - popd - arm-none-eabi-gcc --version # build firmware - make -j5 -C src/micropython/mpy-cross - make -j5 TARGET=$TARGET -C src - mkdir ~/build/$TARGET - cp -r src/build/bin/* ~/build/$TARGET jobs: include: - stage: build env: TARGET=OPENMV2 workspaces: create: name: OPENMV2_WORKSPACE # workspace names are escaped. paths: ~/build/$TARGET - stage: build env: TARGET=OPENMV3 workspaces: create: name: OPENMV3_WORKSPACE # workspace names are escaped. paths: ~/build/$TARGET - stage: build env: TARGET=OPENMV4 workspaces: create: name: OPENMV4_WORKSPACE # workspace names are escaped. paths: ~/build/$TARGET - stage: build env: TARGET=OPENMV4P workspaces: create: name: OPENMV4P_WORKSPACE # workspace names are escaped. paths: ~/build/$TARGET - stage: build env: TARGET=WINC1500 workspaces: create: name: WINC1500_WORKSPACE # workspace names are escaped. paths: ~/build/$TARGET script: - cp -rf src/winc1500/firmware ~/build/$TARGET - stage: deploy git: clone: false workspaces: use: - OPENMV2_WORKSPACE - OPENMV3_WORKSPACE - OPENMV4_WORKSPACE - OPENMV4P_WORKSPACE - WINC1500_WORKSPACE script: - zip -r firmware_${TRAVIS_TAG}.zip OPENMV2 OPENMV3 OPENMV4 OPENMV4P WINC1500 deploy: provider: releases api_key: secure: lE3IuL9TA5LMCSefXm8BO4Eo9+M8DjIuNG2bmZlL7/ucY1i9OmGp56pnLcRwZ5slQbKX+hzNtTFDqb7eLGn1hpzYEZHl8VEjZLRoXqZC7JmQm7EmRRljpXSEoWCxee6kUOaltNAoycmTy0JtmnFdflJ+lXWQ8Pw/GVu91SXGjDWldNJLcLOcCl8CXEr8pwt5WUsRgQ7NYwj+Fd1vQ7ii7yPEwJNHsUHpWRezKorTgYKuphXOkWSLhbsc9HaGfbNKocgoU3hpDE445MKEa+PnBGMsqWQYXag9QA/vY1olKrB3ICzIV8rhARH9h6jJ0c0fnHtaR6pnp9IC11ZpvUTzsj/Dw7doUNHtUwQtBPmTWjm3FQAWLqJJKmo1zXIXUKyc32NTsnKBAdu9jI2i1/1wopATGQzlds4oqPHFzr7OLfZUFf/b19UC9GqnBuEV2Q4pFZJV5c853UNQ7qio39rD5ykJPNKlK1aeKv1Z4+5Yi/pHmVYKyqx1bPQX7qHYKgGQ7PYNa5InPMDWrDG7v5FRoVNFSffpMpk3hqjbjti6KT7YvL6rCQN8A5dp00m/cVizx3xj/CS1rXJUbGDkoV3PxYPUmUN+2NQsS9NDQfVQxWKwIGjJkOjTZsrFwNGQAzujR0rfuYAyp0mcvWjXGW7hKMZrYCMK7rxEOA4Dka3ndIo= name: ${TRAVIS_TAG} file: firmware_${TRAVIS_TAG}.zip skip_cleanup: true on: tags: true draft: true