parent
30bb807c13
commit
c71d67ba3f
@ -1,38 +0,0 @@ |
|||||||
os: linux |
|
||||||
dist: trusty |
|
||||||
group: edge |
|
||||||
language: c |
|
||||||
branches: |
|
||||||
except: |
|
||||||
- /^.*-automated-build$/ |
|
||||||
- /^[0-9]+\.[0-9]+\.[0-9]+/ |
|
||||||
env: |
|
||||||
global: |
|
||||||
- secure: vBTSL34BDPxDilKUuTXqU4CJ26Pv5hogD2nghatkxSQkI1/jbdnLj/DQdPUrMJFDIY6TK3AltsBx72MaMsLQ1JO/Ou24IeHINHXzUC1FlS9yQa48cpxnhX5kzXNyGs3oa0qaFbvnr7RgYRWtmD52n4bIZuSuW+xpBv05x2OCizdT2ZonH33nATaHGFasxROm4qYZ241VfzcUv766V6RVHgL4x9V08warugs+RENVkfzxxwhk3NmkrISabze0gSVJLHBPHxroZC6EUcf/ocobcuDrCwFqtEt90i7pNIAFUE7gZsN2uE75LmpzAWin21G7lLPcPL2k4FJVd8an1HiP2WmscJU6U89fOfMb2viObnKcCzebozBCmKGtHEuXZo9FcReOx49AnQSpmESJGs+q2dL/FApkTjQiyT4J6O5dJpoww0/r57Wx0cmmqjETKBb5rSgXM51Etk3wO09mvcPHsEwrT7qH8r9XWdyCDoEn7FCLX3/LYnf/D4SmZ633YPl5gv3v9XEwxR5+04akjgnvWDSNIaDbWBdxHNb7l4pMc+WR1bwCyMyA7KXj0RrftEGOrm9ZRLe6BkbT4cycA+j77nbPOMcyZChliV9pPQos+4TOJoTzcK2L8yWVoY409aDNVuAjdP6Yum0R2maBGl/etLmIMpJC35C5/lZ+dUNjJAM= |
|
||||||
- MAKEFLAGS="-j3 --output-sync" |
|
||||||
services: |
|
||||||
- docker |
|
||||||
addons: |
|
||||||
apt: |
|
||||||
sources: |
|
||||||
- ubuntu-toolchain-r-test |
|
||||||
- llvm-toolchain-trusty-7 |
|
||||||
packages: |
|
||||||
- diffutils |
|
||||||
- clang-format-7 |
|
||||||
- libstdc++-7-dev |
|
||||||
script: |
|
||||||
- git fetch --depth=50 origin $TRAVIS_BRANCH:$TRAVIS_BRANCH |
|
||||||
- git rev-parse --short HEAD |
|
||||||
- git diff --name-only HEAD $TRAVIS_BRANCH |
|
||||||
- bash util/travis_test.sh |
|
||||||
- bash util/travis_build.sh |
|
||||||
after_script: |
|
||||||
bash util/travis_compiled_push.sh |
|
||||||
notifications: |
|
||||||
webhooks: |
|
||||||
urls: |
|
||||||
- https://webhooks.gitter.im/e/afce403d65f143dfac09 |
|
||||||
on_success: always # options: [always|never|change] default: always |
|
||||||
on_failure: always # options: [always|never|change] default: always |
|
||||||
on_start: never # options: [always|never|change] default: always |
|
@ -1,40 +0,0 @@ |
|||||||
#!/usr/bin/env bash |
|
||||||
|
|
||||||
source util/travis_utils.sh |
|
||||||
|
|
||||||
if [[ "$TRAVIS_COMMIT_MESSAGE" == *"[skip build]"* ]]; then |
|
||||||
echo "Skipping due to commit message" |
|
||||||
exit 0 |
|
||||||
fi |
|
||||||
|
|
||||||
if [ "$LOCAL_BRANCH" == "master" ] || [ "$NUM_CORE_CHANGES" != "0" ]; then |
|
||||||
echo "Making default keymaps for all keyboards" |
|
||||||
make all:default |
|
||||||
exit $? |
|
||||||
fi |
|
||||||
|
|
||||||
exit_code=0 |
|
||||||
|
|
||||||
for KB in $(make list-keyboards); do |
|
||||||
KEYBOARD_CHANGES=$(echo "$QMK_CHANGES" | grep -E '^(keyboards/'${KB}'/)') |
|
||||||
if [[ -z "$KEYBOARD_CHANGES" ]]; then |
|
||||||
# skip as no changes for this keyboard |
|
||||||
continue |
|
||||||
fi |
|
||||||
|
|
||||||
KEYMAP_ONLY=$(echo "$KEYBOARD_CHANGES" | grep -cv /keymaps/) |
|
||||||
if [[ $KEYMAP_ONLY -gt 0 ]]; then |
|
||||||
echo "Making all keymaps for $KB" |
|
||||||
make ${KB}:all |
|
||||||
: $((exit_code = $exit_code + $?)) |
|
||||||
else |
|
||||||
CHANGED_KEYMAPS=$(echo "$KEYBOARD_CHANGES" | grep -oP '(?<=keyboards/'${KB}'/keymaps/)([a-zA-Z0-9_-]+)(?=\/)') |
|
||||||
for KM in $CHANGED_KEYMAPS ; do |
|
||||||
echo "Making $KM for $KB" |
|
||||||
make ${KB}:${KM} |
|
||||||
: $((exit_code = $exit_code + $?)) |
|
||||||
done |
|
||||||
fi |
|
||||||
done |
|
||||||
|
|
||||||
exit $exit_code |
|
@ -1,63 +0,0 @@ |
|||||||
#!/usr/bin/env bash |
|
||||||
|
|
||||||
source util/travis_utils.sh |
|
||||||
source util/travis_push.sh |
|
||||||
|
|
||||||
set -o errexit -o nounset |
|
||||||
|
|
||||||
rev=$(git rev-parse --short HEAD) |
|
||||||
echo "Using git hash ${rev}" |
|
||||||
|
|
||||||
if [[ "$TRAVIS_BRANCH" == "master" && "$TRAVIS_PULL_REQUEST" == "false" ]] ; then |
|
||||||
|
|
||||||
git checkout master |
|
||||||
|
|
||||||
git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE} |
|
||||||
|
|
||||||
if [[ "$TRAVIS_COMMIT_MESSAGE" != *"[skip build]"* ]] ; then |
|
||||||
make generate-keyboards-file SILENT=true > .keyboards |
|
||||||
cd .. |
|
||||||
git clone git@github.com:qmk/qmk.fm.git |
|
||||||
cd qmk.fm |
|
||||||
mv ../qmk_firmware/id_rsa_qmk.fm id_rsa_qmk.fm |
|
||||||
mv ../qmk_firmware/.keyboards . |
|
||||||
ssh-add -D |
|
||||||
eval `ssh-agent -s` |
|
||||||
ssh-add id_rsa_qmk.fm |
|
||||||
|
|
||||||
# don't delete files in case not all keyboards are built |
|
||||||
# rm -f compiled/*.hex |
|
||||||
|
|
||||||
# ignore errors here |
|
||||||
# In theory, this is more flexible, and will allow for additional expansion of additional types of files and other names |
|
||||||
mv ../qmk_firmware/*_default.*{hex,bin} ./compiled/ || true |
|
||||||
|
|
||||||
# get the list of keyboards |
|
||||||
readarray -t keyboards < .keyboards |
|
||||||
|
|
||||||
# replace / with _ |
|
||||||
keyboards=("${keyboards[@]//[\/]/_}") |
|
||||||
|
|
||||||
# remove all binaries that don't belong to a keyboard in .keyboards |
|
||||||
for file in "./compiled"/* ; do |
|
||||||
match=0 |
|
||||||
for keyboard in "${keyboards[@]}" ; do |
|
||||||
if [[ ${file##*/} = "${keyboard}_default.bin" ]] || [[ ${file##*/} = "${keyboard}_default.hex" ]]; then |
|
||||||
match=1 |
|
||||||
break |
|
||||||
fi |
|
||||||
done |
|
||||||
if [[ $match = 0 ]]; then |
|
||||||
echo "Removing deprecated binary: $file" |
|
||||||
rm "$file" |
|
||||||
fi |
|
||||||
done |
|
||||||
|
|
||||||
bash _util/generate_keyboard_page.sh |
|
||||||
git add -A |
|
||||||
git commit -m "generated from qmk/qmk_firmware@${rev}" |
|
||||||
git push git@github.com:qmk/qmk.fm.git |
|
||||||
|
|
||||||
fi |
|
||||||
|
|
||||||
fi |
|
@ -1,14 +0,0 @@ |
|||||||
# Use this by sourcing it in your script. |
|
||||||
|
|
||||||
if [[ "$TRAVIS_BRANCH" == "master" && "$TRAVIS_PULL_REQUEST" == "false" ]] ; then |
|
||||||
git config --global user.name "QMK Bot" |
|
||||||
git config --global user.email "hello@qmk.fm" |
|
||||||
|
|
||||||
openssl aes-256-cbc -K $encrypted_b0ee987fd0fc_key -iv $encrypted_b0ee987fd0fc_iv -in secrets.tar.enc -out secrets.tar -d |
|
||||||
tar xvf secrets.tar |
|
||||||
|
|
||||||
chmod 600 id_rsa_qmk_firmware |
|
||||||
chmod 600 id_rsa_qmk.fm |
|
||||||
eval `ssh-agent -s` |
|
||||||
ssh-add id_rsa_qmk_firmware |
|
||||||
fi |
|
@ -1,19 +0,0 @@ |
|||||||
#!/usr/bin/env bash |
|
||||||
|
|
||||||
source util/travis_utils.sh |
|
||||||
|
|
||||||
if [[ "$TRAVIS_COMMIT_MESSAGE" == *"[skip test]"* ]]; then |
|
||||||
echo "Skipping due to commit message" |
|
||||||
exit 0 |
|
||||||
fi |
|
||||||
|
|
||||||
exit_code=0 |
|
||||||
|
|
||||||
if [ "$LOCAL_BRANCH" == "master" ] || [ "$NUM_CORE_CHANGES" != "0" ]; then |
|
||||||
echo "Running tests." |
|
||||||
make test:all |
|
||||||
: $((exit_code = $exit_code + $?)) |
|
||||||
|
|
||||||
fi |
|
||||||
|
|
||||||
exit $exit_code |
|
@ -1,25 +0,0 @@ |
|||||||
# Use this by sourcing it in your script. |
|
||||||
|
|
||||||
# Provide sane defaults for travis environment |
|
||||||
TRAVIS_BRANCH="${TRAVIS_BRANCH:master}" |
|
||||||
TRAVIS_PULL_REQUEST="${TRAVIS_PULL_REQUEST:false}" |
|
||||||
TRAVIS_COMMIT_MESSAGE="${TRAVIS_COMMIT_MESSAGE:-none}" |
|
||||||
TRAVIS_COMMIT_RANGE="${TRAVIS_COMMIT_RANGE:-HEAD~1..HEAD}" |
|
||||||
|
|
||||||
# test force push |
|
||||||
#TRAVIS_COMMIT_RANGE="c287f1bfc5c8...81f62atc4c1d" |
|
||||||
|
|
||||||
# Extra variables |
|
||||||
LOCAL_BRANCH=$(git rev-parse --abbrev-ref HEAD) |
|
||||||
QMK_CHANGES=$(git diff --name-only -n 1 ${TRAVIS_COMMIT_RANGE}) |
|
||||||
NUM_CORE_CHANGES=$(echo "$QMK_CHANGES" | grep -Ec -e '^Makefile' -e '^[^/]*.mk' -e '^drivers/' -e '^lib/atsam' -e '^lib/lib8tion/' -e '^platforms' -e '^quantum' -e '^tests' -e '^tmk_core') |
|
||||||
|
|
||||||
# if docker is installed - patch calls to within the qmk docker image |
|
||||||
if command -v docker >/dev/null; then |
|
||||||
function make() { |
|
||||||
docker run --rm -e MAKEFLAGS="$MAKEFLAGS" -w /qmk_firmware/ -v "$PWD":/qmk_firmware --user $(id -u):$(id -g) qmkfm/base_container make "$@" |
|
||||||
} |
|
||||||
function qmk() { |
|
||||||
docker run --rm -w /qmk_firmware/ -v "$PWD":/qmk_firmware --user $(id -u):$(id -g) qmkfm/base_container bin/qmk "$@" |
|
||||||
} |
|
||||||
fi |
|
Loading…
Reference in new issue