mbed-os

Dependents:   cobaLCDJoyMotor_Thread odometry_omni_3roda_v3 odometry_omni_3roda_v1 odometry_omni_3roda_v2 ... more

Committer:
be_bryan
Date:
Mon Dec 11 17:54:04 2017 +0000
Revision:
0:b74591d5ab33
motor ++

Who changed what in which revision?

UserRevisionLine numberNew contents of line
be_bryan 0:b74591d5ab33 1
be_bryan 0:b74591d5ab33 2 env:
be_bryan 0:b74591d5ab33 3 global:
be_bryan 0:b74591d5ab33 4 - >
be_bryan 0:b74591d5ab33 5 STATUS=$'curl -so/dev/null --user $MBED_BOT --request POST
be_bryan 0:b74591d5ab33 6 https://api.github.com/repos/$TRAVIS_REPO_SLUG/statuses/${TRAVIS_PULL_REQUEST_SHA:-$TRAVIS_COMMIT}
be_bryan 0:b74591d5ab33 7 --data @- << DATA\n{
be_bryan 0:b74591d5ab33 8 "state": "$0",
be_bryan 0:b74591d5ab33 9 "description": "$1",
be_bryan 0:b74591d5ab33 10 "context": "travis-ci/$NAME",
be_bryan 0:b74591d5ab33 11 "target_url": "https://travis-ci.org/$TRAVIS_REPO_SLUG/jobs/$TRAVIS_JOB_ID"
be_bryan 0:b74591d5ab33 12 }\nDATA'
be_bryan 0:b74591d5ab33 13
be_bryan 0:b74591d5ab33 14 before_install:
be_bryan 0:b74591d5ab33 15 - bash -c "$STATUS" pending "Local $NAME testing is in progress"
be_bryan 0:b74591d5ab33 16 # Make sure pipefail
be_bryan 0:b74591d5ab33 17 - set -o pipefail
be_bryan 0:b74591d5ab33 18 # Setup ppa to make sure arm-none-eabi-gcc is correct version
be_bryan 0:b74591d5ab33 19 - sudo add-apt-repository -y ppa:team-gcc-arm-embedded/ppa
be_bryan 0:b74591d5ab33 20 - sudo add-apt-repository -y ppa:libreoffice/libreoffice-4-2
be_bryan 0:b74591d5ab33 21 - sudo apt-get update -qq
be_bryan 0:b74591d5ab33 22
be_bryan 0:b74591d5ab33 23 after_success:
be_bryan 0:b74591d5ab33 24 - bash -c "$STATUS" success "Local $NAME testing has passed"
be_bryan 0:b74591d5ab33 25
be_bryan 0:b74591d5ab33 26 after_failure:
be_bryan 0:b74591d5ab33 27 - bash -c "$STATUS" failure "Local $NAME testing has failed"
be_bryan 0:b74591d5ab33 28
be_bryan 0:b74591d5ab33 29 matrix:
be_bryan 0:b74591d5ab33 30 include:
be_bryan 0:b74591d5ab33 31 - python: '2.7'
be_bryan 0:b74591d5ab33 32 env:
be_bryan 0:b74591d5ab33 33 - NAME=tools
be_bryan 0:b74591d5ab33 34 install:
be_bryan 0:b74591d5ab33 35 # Install dependencies
be_bryan 0:b74591d5ab33 36 - sudo apt-get install gcc-arm-embedded doxygen
be_bryan 0:b74591d5ab33 37 - pip install --user -r requirements.txt
be_bryan 0:b74591d5ab33 38 - pip install --user pytest
be_bryan 0:b74591d5ab33 39 - pip install --user pylint
be_bryan 0:b74591d5ab33 40 - pip install --user hypothesis
be_bryan 0:b74591d5ab33 41 - pip install --user mock
be_bryan 0:b74591d5ab33 42 - pip install --user coverage
be_bryan 0:b74591d5ab33 43 - pip install --user coveralls
be_bryan 0:b74591d5ab33 44 # Print versions we use
be_bryan 0:b74591d5ab33 45 - arm-none-eabi-gcc --version
be_bryan 0:b74591d5ab33 46 - python --version
be_bryan 0:b74591d5ab33 47 - doxygen --version
be_bryan 0:b74591d5ab33 48 before_script:
be_bryan 0:b74591d5ab33 49 # Create BUILD directory for tests
be_bryan 0:b74591d5ab33 50 - mkdir BUILD
be_bryan 0:b74591d5ab33 51 script:
be_bryan 0:b74591d5ab33 52 # Assert that the Doxygen build produced no warnings.
be_bryan 0:b74591d5ab33 53 # The strange command below asserts that the Doxygen command had an
be_bryan 0:b74591d5ab33 54 # output of zero length
be_bryan 0:b74591d5ab33 55 - |
be_bryan 0:b74591d5ab33 56 doxygen doxyfile_options 2>&1 | tee BUILD/doxygen.out && [ ! -s BUILD/doxygen.out ]
be_bryan 0:b74591d5ab33 57 # Assert that all binary libraries are named correctly
be_bryan 0:b74591d5ab33 58 # The strange command below asserts that there are exactly 0 libraries that do
be_bryan 0:b74591d5ab33 59 # not start with lib
be_bryan 0:b74591d5ab33 60 - |
be_bryan 0:b74591d5ab33 61 find "(" -name "*.a" -or -name "*.ar" ")" -and -not -name "lib*" | tee BUILD/badlibs | sed -e "s/^/Bad library name found: /" && [ ! -s BUILD/badlibs ]
be_bryan 0:b74591d5ab33 62 # Assert that all assebler files are named correctly
be_bryan 0:b74591d5ab33 63 # The strange command below asserts that there are exactly 0 libraries that do
be_bryan 0:b74591d5ab33 64 # end with .s
be_bryan 0:b74591d5ab33 65 - |
be_bryan 0:b74591d5ab33 66 find -name "*.s" | tee BUILD/badasm | sed -e "s/^/Bad Assembler file name found: /" && [ ! -s BUILD/badasm ]
be_bryan 0:b74591d5ab33 67 # Run local testing on tools
be_bryan 0:b74591d5ab33 68 # Note: These take ~40 minutes to run
be_bryan 0:b74591d5ab33 69 - PYTHONPATH=. coverage run -a -m pytest tools/test
be_bryan 0:b74591d5ab33 70 - python2 tools/test/pylint.py
be_bryan 0:b74591d5ab33 71 - coverage run -a tools/project.py -S | sed -n '/^Total/p'
be_bryan 0:b74591d5ab33 72 # - python2 -u tools/build_travis.py | sed -n '/^Executing/p'
be_bryan 0:b74591d5ab33 73 - coverage html
be_bryan 0:b74591d5ab33 74 after_success:
be_bryan 0:b74591d5ab33 75 # Coverage for tools
be_bryan 0:b74591d5ab33 76 - coveralls
be_bryan 0:b74591d5ab33 77 # Report success since we have overridden default behaviour
be_bryan 0:b74591d5ab33 78 - bash -c "$STATUS" success "Local $NAME testing has passed"
be_bryan 0:b74591d5ab33 79
be_bryan 0:b74591d5ab33 80 - python: '2.7'
be_bryan 0:b74591d5ab33 81 env:
be_bryan 0:b74591d5ab33 82 - NAME=events
be_bryan 0:b74591d5ab33 83 - EVENTS=events
be_bryan 0:b74591d5ab33 84 install:
be_bryan 0:b74591d5ab33 85 # Install dependencies
be_bryan 0:b74591d5ab33 86 - sudo apt-get install gcc-arm-embedded
be_bryan 0:b74591d5ab33 87 - pip install --user -r requirements.txt
be_bryan 0:b74591d5ab33 88 # Print versions we use
be_bryan 0:b74591d5ab33 89 - arm-none-eabi-gcc --version
be_bryan 0:b74591d5ab33 90 - gcc --version
be_bryan 0:b74591d5ab33 91 - python --version
be_bryan 0:b74591d5ab33 92 script:
be_bryan 0:b74591d5ab33 93 # Check that example compiles
be_bryan 0:b74591d5ab33 94 - sed -n '/``` cpp/,/```/{/```$/Q;/```/d;p;}' $EVENTS/README.md > main.cpp
be_bryan 0:b74591d5ab33 95 - python tools/make.py -t GCC_ARM -m K64F --source=. --build=BUILD/K64F/GCC_ARM -j0
be_bryan 0:b74591d5ab33 96 # Run local equeue tests
be_bryan 0:b74591d5ab33 97 - make -C $EVENTS/equeue test
be_bryan 0:b74591d5ab33 98
be_bryan 0:b74591d5ab33 99 - python: '2.7'
be_bryan 0:b74591d5ab33 100 env:
be_bryan 0:b74591d5ab33 101 - NAME=littlefs
be_bryan 0:b74591d5ab33 102 - LITTLEFS=features/filesystem/littlefs
be_bryan 0:b74591d5ab33 103 install:
be_bryan 0:b74591d5ab33 104 # Install dependencies
be_bryan 0:b74591d5ab33 105 - sudo apt-get install gcc-arm-embedded fuse libfuse-dev
be_bryan 0:b74591d5ab33 106 - pip install --user -r requirements.txt
be_bryan 0:b74591d5ab33 107 - git clone https://github.com/armmbed/spiflash-driver.git
be_bryan 0:b74591d5ab33 108 # Print versions
be_bryan 0:b74591d5ab33 109 - arm-none-eabi-gcc --version
be_bryan 0:b74591d5ab33 110 - gcc --version
be_bryan 0:b74591d5ab33 111 - python --version
be_bryan 0:b74591d5ab33 112 - fusermount --version
be_bryan 0:b74591d5ab33 113 before_script:
be_bryan 0:b74591d5ab33 114 # Setup and patch littlefs-fuse
be_bryan 0:b74591d5ab33 115 - git clone https://github.com/geky/littlefs-fuse littlefs_fuse
be_bryan 0:b74591d5ab33 116 - echo '*' > littlefs_fuse/.mbedignore
be_bryan 0:b74591d5ab33 117 - rm -rf littlefs_fuse/littlefs/*
be_bryan 0:b74591d5ab33 118 - cp -r $(git ls-tree --name-only HEAD $LITTLEFS/littlefs/) littlefs_fuse/littlefs
be_bryan 0:b74591d5ab33 119 # Create file-backed disk
be_bryan 0:b74591d5ab33 120 - mkdir MOUNT
be_bryan 0:b74591d5ab33 121 - sudo chmod a+rw /dev/loop0
be_bryan 0:b74591d5ab33 122 - dd if=/dev/zero bs=512 count=2048 of=DISK
be_bryan 0:b74591d5ab33 123 - losetup /dev/loop0 DISK
be_bryan 0:b74591d5ab33 124 script:
be_bryan 0:b74591d5ab33 125 # Check that example compiles
be_bryan 0:b74591d5ab33 126 - sed -n '/``` c++/,/```/{/```/d;p;}' $LITTLEFS/README.md > main.cpp
be_bryan 0:b74591d5ab33 127 - python tools/make.py -t GCC_ARM -m K82F --source=. --build=BUILD/K82F/GCC_ARM -j0
be_bryan 0:b74591d5ab33 128 # Run local littlefs tests
be_bryan 0:b74591d5ab33 129 - CFLAGS="-Wno-format" make -C$LITTLEFS/littlefs test QUIET=1
be_bryan 0:b74591d5ab33 130 # Run local littlefs tests with set of variations
be_bryan 0:b74591d5ab33 131 - CFLAGS="-Wno-format -DLFS_READ_SIZE=64 -DLFS_PROG_SIZE=64" make -C$LITTLEFS/littlefs test QUIET=1
be_bryan 0:b74591d5ab33 132 - CFLAGS="-Wno-format -DLFS_READ_SIZE=1 -DLFS_PROG_SIZE=1" make -C$LITTLEFS/littlefs test QUIET=1
be_bryan 0:b74591d5ab33 133 - CFLAGS="-Wno-format -DLFS_READ_SIZE=512 -DLFS_PROG_SIZE=512" make -C$LITTLEFS/littlefs test QUIET=1
be_bryan 0:b74591d5ab33 134 - CFLAGS="-Wno-format -DLFS_BLOCK_COUNT=1023" make -C$LITTLEFS/littlefs test QUIET=1
be_bryan 0:b74591d5ab33 135 - CFLAGS="-Wno-format -DLFS_LOOKAHEAD=2048" make -C$LITTLEFS/littlefs test QUIET=1
be_bryan 0:b74591d5ab33 136 # Self-hosting littlefs fuzz test with littlefs-fuse
be_bryan 0:b74591d5ab33 137 - make -Clittlefs_fuse
be_bryan 0:b74591d5ab33 138 - littlefs_fuse/lfs --format /dev/loop0
be_bryan 0:b74591d5ab33 139 - littlefs_fuse/lfs /dev/loop0 MOUNT
be_bryan 0:b74591d5ab33 140 - ls MOUNT
be_bryan 0:b74591d5ab33 141 - mkdir MOUNT/littlefs
be_bryan 0:b74591d5ab33 142 - cp -r $(git ls-tree --name-only HEAD $LITTLEFS/littlefs/) MOUNT/littlefs
be_bryan 0:b74591d5ab33 143 - ls MOUNT/littlefs
be_bryan 0:b74591d5ab33 144 - CFLAGS="-Wno-format" make -CMOUNT/littlefs -B test_dirs QUIET=1
be_bryan 0:b74591d5ab33 145
be_bryan 0:b74591d5ab33 146 - python: '2.7'
be_bryan 0:b74591d5ab33 147 env:
be_bryan 0:b74591d5ab33 148 - NAME=mbed2
be_bryan 0:b74591d5ab33 149 install:
be_bryan 0:b74591d5ab33 150 # Install dependencies
be_bryan 0:b74591d5ab33 151 - sudo apt-get install gcc-arm-embedded
be_bryan 0:b74591d5ab33 152 - pip install --user -r requirements.txt
be_bryan 0:b74591d5ab33 153 # Print versions we use
be_bryan 0:b74591d5ab33 154 - arm-none-eabi-gcc --version
be_bryan 0:b74591d5ab33 155 - python --version
be_bryan 0:b74591d5ab33 156 before_script:
be_bryan 0:b74591d5ab33 157 # Create BUILD directory for tests
be_bryan 0:b74591d5ab33 158 - mkdir BUILD
be_bryan 0:b74591d5ab33 159 script:
be_bryan 0:b74591d5ab33 160 # Run local mbed 2 testing
be_bryan 0:b74591d5ab33 161 # Note: These take ~40 minutes to run
be_bryan 0:b74591d5ab33 162 - python2 -u tools/build_travis.py | sed -n '/^Executing/p'
be_bryan 0:b74591d5ab33 163