Explorar o código

Copy/merge testing method from develop.

Rene Rivera %!s(int64=10) %!d(string=hai) anos
pai
achega
db6b81de69
Modificáronse 1 ficheiros con 11 adicións e 182 borrados
  1. 11 182
      .travis.yml

+ 11 - 182
.travis.yml

@@ -2,7 +2,7 @@
 # subject to the Boost Software License, Version 1.0. (See accompanying
 # file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 #
-# Copyright Rene Rivera 2015.
+# Copyright Rene Rivera 2015-2016.
 
 branches:
   only:
@@ -54,191 +54,20 @@ matrix:
     # Build release package for CRLF end-of-line style text files (i.e. for Windows).
     - env: RELEASE_BUILD=CRLF
 
-install:
-  # Set where we will place all our build byproducts.
-  - |
-    export "BOOST_BUILD_DIR=${TRAVIS_BUILD_DIR}/../build"
-  
-  # We use RapidXML for some doc building tools.
-  - |
-    cd "${TRAVIS_BUILD_DIR}/.."
-    wget -O rapidxml.zip http://sourceforge.net/projects/rapidxml/files/latest/download
-    unzip -n -d rapidxml rapidxml.zip
-    export RAPIDXML=`ls -1d ${PWD}/rapidxml/rapidxml-*`
-  # Need docutils for building some docs.
-  - |
-    sudo pip install docutils
-
-before_script:
-  # Fail the whole script whenever any command fails
-  - |
-    set -e
-  
-  # Fetch the rest of the Boost submodules in the appropriate
-  # EOL style.
-  - |
-    if [[ "${STATUS_TESTS}" == "true" ]]; then
-      cd "${TRAVIS_BUILD_DIR}"
-      git submodule update --init --recursive
-    fi
-  - |
-    if [[ "${RELEASE_BUILD}" == "LF" ]]; then
-      cd "${TRAVIS_BUILD_DIR}"
-      git config --global core.eol lf
-      git config --global core.autocrlf input
-      git rm --cache -r .
-      git reset --quiet --hard HEAD
-      git submodule update --init --recursive
-    fi
-  - |
-    if [[ "${RELEASE_BUILD}" == "CRLF" ]]; then
-      cd "${TRAVIS_BUILD_DIR}"
-      git config --global core.eol crlf
-      git config --global core.autocrlf true
-      git rm --cache -r .
-      git reset --quiet --hard HEAD
-      git submodule update --init --recursive
-    fi
-
-script:
-  # Simple integrated status tests check. Currently this only
-  # veryfies that we will not get build system errors from things
-  # like missing test files.
+before_install:
+  # Fetch the script to do the actual building/testing.
   - |
     if [[ "${STATUS_TESTS}" == "true" ]]; then
