1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-01-18 12:52:44 +01:00

drone: added Drone file

Drone is a continuous integration server that can be installed locally.

The included Drone configuration mimics the Travis build scripts except
for the build matrix feature, all targets are built sequentially by the
dist/tools/drone-scripts/build_and_test.sh script instead of in
separate instances.

See: https://github.com/drone/drone
This commit is contained in:
Joakim Gebart 2015-04-17 14:19:19 +02:00
parent e32b1cca16
commit 49a12804b3
2 changed files with 70 additions and 0 deletions

19
.drone.yml Normal file
View File

@ -0,0 +1,19 @@
image: riot/riotbuild:latest
env:
- NPROC_MAX=8
script:
- git config --global user.email "drone@example.com"
- git config --global user.name "Drone CI"
- git remote add riot https://github.com/RIOT-OS/RIOT.git
- git fetch riot master
- git log -1 --pretty=format:%H riot/master
- git branch -f master riot/master
- pwd
- set
- git status
- git branch
- git remote -v
- git branch -avv
- ./dist/tools/drone-scripts/build_and_test.sh riot/master

51
dist/tools/drone-scripts/build_and_test.sh vendored Executable file
View File

@ -0,0 +1,51 @@
#!/bin/bash
# Copyright (C) 2015 Eistec AB
#
# This file is subject to the terms and conditions of the GNU Lesser General
# Public License v2.1. See the file LICENSE in the top level directory for more
# details.
# For now, just ride on the Travis build scripts
# Drone has not yet implemented Travis' Matrix Build feature,
# see https://github.com/drone/drone/issues/6
FAILURES=0
SUMMARY_MESSAGE="Summary of test groups run:\n"
# Travis compatibility defines
export TRAVIS_PULL_REQUEST="${CI_PULL_REQUEST}"
export TRAVIS_BRANCH="${CI_BRANCH}"
export TRAVIS_BUILD_NUMBER="${CI_BUILD_NUMBER}"
export TRAVIS_COMMIT="${DRONE_COMMIT}"
export TRAVIS_BUILD_DIR="${DRONE_BUILD_DIR}"
for group in static-tests \
avr8 \
msp430 \
x86 \
arm7 \
cortex_m0 \
cortex_m3_1 \
cortex_m3_2 \
cortex_m4 \
;
do
echo "Begin group ${group}"
BUILDTEST_MCU_GROUP=${group} ./dist/tools/travis-scripts/build_and_test.sh "$@"
RES=$?
echo "Result (${group}): ${RES}"
if [ ${RES} -ne 0 ]; then
FAILURES=$((${FAILURES} + 1))
fi
SUMMARY_MESSAGE="${SUMMARY_MESSAGE}${group}: ${RES}\n"
done
echo -n -e "${SUMMARY_MESSAGE}"
if [ ${FAILURES} -eq 0 ]; then
echo "Build and test: All successful"
else
echo "Build and test: ${FAILURES} failures in total"
fi
exit ${FAILURES}