X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/8e6590f2999e3298bbe37885a336b77b7da5688b..2a07cc1dc95048c86a3fc76aca2e9c088f7b5025:/.appveyor.yml diff --git a/.appveyor.yml b/.appveyor.yml index 366c1b29c7..401f8cd291 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -2,10 +2,13 @@ # # Build logs: https://ci.appveyor.com/project/simgrid/simgrid -# Documentation: https://www.appveyor.com/docs/ +# Documentation: https://www.appveyor.com/docs/ # https://www.appveyor.com/docs/installed-software/ -os: Visual Studio 2015 +image: + - Visual Studio 2015 +# - Ubuntu + version: "{build}" clone_depth: 1 @@ -14,58 +17,45 @@ init: - git config --global core.longpaths true - git config --global core.autocrlf input +branches: + only: + - master + - appveyor + environment: global: BOOST_ROOT: C:\Libraries\boost_1_60_0 - TESH_ARGS: C:/projects/simgrid/bin/tesh --setenv srcdir=C:/projects/simgrid/examples/java --setenv classpath=C:/projects/simgrid/examples/java;C:/projects/simgrid/teshsuite/java;C:/projects/simgrid/simgrid.jar --cd C:/projects/simgrid/examples/java install: # Strawberry perl is the one to work with gcc; AppVeyor provides ActiveState perl, which is the one to work with visual. -- choco install --limit-output strawberryperl --version 5.20.1.1 -- SET PATH=C:\strawberry\c\bin;C:\strawberry\perl\site\bin;C:\strawberry\perl\bin;%PATH% +# This package is so outdated and broken that we cannot use it anymore. So we build without perl +# - choco install --limit-output strawberryperl --version 5.20.1.1 +# - SET PATH=C:\strawberry\c\bin;C:\strawberry\perl\site\bin;C:\strawberry\perl\bin;%PATH% # Lua #- choco install lua53 # We need python v3 -- SET PATH=C:\Python35-x64;%PATH% # We need python v3 -# Appveyor does not provide a 64bits mingw-w64, only a 32 bits -- choco install --limit-output mingw -- SET PATH=C:\tools\mingw64\bin;%PATH% # Our mingw must be placed before Perl in the path +- cmd: SET PATH=C:\Python37-x64;%PATH% # We need python v3 +# Use the mingw-w64 provided by Appveyor (must be placed before Perl in the path) +- cmd: SET PATH=C:\mingw-w64\x86_64-7.2.0-posix-seh-rt_v5-rev1\mingw64\bin\;%PATH% # Work around a bug on appveyor where the default sh is not the one I expect - rename "C:\Program Files\Git\usr\bin\sh.exe" "sh-ignored.exe" +# We need pybind11. SimGrid will pick it automatically if the subdir is here +- cmd: git clone --depth=1 https://github.com/pybind/pybind11.git build_script: -- cmake -G "MinGW Makefiles" -Denable_lua=OFF -Denable_java=ON -Denable_smpi=OFF -Denable_mallocators=OFF -Denable_lto=OFF . -- C:\tools\mingw64\bin\mingw32-make.exe VERBOSE=1 -- ctest --output-on-failure - -##test_script: -## find examples/java -name '*tesh'|sed 's|^|- perl %TESH_ARGS% C:/projects/simgrid/|' |sort -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/app/bittorrent/app_bittorrent.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/app/centralizedmutex/app_centralizedmutex.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/app/masterworker/app_masterworker.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/app/pingpong/app_pingpong.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/async/dsend/async_dsend.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/cloud/masterworker/cloud_masterworker.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/cloud/migration/cloud_migration.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/dht/chord/dht_chord.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/dht/kademlia/dht_kademlia.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/energy/consumption/energy_consumption.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/energy/vm/energy_vm.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/io/file/io_file.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/io/storage/io_storage.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/process/kill/process_kill.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/process/migration/process_migration.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/process/startkilltime/process_startkilltime.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/process/suspend/process_suspend.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/task/priority/task_priority.tesh -#- perl %TESH_ARGS% C:/projects/simgrid/examples/java/trace/pingpong/trace_pingpong.tesh +- cmake -G "MinGW Makefiles" -Denable_lua=OFF -Denable_documentation=OFF -Denable_java=ON -Denable_smpi=OFF -Denable_mallocators=OFF -Denable_lto=OFF . +- mingw32-make.exe VERBOSE=1 java-all python-bindings # Only the Java and Python parts +- ctest --output-on-failure -R java +# Don't test python, as pybind11 seems too complex for mingw for now (mingw-w64/x86_64-7.2.0-posix-seh-rt_v5-rev1) +# The observed failure is around the ForcefulKill exception, that seems badly caught somehow. +# - ctest --output-on-failure -R python artifacts: - path: simgrid.jar name: jarfile -# notifications: -# - irc: "irc.debian.org#simgrid" # Not implemented by AppVeyor yet :( - - - +# IRC notifications, even if https://github.com/appveyor/ci/issues/88 is not closed yet +on_failure: + - "python tools/appveyor-irc-notify.py simgrid [{project_name}:{branch}] {short_commit}: \"{message}\" ({author}) {color_red}Failed,Details: {build_url},Commit: {commit_url}" +#on_success: +# - "python tools/appveyor-irc-notify.py simgrid [{project_name}:{branch}] {short_commit}: \"{message}\" ({author}) {color_green}Succeeded,Details: {build_url},Commit: {commit_url}"