-      cd "${TRAVIS_BUILD_DIR}"
-      ./bootstrap.sh
-      ./b2 -n
-      cd status
-      ../b2 -n -d0
-    fi
-  
-  # Build a packaged release. This involves building a fresh set
-  # of docs and selectively packging parts of the tree. We try and
-  # avoid creating extra files in the base tree to avoid including
-  # extra stuff in the archives. Which means that we reset the git
-  # tree state to cleanup after building.
-  
-  # Set up where we will "install" built tools.
-  - |
-    if [[ "${RELEASE_BUILD}" == "LF" || "${RELEASE_BUILD}" == "CRLF" ]]; then
-      mkdir -p "${BOOST_BUILD_DIR}/dist/bin"
-      export "PATH=${BOOST_BUILD_DIR}/dist/bin:${PATH}"
-    fi
-  
-  # Bootstrap Boost Build engine.
-  - |
-    if [[ "${RELEASE_BUILD}" == "LF" || "${RELEASE_BUILD}" == "CRLF" ]]; then
-      cd "${TRAVIS_BUILD_DIR}/tools/build"
-      ./bootstrap.sh
-      cp -p b2 "${BOOST_BUILD_DIR}/dist/bin/b2"
-      git clean -dfqx
-    fi
-  
-  # Generate include dir structure.
-  - |
-    if [[ "${RELEASE_BUILD}" == "LF" || "${RELEASE_BUILD}" == "CRLF" ]]; then
-      cd "${TRAVIS_BUILD_DIR}"
-      b2 -q -d0 -j2 headers
-    fi
-  
-  # Build doxygen_xml2qbk for building Boost Geometry docs.
-  - |
-    if [[ "${RELEASE_BUILD}" == "LF" || "${RELEASE_BUILD}" == "CRLF" ]]; then
-      cd "${TRAVIS_BUILD_DIR}/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk"
-      b2 -q -d0 -j2 --build-dir="${BOOST_BUILD_DIR}" --distdir="${BOOST_BUILD_DIR}/dist"
-      cd "${TRAVIS_BUILD_DIR}/libs/geometry"
-      git clean -dfqx
-    fi
-  
-  # Build Quickbook documentation tool.
-  - |
-    if [[ "${RELEASE_BUILD}" == "LF" || "${RELEASE_BUILD}" == "CRLF" ]]; then
-      cd "${TRAVIS_BUILD_DIR}/tools/quickbook"
-      b2 -q -d0 -j2 --build-dir="${BOOST_BUILD_DIR}" --distdir="${BOOST_BUILD_DIR}/dist"
-      git clean -dfqx
-    fi
-  
-  # Build auto-index documentation tool.
-  - |
-    if [[ "${RELEASE_BUILD}" == "LF" || "${RELEASE_BUILD}" == "CRLF" ]]; then
-      cd "${TRAVIS_BUILD_DIR}/tools/auto_index/build"
-      b2 -q -d0 -j2 --build-dir="${BOOST_BUILD_DIR}" --distdir="${BOOST_BUILD_DIR}/dist"
-      cd "${TRAVIS_BUILD_DIR}/tools/auto_index"
-      git clean -dfqx
-    fi
-  
-  # Set up build config.
-  - |
-    if [[ "${RELEASE_BUILD}" == "LF" || "${RELEASE_BUILD}" == "CRLF" ]]; then
-      echo "using quickbook : \"${BOOST_BUILD_DIR}/dist/bin/quickbook\" ;" >> "${HOME}/user-config.jam"
-      echo "using auto-index : \"${BOOST_BUILD_DIR}/dist/bin/auto_index\" ;" >> "${HOME}/user-config.jam"
-      echo "using docutils ;" >> "${HOME}/user-config.jam"
-      echo "using doxygen ;" >> "${HOME}/user-config.jam"
-    fi
-  
-  # Pre-build Boost Geometry docs.
-  - |
-    if [[ "${RELEASE_BUILD}" == "LF" || "${RELEASE_BUILD}" == "CRLF" ]]; then
-      cd "${TRAVIS_BUILD_DIR}/libs/geometry/doc"
-      python make_qbk.py --release-build
-    fi
-  
-  # Build the full docs, and all the submodule docs.
-  - |
-    if [[ "${RELEASE_BUILD}" == "LF" || "${RELEASE_BUILD}" == "CRLF" ]]; then
-      cd "${TRAVIS_BUILD_DIR}/doc"
-      (while true ; do sleep 60 && echo "[[ ALIVE? ]]" ; done ;) &
-      AWAKE_PID=$!
-      b2 -q -d0 -j2 --build-dir="${BOOST_BUILD_DIR}" --distdir="${BOOST_BUILD_DIR}/dist" --release-build --enable-index
-      kill $AWAKE_PID
+      wget "https://raw.githubusercontent.com/boostorg/release-tools/develop/ci_boost_status.py" -O ../script.py
     fi
-  
-  # Make the real distribution tree from the base tree. The
-  # distribution tree is "marked" with the commit hash to be
-  # able to track a package to the commit we test.
   - |
     if [[ "${RELEASE_BUILD}" == "LF" || "${RELEASE_BUILD}" == "CRLF" ]]; then
