Merge pull request #651 from matthiasbeyer/travis-gh-pages-doc

Travis gh pages doc
This commit is contained in:
Matthias Beyer 2016-08-23 15:42:13 +02:00 committed by GitHub
commit aa858cef8a

View file

@ -1,92 +1,88 @@
sudo: false sudo: false
language: rust language: rust
rust: rust:
- beta - beta
- nightly - nightly
- stable - stable
cache: cargo cache: cargo
matrix: matrix:
allow_failures: allow_failures:
- rust: nightly - rust: nightly
- rust: beta - rust: beta
before_install: before_install:
- | - |
c=$(git diff $(git merge-base master $TRAVIS_COMMIT)..$TRAVIS_COMMIT --name-only | cut -d "/" -f 1 | uniq) c=$(git diff $(git merge-base master $TRAVIS_COMMIT)..$TRAVIS_COMMIT --name-only | cut -d "/" -f 1 | uniq)
if [[ "$c" == "doc" ]]; then if [[ "$c" == "doc" ]]; then
echo "Only changes in DOC, exiting 0" echo "Only changes in DOC, exiting 0"
exit 0 exit 0
else else
echo "Changes in other directories than ./doc" echo "Changes in other directories than ./doc"
echo "continue build..." echo "continue build..."
fi fi
before_script: before_script:
- | - |
pip install 'travis-cargo<0.2' --user && pip install 'travis-cargo<0.2' --user &&
export PATH=$HOME/.local/bin:$PATH export PATH=$HOME/.local/bin:$PATH
script: script:
- | - |
travis_cargo_run_in() { travis_cargo_run_in() {
echo ":: Trying to run cargo in $1" echo ":: Trying to run cargo in $1"
[[ -d "$1" ]] && [[ -d "$1" ]] &&
cd "$1" && cd "$1" &&
{ {
{ {
if [[ $(echo "$1" | grep lib) ]]; then if [[ $(echo "$1" | grep lib) ]]; then
travis-cargo -q test travis-cargo -q test
else else
travis-cargo -q build travis-cargo -q build
fi fi
} && } &&
cd - cd -
} || exit 1 } || exit 1
} }
run_sh_test() { run_sh_test() {
echo "--- Running test script: '$1'" echo "--- Running test script: '$1'"
bash $1 || { echo "--- Test failed. Exiting"; exit 1; } bash $1 || { echo "--- Test failed. Exiting"; exit 1; }
echo "--- Test script $1 executed successfully" echo "--- Test script $1 executed successfully"
} }
echo "<< Changes in ./doc are not build by CI >>" echo "<< Changes in ./doc are not build by CI >>"
for d in $(find -name "Cargo.toml" | grep -vE "^./Cargo.toml$"); do
echo ":: Working on $d"
dir=$(dirname $d)
{ \
echo -e "\n--- Running in $d ---\n" && \
travis_cargo_run_in $dir && \
echo "--- Running test scripts ---" && \
for testsh in $(find $dir -iname "*test.sh"); do
run_sh_test $testsh
done && \
echo -e "--- Done with test scripts ---\n\n"
} || true
done
for d in $(find -name "Cargo.toml" | grep -vE "^./Cargo.toml$"); do
echo ":: Working on $d"
dir=$(dirname $d)
{ \
echo -e "\n--- Running in $d ---\n" && \
travis_cargo_run_in $dir && \
echo "--- Running test scripts ---" && \
for testsh in $(find $dir -iname "*test.sh"); do
run_sh_test $testsh
done && \
echo -e "--- Done with test scripts ---\n\n"
} || true
done
addons: addons:
apt: apt:
packages: packages:
- libcurl4-openssl-dev - libcurl4-openssl-dev
- libelf-dev - libelf-dev
- libdw-dev - libdw-dev
after_success: after_success:
- travis-cargo --only stable doc-upload - |
pushd .imag-documentation &&
travis-cargo --only stable doc &&
travis-cargo --only stable doc-upload
popd
notifications: notifications:
email: email:
on_success: never on_success: never
irc: irc:
channels: channels:
- "chat.freenode.net#imag" - chat.freenode.net#imag
template: template:
- "%{repository_name} (%{branch} @ %{commit} by %{author}): %{result}" - "%{repository_name} (%{branch} @ %{commit} by %{author}): %{result}"
env: env:
global: global:
- TRAVIS_CARGO_NIGHTLY_FEATURE=dev - TRAVIS_CARGO_NIGHTLY_FEATURE=dev
- secure: D+3exBnbvzFvk7fvLOxkF7UotCc4gBbvvOW4xGr9u6dDjEjV5y6CdDy/OQAkhfKhvSou+lIC22g5MuCBQXFEf/ua7A1XzwBAFeVLK4cWZSa7+ql6LdHKqOg3oF6pQlh095WeWr8S2PYJFFJFg8RGUPnbjqdu1J4KSXqe/7GoZ3lYS69mx7D5Hb93KEN084/KGfBuvyJtMjO1fK3spltL2zV8oqegFpv0gLG5GY4LsJ/7ij4Mc6wepXSyyQbaiA1eKMMwQZDvoi4V1mCulo/jeC3pucGxvgnMV5DZs8aa8R7votltGvSpHCgU78LW19dg8oZqwShQQ+XUYw27H+QK5V1lz1l1MaJLbwS3ySyZBPGH8qUuOzQ3bLp9xhAIRgCui3kX/UDhmeME7nJI6k3UZydh+/ydNB1BZHTKn76XS/yFj0Gcibxg7f5fcAYA6Ge5Sg+YPozuwbcKnKe6IpN2M7qNgWa+6MCSXJ1v4BgPb7kN74EynJUM8+yWEFN7MZtWEUQ4ZsHdCs8Pub4C/zHpYGV8qGenZwQzosAFq56YwoGCvJezz35yg4BDd3IMKenOzNnXLBrdxxqX8ySgwt5B3zBqwve/64Lx6OXjae2m8wZKlsmeqad/s6K7nx0zG15/qqRIzyvgcLXq3jwBaHkteq49FRFWvHQFpBQcsPZ2uH4=