From a56139e45028b3522ca8cc079b0b70cf97af561f Mon Sep 17 00:00:00 2001 From: Clement Champetier Date: Tue, 7 Apr 2015 11:05:47 +0200 Subject: [PATCH 1/5] Add appveyor CI to build on windows --- appveyor.yml | 30 +++++++++++++++++++++++++++++ tools/appveyor.python.nosetests.bat | 18 +++++++++++++++++ tools/appveyor.win.install.deps.bat | 11 +++++++++++ 3 files changed, 59 insertions(+) create mode 100644 appveyor.yml create mode 100755 tools/appveyor.python.nosetests.bat create mode 100755 tools/appveyor.win.install.deps.bat diff --git a/appveyor.yml b/appveyor.yml new file mode 100644 index 00000000..df8d4791 --- /dev/null +++ b/appveyor.yml @@ -0,0 +1,30 @@ +os: + - Windows Server 2012 R2 + +platform: + - x86 + - Any CPU + +matrix: + fast_finish: true + +init: + - call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" %platform% + +before_build: + - choco install -y swig + - tools/appveyor.win.install.deps.bat + +build_script: + - MKDIR build + - cd build + - call cmake.exe .. -G "NMake Makefiles" -DCMAKE_INSTALL_PREFIX=%~dp0 -DCMAKE_PREFIX_PATH="%~dp0\ffmpeg-2.2.11-win32-dev" + - call nmake /F Makefile install + +before_test: + - pip install nosetests + +test_script: + - cd .. + - tools/appveyor.python.nosetests.bat + diff --git a/tools/appveyor.python.nosetests.bat b/tools/appveyor.python.nosetests.bat new file mode 100755 index 00000000..35714d52 --- /dev/null +++ b/tools/appveyor.python.nosetests.bat @@ -0,0 +1,18 @@ +set PWD=%~dp0 + +:: Get avtranscoder library +set PYTHONPATH=%PWD%/build/dist/lib/python2.7.6/site-packages/:%PYTHONPATH% + +:: Get avtranscoder profiles +set AVPROFILES=%PWD%/build/dist/share/ressource + +:: Get assets +git clone https://github.com/avTranscoder/avTranscoder-data.git +set AVTRANSCODER_TEST_VIDEO_FILE=%PWD%/avTranscoder-data/video/BigBuckBunny/BigBuckBunny_480p_stereo.avi +set AVTRANSCODER_TEST_AUDIO_WAVE_FILE=%PWD%/avTranscoder-data/audio/frequenciesPerChannel.wav +set AVTRANSCODER_TEST_AUDIO_MOV_FILE=%PWD%/avTranscoder-data/video/BigBuckBunny/BigBuckBunny_1080p_5_1.mov + +:: Launch tests +cd test/pyTest +nosetests + diff --git a/tools/appveyor.win.install.deps.bat b/tools/appveyor.win.install.deps.bat new file mode 100755 index 00000000..a4e1a77e --- /dev/null +++ b/tools/appveyor.win.install.deps.bat @@ -0,0 +1,11 @@ +set FFMPEG_VERSION=2.2.11 + +:: Installing ffmpeg dev (include + apps) +curl -kLO http://ffmpeg.zeranoe.com/builds/win32/dev/ffmpeg-%FFMPEG_VERSION%-win32-dev.7z +7z x ffmpeg-%FFMPEG_VERSION%-win32-dev.7z + +:: Installing ffmpeg shared (libs) +curl -kLO http://ffmpeg.zeranoe.com/builds/win32/shared/ffmpeg-%FFMPEG_VERSION%-win32-shared.7z +7z x ffmpeg-%FFMPEG_VERSION%-win32-shared.7z + +move ffmpeg-%FFMPEG_VERSION%-win32-shared\bin ffmpeg-%FFMPEG_VERSION%-win32-dev From 90fe8f2a6b031ad6ec0c0080540d45f81e01a8c2 Mon Sep 17 00:00:00 2001 From: Clement Champetier Date: Fri, 6 Nov 2015 15:54:12 +0100 Subject: [PATCH 2/5] appveyor: fix build and tests of avtranscoder * Add file tools/appveyor.build.bat * Build on both x86 and x64 (but not 'Any CPU') --- appveyor.yml | 12 ++++++------ tools/appveyor.build.bat | 18 ++++++++++++++++++ tools/appveyor.python.nosetests.bat | 22 +++++++++++++++------- tools/appveyor.win.install.deps.bat | 18 +++++++++++++----- 4 files changed, 52 insertions(+), 18 deletions(-) create mode 100755 tools/appveyor.build.bat diff --git a/appveyor.yml b/appveyor.yml index df8d4791..71f0a4ef 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -3,7 +3,7 @@ os: platform: - x86 - - Any CPU + - x64 matrix: fast_finish: true @@ -16,15 +16,15 @@ before_build: - tools/appveyor.win.install.deps.bat build_script: - - MKDIR build - - cd build - - call cmake.exe .. -G "NMake Makefiles" -DCMAKE_INSTALL_PREFIX=%~dp0 -DCMAKE_PREFIX_PATH="%~dp0\ffmpeg-2.2.11-win32-dev" - - call nmake /F Makefile install + - tools/appveyor.build.bat before_test: - - pip install nosetests + - set PATH=C:\Python27\scripts;%PATH% + - pip install nose test_script: - cd .. - tools/appveyor.python.nosetests.bat +on_failure: + - type "C:\projects\avtranscoder\build\CMakeFiles\CMakeOutput.log" diff --git a/tools/appveyor.build.bat b/tools/appveyor.build.bat new file mode 100755 index 00000000..7ef741f2 --- /dev/null +++ b/tools/appveyor.build.bat @@ -0,0 +1,18 @@ +@echo on + +set FFMPEG_VERSION=2.2.11 + +if %platform% == x86 set PLATFORM_VERSION=32 +if %platform% == X64 set PLATFORM_VERSION=64 + +MKDIR build +cd build + +:: Configure +call cmake.exe .. -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=%CD% -DCMAKE_PREFIX_PATH=C:\ProgramData\ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-dev -DAVTRANSCODER_PYTHON_VERSION_OF_BINDING=2.7 + +:: Build & Install +call nmake /F Makefile +call nmake /F Makefile install + +@echo off diff --git a/tools/appveyor.python.nosetests.bat b/tools/appveyor.python.nosetests.bat index 35714d52..8d562c43 100755 --- a/tools/appveyor.python.nosetests.bat +++ b/tools/appveyor.python.nosetests.bat @@ -1,18 +1,26 @@ -set PWD=%~dp0 +@echo on + +set PWD=C:\projects\avtranscoder +set FFMPEG_VERSION=2.2.11 + +if %platform% == x86 set PLATFORM_VERSION=32 +if %platform% == X64 set PLATFORM_VERSION=64 :: Get avtranscoder library -set PYTHONPATH=%PWD%/build/dist/lib/python2.7.6/site-packages/:%PYTHONPATH% +set PYTHONPATH=%PWD%\build\lib\python2.7\site-packages;%PYTHONPATH% +set PATH=C:\ProgramData\ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-dev\bin;%PWD%\build\lib;%PATH% :: Get avtranscoder profiles -set AVPROFILES=%PWD%/build/dist/share/ressource +set AVPROFILES=%PWD%\build\share\avprofiles :: Get assets git clone https://github.com/avTranscoder/avTranscoder-data.git -set AVTRANSCODER_TEST_VIDEO_FILE=%PWD%/avTranscoder-data/video/BigBuckBunny/BigBuckBunny_480p_stereo.avi -set AVTRANSCODER_TEST_AUDIO_WAVE_FILE=%PWD%/avTranscoder-data/audio/frequenciesPerChannel.wav -set AVTRANSCODER_TEST_AUDIO_MOV_FILE=%PWD%/avTranscoder-data/video/BigBuckBunny/BigBuckBunny_1080p_5_1.mov +set AVTRANSCODER_TEST_VIDEO_FILE=%PWD%\avTranscoder-data/video\BigBuckBunny\BigBuckBunny_480p_stereo.avi +set AVTRANSCODER_TEST_AUDIO_WAVE_FILE=%PWD%\avTranscoder-data\audio\frequenciesPerChannel.wav +set AVTRANSCODER_TEST_AUDIO_MOV_FILE=%PWD%\avTranscoder-data\video\BigBuckBunny\BigBuckBunny_1080p_5_1.mov :: Launch tests -cd test/pyTest +cd test\pyTest nosetests +@echo off diff --git a/tools/appveyor.win.install.deps.bat b/tools/appveyor.win.install.deps.bat index a4e1a77e..71bb423e 100755 --- a/tools/appveyor.win.install.deps.bat +++ b/tools/appveyor.win.install.deps.bat @@ -1,11 +1,19 @@ +@echo on + set FFMPEG_VERSION=2.2.11 +if %platform% == x86 set PLATFORM_VERSION=32 +if %platform% == X64 set PLATFORM_VERSION=64 + :: Installing ffmpeg dev (include + apps) -curl -kLO http://ffmpeg.zeranoe.com/builds/win32/dev/ffmpeg-%FFMPEG_VERSION%-win32-dev.7z -7z x ffmpeg-%FFMPEG_VERSION%-win32-dev.7z +curl -kLO http://ffmpeg.zeranoe.com/builds/win%PLATFORM_VERSION%/dev/ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-dev.7z +7z x ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-dev.7z :: Installing ffmpeg shared (libs) -curl -kLO http://ffmpeg.zeranoe.com/builds/win32/shared/ffmpeg-%FFMPEG_VERSION%-win32-shared.7z -7z x ffmpeg-%FFMPEG_VERSION%-win32-shared.7z +curl -kLO http://ffmpeg.zeranoe.com/builds/win%PLATFORM_VERSION%/shared/ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-shared.7z +7z x ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-shared.7z + +move ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-shared\bin ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-dev +move ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-dev C:\ProgramData\ -move ffmpeg-%FFMPEG_VERSION%-win32-shared\bin ffmpeg-%FFMPEG_VERSION%-win32-dev +@echo off From 38b014c9cbda2923b85b3ba964bc0b67dfe21f43 Mon Sep 17 00:00:00 2001 From: Clement Champetier Date: Mon, 16 Nov 2015 10:15:19 +0100 Subject: [PATCH 3/5] appveyor: simplify how to use ffmpeg install --- tools/appveyor.build.bat | 5 +---- tools/appveyor.python.nosetests.bat | 5 +---- tools/appveyor.win.install.deps.bat | 2 +- 3 files changed, 3 insertions(+), 9 deletions(-) diff --git a/tools/appveyor.build.bat b/tools/appveyor.build.bat index 7ef741f2..5d930198 100755 --- a/tools/appveyor.build.bat +++ b/tools/appveyor.build.bat @@ -2,14 +2,11 @@ set FFMPEG_VERSION=2.2.11 -if %platform% == x86 set PLATFORM_VERSION=32 -if %platform% == X64 set PLATFORM_VERSION=64 - MKDIR build cd build :: Configure -call cmake.exe .. -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=%CD% -DCMAKE_PREFIX_PATH=C:\ProgramData\ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-dev -DAVTRANSCODER_PYTHON_VERSION_OF_BINDING=2.7 +call cmake.exe .. -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=%CD% -DCMAKE_PREFIX_PATH=C:\ProgramData\ffmpeg-%FFMPEG_VERSION% -DAVTRANSCODER_PYTHON_VERSION_OF_BINDING=2.7 :: Build & Install call nmake /F Makefile diff --git a/tools/appveyor.python.nosetests.bat b/tools/appveyor.python.nosetests.bat index 8d562c43..009e457f 100755 --- a/tools/appveyor.python.nosetests.bat +++ b/tools/appveyor.python.nosetests.bat @@ -3,12 +3,9 @@ set PWD=C:\projects\avtranscoder set FFMPEG_VERSION=2.2.11 -if %platform% == x86 set PLATFORM_VERSION=32 -if %platform% == X64 set PLATFORM_VERSION=64 - :: Get avtranscoder library set PYTHONPATH=%PWD%\build\lib\python2.7\site-packages;%PYTHONPATH% -set PATH=C:\ProgramData\ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-dev\bin;%PWD%\build\lib;%PATH% +set PATH=C:\ProgramData\ffmpeg-%FFMPEG_VERSION%\bin;%PWD%\build\lib;%PATH% :: Get avtranscoder profiles set AVPROFILES=%PWD%\build\share\avprofiles diff --git a/tools/appveyor.win.install.deps.bat b/tools/appveyor.win.install.deps.bat index 71bb423e..7368d4f1 100755 --- a/tools/appveyor.win.install.deps.bat +++ b/tools/appveyor.win.install.deps.bat @@ -14,6 +14,6 @@ curl -kLO http://ffmpeg.zeranoe.com/builds/win%PLATFORM_VERSION%/shared/ffmpeg-% 7z x ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-shared.7z move ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-shared\bin ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-dev -move ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-dev C:\ProgramData\ +move ffmpeg-%FFMPEG_VERSION%-win%PLATFORM_VERSION%-dev C:\ProgramData\ffmpeg-%FFMPEG_VERSION% @echo off From a98a7ddf2b381476d737210763795d1fd55a6ea2 Mon Sep 17 00:00:00 2001 From: Clement Champetier Date: Mon, 16 Nov 2015 10:29:33 +0100 Subject: [PATCH 4/5] appveyor: deactivate x64 build See issue #171 --- appveyor.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appveyor.yml b/appveyor.yml index 71f0a4ef..6f58ae8c 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -3,7 +3,7 @@ os: platform: - x86 - - x64 +# - x64 matrix: fast_finish: true From 566d555018377eb2ccfe7bb91a4f1fe109a84871 Mon Sep 17 00:00:00 2001 From: Clement Champetier Date: Mon, 16 Nov 2015 10:30:35 +0100 Subject: [PATCH 5/5] appveyor: add artifacts and deploy sections Comment them for now. See issue #172 --- appveyor.yml | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/appveyor.yml b/appveyor.yml index 6f58ae8c..c28a79d1 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -28,3 +28,24 @@ test_script: on_failure: - type "C:\projects\avtranscoder\build\CMakeFiles\CMakeOutput.log" + +#on_success: +# - create archives + +#artifacts: +# - path: C:\ProgramData\ffmpeg-2.2.11 +# name: ffmpeg +# type: zip + +# - path: C:\projects\avtranscoder\build +# name: avtranscoder +# type: zip + +#deploy: +# - provider: GitHub +# artifact: ffmpeg,avtranscoder +# auth_token: +# secure: +# on: +# branch: master +# appveyor_repo_tag: true