-      cd "${TRAVIS_BUILD_DIR}/.."
-      wget "https://raw.githubusercontent.com/boostorg/release-tools/develop/MakeBoostDistro.py"
-      chmod +x MakeBoostDistro.py
-      export BOOST_RELEASE=boost_1_61_0
-      ./MakeBoostDistro.py "${TRAVIS_BUILD_DIR}" "${BOOST_RELEASE}"
-    fi
-  
-  # Create packages for LF style content.
-  - |
-    if [[ "${RELEASE_BUILD}" == "LF" ]]; then
-      cd "${TRAVIS_BUILD_DIR}/.."
-      tar -zcf "${BOOST_RELEASE}.tar.gz" "${BOOST_RELEASE}"
-      tar -cjf "${BOOST_RELEASE}.tar.bz2" "${BOOST_RELEASE}"
-      ls -la
-    fi
-  
-  # Create packages for CRLF style content.
-  - |
-    if [[ "${RELEASE_BUILD}" == "CRLF" ]]; then
-      cd "${TRAVIS_BUILD_DIR}/.."
-      zip -qr "${BOOST_RELEASE}.zip" "${BOOST_RELEASE}"
-      7z a -r "${BOOST_RELEASE}.7z" "${BOOST_RELEASE}" > /dev/null
-      ls -la
+      wget "https://raw.githubusercontent.com/boostorg/release-tools/develop/ci_boost_release.py" -O ../script.py
     fi
 
-after_success:
-  # Publish created packages depending on the EOL style and branch.
-  # We post archives to distribution services. But currently we only
-  # post master packages as they happen less often. And we are
-  # unlikely to ever want anything else as a package for the
-  # releases.
-  - |
-    if [[ "${TRAVIS_BRANCH}" == "master" && "${RELEASE_BUILD}" == "LF" ]]; then
-      cd "${TRAVIS_BUILD_DIR}/.."
-      curl -T "${BOOST_RELEASE}.tar.gz" "-ugrafikrobot:${BINTRAY}" "https://api.bintray.com/content/boostorg/snapshots/${TRAVIS_BRANCH}/${TRAVIS_COMMIT}/${BOOST_RELEASE}.tar.gz?publish=1&override=1"
-      curl -T "${BOOST_RELEASE}.tar.bz2" "-ugrafikrobot:${BINTRAY}" "https://api.bintray.com/content/boostorg/snapshots/${TRAVIS_BRANCH}/${TRAVIS_COMMIT}/${BOOST_RELEASE}.tar.bz2?publish=1&override=1"
-    fi
-  - |
-    if [[ "${TRAVIS_BRANCH}" == "master" && "${RELEASE_BUILD}" == "CRLF" ]]; then
-      cd "${TRAVIS_BUILD_DIR}/.."
-      curl -T "${BOOST_RELEASE}.zip" "-ugrafikrobot:${BINTRAY}" "https://api.bintray.com/content/boostorg/snapshots/${TRAVIS_BRANCH}/${TRAVIS_COMMIT}/${BOOST_RELEASE}.zip?publish=1&override=1"
-      curl -T "${BOOST_RELEASE}.7z" "-ugrafikrobot:${BINTRAY}" "https://api.bintray.com/content/boostorg/snapshots/${TRAVIS_BRANCH}/${TRAVIS_COMMIT}/${BOOST_RELEASE}.7z?publish=1&override=1"
-    fi
+install: python "${TRAVIS_BUILD_DIR}/../script.py" install
+before_script: python "${TRAVIS_BUILD_DIR}/../script.py" before_script
+script: python "${TRAVIS_BUILD_DIR}/../script.py" script
+after_success: python "${TRAVIS_BUILD_DIR}/../script.py" after_success
+after_failure: python "${TRAVIS_BUILD_DIR}/../script.py" after_failure
+after_script: python "${TRAVIS_BUILD_DIR}/../script.py" after_script

粤ICP备19079148号