https://github.com/ElsevierSoftwareX/SOFTX_2019_219
Revision 23801a03e63804d9d099c644e2c2fe4945d6d06b authored by Konrad Werys on 30 July 2019, 11:59:42 UTC, committed by Konrad Werys on 30 July 2019, 11:59:42 UTC
1 parent f475f45
Raw File
Tip revision: 23801a03e63804d9d099c644e2c2fe4945d6d06b authored by Konrad Werys on 30 July 2019, 11:59:42 UTC
fix: codecov reports
Tip revision: 23801a0
.appveyor.yml
#------------------------------------#
#   Tomato   #
#------------------------------------#

os:
  - Visual Studio 2015

init:
  - git config --global core.autocrlf input
  # Set build version to git commit-hash
  - ps: Update-AppveyorBuild -Version "$($env:APPVEYOR_REPO_BRANCH) - $($env:APPVEYOR_REPO_COMMIT)"

# about toolset: https://devblogs.microsoft.com/cppblog/stuck-on-an-older-toolset-version-move-to-visual-studio-2015-without-upgrading-your-toolset/
environment:
  toolset: v90
  EXE_EXTENDED_NAME: TomatoExe_%APPVEYOR_REPO_TAG_NAME%_Windows_%PLATFORM%
  LIB_EXTENDED_NAME: TomatoLib_%APPVEYOR_REPO_TAG_NAME%_Windows_%PLATFORM%

install:
  - git submodule update --init --recursive
  - cd %APPVEYOR_BUILD_FOLDER%\thirdParty\googletest
  - git checkout tags/release-1.4.0 # version that works with this toolset

platform:
  - Win32
  - x64

configuration:
  - Release

before_build:
  # get itk
  - cd %APPVEYOR_BUILD_FOLDER%\..
  - git clone https://MRKonrad:%GH_PERSONAL_ACCESS_TOKEN%@github.com/MRKonrad/tomato_private
  - mkdir ITK_install
  - cd ITK_install
  - curl -L https://github.com/MRKonrad/build-itk/releases/download/itk_v4.13.2/itk_v4.13.2_windows_%PLATFORM%_%toolset%.zip -o itk_install.zip
  - 7z x -r itk_install.zip
  - dir
  # configure and generate via cmake
  - cd %APPVEYOR_BUILD_FOLDER%
  - cmake . -Bstatic -A%PLATFORM% -DCMAKE_INSTALL_PREFIX=install -DITK_DIR_HINTS="../ITK_install" -T %toolset% -DLIB_INSTALL_DIR="lib_static"
  - cmake . -Bshared -A%PLATFORM% -DCMAKE_INSTALL_PREFIX=install -DITK_DIR_HINTS="../ITK_install" -T %toolset% -DBUILD_SHARED_LIBS=ON -DUSE_YAML=OFF -DLIB_INSTALL_DIR="lib_shared"

build_script:
  - cd %APPVEYOR_BUILD_FOLDER%\static
  - cmake --build . --config %CONFIGURATION% --target ALL_BUILD
  - cd %APPVEYOR_BUILD_FOLDER%\shared
  - cmake --build . --config %CONFIGURATION% --target ALL_BUILD

after_build:
  # install the files
  - cd %APPVEYOR_BUILD_FOLDER%\static
  - cmake --build . --config %CONFIGURATION% --target INSTALL
  - cd %APPVEYOR_BUILD_FOLDER%\shared
  - cmake --build . --config %CONFIGURATION% --target INSTALL
  # FOR DEPLOYMENT
  - cd %APPVEYOR_BUILD_FOLDER%
  - mkdir deployment
  # change the name of the exe, zip it and copy the zip to the deployment folders
  - cd %APPVEYOR_BUILD_FOLDER%\install
  - 7z a %EXE_EXTENDED_NAME%.zip bin\* # zip
  - 7z a %LIB_EXTENDED_NAME%.zip lib\* lib_static\* lib_shared\* include\* # zip
  - copy %APPVEYOR_BUILD_FOLDER%\install\%EXE_EXTENDED_NAME%.zip %APPVEYOR_BUILD_FOLDER%\deployment\%EXE_EXTENDED_NAME%.zip
  - copy %APPVEYOR_BUILD_FOLDER%\install\%LIB_EXTENDED_NAME%.zip %APPVEYOR_BUILD_FOLDER%\deployment\%LIB_EXTENDED_NAME%.zip

test_script:
  # TODO: should I add sth like this? https://github.com/mgerhardy/caveexpress/blob/master/appveyor.yml
  - cd %APPVEYOR_BUILD_FOLDER%\install\tests\
  - TomatoTests.exe

artifacts:
  - path: deployment\*.*

deploy:
  provider: GitHub
  auth_token:
    secure: Nmbbo4JCoK5AuN1ugWmE/c8/BAXlpz8Lb7piWDcAAWnT/GFa7fwL20GbXyU9AZSn
  draft: false
  prerelease: false
  force_update: true
  on:
    appveyor_repo_tag: true        # deploy on tag push only
    configuration: Release
back to top