From d592b4ea5a85d04845a2d8931370165dcb727d97 Mon Sep 17 00:00:00 2001 From: Minmin Gong Date: Sat, 1 Dec 2018 21:48:47 -0800 Subject: [PATCH] [CI] Add azure pipeline rules Related work item: Github #17 --- .appveyor.yml | 38 ------ .travis.yml | 97 --------------- CI/AzurePipelines/ContinuousBuild.yml | 34 ++++++ README.md | 6 +- azure-pipelines.yml | 163 ++++++++++++++++++++++++++ 5 files changed, 199 insertions(+), 139 deletions(-) delete mode 100644 .appveyor.yml delete mode 100644 .travis.yml create mode 100644 CI/AzurePipelines/ContinuousBuild.yml create mode 100644 azure-pipelines.yml diff --git a/.appveyor.yml b/.appveyor.yml deleted file mode 100644 index ec7b60f..0000000 --- a/.appveyor.yml +++ /dev/null @@ -1,38 +0,0 @@ -version: '{branch}-{build}' - -clone_depth: 5 - -platform: - - x64 - -configuration: - - Release - -environment: - COMBINATION: win-%COMPILER%-%PLATFORM%-%CONFIGURATION% - ARTIFACTS_ZIP_NAME: ShaderConductor-%COMBINATION%-artifacts.zip - BUILD_DIR: ninja-%COMBINATION% - matrix: - - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 - COMPILER: vc140 - - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 - COMPILER: vc141 - -install: - - choco install ninja - -build_script: - - cd %APPVEYOR_BUILD_FOLDER% - - python BuildAll.py ninja %COMPILER% %PLATFORM% %CONFIGURATION% - -test_script: - - Build\%BUILD_DIR%\Bin\ShaderConductorTest.exe - -after_test: - - cd Build\%BUILD_DIR% - - echo %APPVEYOR_REPO_COMMIT% > GIT-COMMIT.txt - - xcopy "%APPVEYOR_BUILD_FOLDER%\Include\ShaderConductor" Include\ShaderConductor /s /i /y - - 7z a %ARTIFACTS_ZIP_NAME% Include Lib\ShaderConductor.lib Bin\ShaderConductor.dll Bin\ShaderConductorCmd.exe Bin\dxcompiler.dll GIT-COMMIT.txt - -artifacts: - - path: Build\%BUILD_DIR%\%ARTIFACTS_ZIP_NAME% diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index c2b34fa..0000000 --- a/.travis.yml +++ /dev/null @@ -1,97 +0,0 @@ -language: cpp - -git: - depth: 5 - quiet: true - -cache: - apt: true - -matrix: - include: - - os: linux - dist: trusty - sudo: required - addons: - apt: - sources: - - ubuntu-toolchain-r-test - packages: - - g++-7 - - ninja-build - update: - - true - env: MATRIX_EVAL="CC=gcc-7 && CXX=g++-7" COMPILER="gcc" - - - os: linux - dist: xenial - sudo: required - addons: - apt: - sources: - - ubuntu-toolchain-r-test - packages: - - g++-8 - - ninja-build - update: - - true - env: MATRIX_EVAL="CC=gcc-8 && CXX=g++-8" COMPILER="gcc" - - - os: linux - dist: trusty - sudo: required - addons: - apt: - sources: - - llvm-toolchain-trusty-6.0 - - ubuntu-toolchain-r-test - packages: - - clang-6.0 - - libstdc++-6-dev - - ninja-build - update: - - true - env: MATRIX_EVAL="CC=clang-6.0 && CXX=clang++-6.0" COMPILER="clang" - - - os: linux - dist: xenial - sudo: required - addons: - apt: - sources: - - llvm-toolchain-xenial-7 - - ubuntu-toolchain-r-test - packages: - - clang-7 - - libstdc++-7-dev - - ninja-build - update: - - true - env: MATRIX_EVAL="CC=clang-7 && CXX=clang++-7" COMPILER="clang" - - - os: osx - osx_image: xcode9.4 - addons: - homebrew: - packages: - - ninja - update: - - true - env: MATRIX_EVAL="CC=clang && CXX=clang++" COMPILER="clang" - - - os: osx - osx_image: xcode10.1 - addons: - homebrew: - packages: - - ninja - update: - - true - env: MATRIX_EVAL="CC=clang && CXX=clang++" COMPILER="clang" - -before_install: - - eval "${MATRIX_EVAL}" - -script: - - python BuildAll.py ninja $COMPILER x64 Release - - ./Build/ninja-$TRAVIS_OS_NAME-$COMPILER-x64-Release/Bin/ShaderConductorTest diff --git a/CI/AzurePipelines/ContinuousBuild.yml b/CI/AzurePipelines/ContinuousBuild.yml new file mode 100644 index 0000000..ac236a1 --- /dev/null +++ b/CI/AzurePipelines/ContinuousBuild.yml @@ -0,0 +1,34 @@ +steps: +- bash: eval '$(installCommand)' + displayName: 'Install' + +- task: PythonScript@0 + displayName: 'Build' + inputs: + scriptPath: BuildAll.py + arguments: 'ninja $(compiler) $(platform) $(configuration)' + +- bash: eval '$(testCommand)' + displayName: 'Test' + +- bash: 'echo $BUILD_SOURCEVERSION > $BUILD_ARTIFACTSTAGINGDIRECTORY/GIT-COMMIT.txt' + displayName: 'Add commit info' + +- task: CopyFiles@2 + displayName: 'Copy Headers' + inputs: + SourceFolder: '$(Build.SourcesDirectory)' + Contents: Include/ShaderConductor/ShaderConductor.hpp + TargetFolder: '$(Build.ArtifactStagingDirectory)' + +- task: CopyFiles@2 + displayName: 'Copy Binaries' + inputs: + SourceFolder: '$(Build.SourcesDirectory)/$(buildFolder)' + Contents: $(artifactBinaries) + TargetFolder: '$(Build.ArtifactStagingDirectory)' + +- task: PublishBuildArtifacts@1 + inputs: + pathtoPublish: '$(Build.ArtifactStagingDirectory)' + artifactName: ShaderConductor-$(combination) diff --git a/README.md b/README.md index 2eabc0b..3d9ab13 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,6 @@ # ShaderConductor -[![Build status](https://ci.appveyor.com/api/projects/status/x7ni6wjrdbw4e86q/branch/master?svg=true)](https://ci.appveyor.com/project/gongminmin/shaderconductor/branch/master) -[![Build Status](https://travis-ci.org/Microsoft/ShaderConductor.svg?branch=master)](https://travis-ci.org/Microsoft/ShaderConductor) +[![Build Status](https://dev.azure.com/msft-ShaderConductor/public/_apis/build/status/ShaderConductor-CI)](https://dev.azure.com/msft-ShaderConductor/public/_build/latest?definitionId=1) [![License](https://img.shields.io/github/license/mashape/apistatus.svg)](LICENSE) @@ -62,8 +61,7 @@ After building, the output file ShaderConductor.dll can be located in \