openmv/.travis.yml
Mohamed Zaian ffb126fbbc
Update dist to a supported version (#982)
* Update Travis dist to Xenial

Co-authored-by: Mohamed Zaian <mohamed.zaian@new-work.se>
2020-11-18 17:34:12 +02:00

118 lines
3.6 KiB
YAML

os: linux
dist: xenial
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=PORTENTA
workspaces:
create:
name: PORTENTA_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: build
env: TARGET=CYW4343
workspaces:
create:
name: CYW4343_WORKSPACE # workspace names are escaped.
paths: ~/build/$TARGET
script:
- cp -rf src/cyw4343/firmware ~/build/$TARGET
- stage: deploy
git:
clone: false
workspaces:
use:
- OPENMV2_WORKSPACE
- OPENMV3_WORKSPACE
- OPENMV4_WORKSPACE
- OPENMV4P_WORKSPACE
- PORTENTA_WORKSPACE
- WINC1500_WORKSPACE
- CYW4343_WORKSPACE
script:
- zip -r firmware_${TRAVIS_TAG}.zip OPENMV2 OPENMV3 OPENMV4 OPENMV4P PORTENTA WINC1500 CYW4343
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