加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
azure-pipelines.yml 9.77 KB
一键复制 编辑 原始数据 按行查看 历史
Adam Mitz 提交于 2020-04-06 20:19 . azure-pipelines.yml: removed VS2019
schedules:
- cron: "0 7 * * SUN"
displayName: Weekly Sunday
branches:
include:
- master
always: true
jobs:
- job: VisualStudio2017
timeoutInMinutes: 90
pool:
vmImage: vs2017-win2016
strategy:
matrix:
Release64:
BuildPlatform: x64
BuildConfiguration: Release
Debug64WChar:
BuildPlatform: x64
BuildConfiguration: Debug
variables:
VCPKG_ROOT: $(Build.SourcesDirectory)\vcpkg
steps:
- script: |
if %BuildPlatform%==x64 (set VCVARS_ARCH=x64) else set VCVARS_ARCH=x86
echo ##vso[task.setvariable variable=VcVarsArch]%VCVARS_ARCH%
displayName: Set VcVarsArch
- script: |
git clone -q --depth 1 git://github.com/Microsoft/vcpkg.git %VCPKG_ROOT%
call %VCPKG_ROOT%\bootstrap-vcpkg.bat
set VCPKG_ARCH=$(VcVarsArch)-windows
%VCPKG_ROOT%\vcpkg install --triplet %VCPKG_ARCH% openssl xerces-c
rmdir /s/q %VCPKG_ROOT%\packages %VCPKG_ROOT%\buildtrees
echo ##vso[task.setvariable variable=VcPkgInst]%VCPKG_ROOT%\installed\%VCPKG_ARCH%
displayName: Vcpkg
condition: not(and(eq(variables['BuildConfiguration'], 'Debug'), eq(variables['BuildPlatform'], 'x64')))
- task: BatchScript@1
displayName: VcVars
inputs:
filename: '"C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\vcvarsall.bat"'
arguments: $(VcVarsArch)
modifyEnvironment: true
- task: BatchScript@1
displayName: Put perl on PATH
inputs:
filename: tools\scripts\prepend_path
arguments: 'C:\Strawberry\perl\bin'
modifyEnvironment: true
- script: |
if %BuildConfiguration%==Release set OPT=--no-tests --no-debug --optimize
if %BuildConfiguration%==Debug set OPT=--features=uses_wchar=1
set SEC=--security --xerces3=$(VcPkgInst) --openssl=$(VcPkgInst)
if %BuildConfiguration%==Debug if %BuildPlatform%==x64 set SEC= # Debug64 Fills up Disk with Security
call configure -v --ace-github-latest --tests %SEC% %OPT%
perl tools\scripts\show_build_config.pl
if %BuildConfiguration%==Release (set SLN=DDS_TAOv2.sln) else set SLN=DDS_TAOv2_all.sln
echo ##vso[task.setvariable variable=BuildSolution]%SLN%
failOnStderr: #
displayName: Run configure script
- task: BatchScript@1
displayName: Setenv from configure script
inputs:
filename: setenv.cmd
modifyEnvironment: true
- task: VSBuild@1
displayName: Build solution
inputs:
solution: $(BuildSolution)
platform: $(BuildPlatform)
configuration: $(BuildConfiguration)
maximumCpuCount: true
- script: |
perl "%ACE_ROOT%/bin/mwc.pl" -type vs2017 tests\DCPS\Messenger DevGuideExamples\DCPS\Messenger
displayName: Generate Messenger sln files
- task: VSBuild@1
displayName: Build Messenger Test
inputs:
solution: $(DDS_ROOT)\tests\DCPS\Messenger\Messenger.sln
platform: $(BuildPlatform)
configuration: $(BuildConfiguration)
- task: VSBuild@1
displayName: Build Messenger Example
inputs:
solution: $(DDS_ROOT)\DevGuideExamples\DCPS\Messenger\Messenger.sln
platform: $(BuildPlatform)
configuration: $(BuildConfiguration)
- script: |
perl "%DDS_ROOT%\tests\cmake_integration\run_ci_tests.pl" --build-config=$(BuildConfiguration) --generator="Visual Studio 15 2017" --arch $(BuildPlatform)
displayName: Compile and run CMake tests
- script: |
if %BuildConfiguration%==Release (set SUBDIR_FOR_MESSENGER=Release) else set SUBDIR_FOR_MESSENGER=.
cd tests\DCPS\Messenger
perl run_test.pl rtps -ExeSubDir %SUBDIR_FOR_MESSENGER%
displayName: Run DCPS Messenger Test
- script: |
if %BuildConfiguration%==Release (set SUBDIR_FOR_MESSENGER=Release) else set SUBDIR_FOR_MESSENGER=.
cd DevGuideExamples\DCPS\Messenger
perl integration_run_test.pl -ExeSubDir %SUBDIR_FOR_MESSENGER%
displayName: Run Examples DCPS Messenger
- job: Linux
timeoutInMinutes: 90
pool:
vmImage: ubuntu-18.04
variables:
TEST_MESSENGER: false
strategy:
matrix:
Debug:
ConfigOpts: --no-inline --java=/usr/lib/jvm/zulu-12-azure-amd64
TEST_MESSENGER: true
Release:
ConfigOpts: --no-debug --optimize --java=/usr/lib/jvm/zulu-12-azure-amd64
DoMakeInstall: true
Safety:
ConfigOpts: --safety-profile
SafetyBaseNoBuiltinTopics:
ConfigOpts: --safety-profile=base --no-built-in-topics
Security:
ConfigOpts: --security --features=versioned_namespace=1
PackageDeps: libxerces-c-dev libssl-dev cmake
SecurityWithoutFeatures:
ConfigOpts: >
--security --no-inline --no-debug
--no-built-in-topics --no-content-subscription --no-ownership-profile
--no-object-model-profile --no-persistence-profile
PackageDeps: libxerces-c-dev libssl-dev cmake
WChar:
ConfigOpts: --features=uses_wchar=1 --no-inline
CLANG5:
ConfigOpts: --compiler=clang++-5.0 --security --std=c++11 --features=uses_wchar=1 --no-inline
PackageDeps: libxerces-c-dev libssl-dev cmake clang-5.0
CLANG6:
ConfigOpts: --compiler=clang++-6.0 --security
PackageDeps: libxerces-c-dev libssl-dev cmake clang-6.0
CLANG9:
ConfigOpts: --compiler=clang++-9 --security
PackageDeps: libxerces-c-dev libssl-dev cmake clang-9
Repo: llvm-toolchain-$(lsb_release -cs)-9
GCC6_CPP03:
ConfigOpts: --compiler=g++-6 --std=c++03
PackageDeps: g++-6
GCC6:
ConfigOpts: --compiler=g++-6 --xerces --features=uses_wchar=1 --no-debug
PackageDeps: libxerces-c-dev g++-6
GCC9:
ConfigOpts: --compiler=g++-9 --no-inline
PackageDeps: g++-9
steps:
- script: |
set -e
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
sudo apt-add-repository "deb http://apt.llvm.org/$(lsb_release -cs)/ $(Repo) main"
displayName: Add repository ($(Repo))
condition: and(succeeded(), ne(variables['Repo'], ''))
- script: |
set -e
sudo apt-get --yes update
sudo apt-get --yes install $(PackageDeps)
displayName: Install system packages
condition: and(succeeded(), ne(variables['PackageDeps'], ''))
- script: |
set -e
./configure -v --mpcopts="-workers 4" --ace-github-latest --tests $(ConfigOpts)
tools/scripts/show_build_config.pl
displayName: Run configure script
- script: make -sj6
displayName: Compile
- script: |
set -e
source $(Build.SourcesDirectory)/setenv.sh
$DDS_ROOT/tests/cmake_integration/run_ci_tests.pl
displayName: Compile and run CMake tests
condition: >
and(succeeded(),
not(contains(variables['ConfigOpts'], '--safety-profile')),
not(contains(variables['ConfigOpts'], '--no-ownership-profile')))
- script: |
set -e
source setenv.sh
cd DevGuideExamples/DCPS/Messenger
perl integration_run_test.pl
condition: eq(variables['TEST_MESSENGER'], 'true')
displayName: Run Examples DCPS Messenger
- script: |
set -e
source setenv.sh
cd tests/DCPS/Messenger
perl run_test.pl rtps
condition: eq(variables['TEST_MESSENGER'], 'true')
displayName: Run DCPS Messenger Test
- script: |
set -e
# Make sure install using DESTDIR is also working
export DESTDIR=$(realpath install_temp)
export INSTALL_PREFIX=$(realpath install_prefix)
make install
cp -r $DESTDIR/$INSTALL_PREFIX .
cat << EOF > install_setenv.sh
export OPENDDS_INSTALL_PREFIX=$INSTALL_PREFIX
source \$OPENDDS_INSTALL_PREFIX/share/ace/ace-devel.sh
source \$OPENDDS_INSTALL_PREFIX/share/tao/tao-devel.sh
source \$OPENDDS_INSTALL_PREFIX/share/dds/dds-devel.sh
export PATH="\$OPENDDS_INSTALL_PREFIX/bin:\$PATH"
export LD_LIBRARY_PATH="\$OPENDDS_INSTALL_PREFIX/lib:\$LD_LIBRARY_PATH"
export MPC_ROOT=$(realpath ACE_TAO/ACE/MPC)
export PERL5LIB=$(realpath bin):$(realpath ACE_TAO/ACE/bin)
EOF
displayName: Install OpenDDS
condition: and(succeeded(), ne(variables['DoMakeInstall'], ''))
- script: |
set -e
source install_setenv.sh
cd tests/DCPS/Messenger
git clean -dfx .
$ACE_ROOT/bin/mwc.pl -type gnuace .
make
perl run_test.pl rtps
displayName: Build Messenger Using Installed OpenDDS and MPC
condition: and(succeeded(), ne(variables['DoMakeInstall'], ''))
- script: |
set -e
source install_setenv.sh
cd tests/cmake_integration/Messenger/Messenger_1
rm -fr build
mkdir build
cd build
cmake -DCMAKE_PREFIX_PATH=$OPENDDS_INSTALL_PREFIX ..
cmake --build .
perl run_test.pl rtps
displayName: Build Messenger Using Installed OpenDDS and CMake
condition: and(succeeded(), ne(variables['DoMakeInstall'], ''))
- job: macOS
timeoutInMinutes: 90
pool:
vmImage: macOS-latest
variables:
TEST_MESSENGER: false
strategy:
maxParallel: 2
matrix:
Debug:
ConfigOpts: --no-inline
TEST_MESSENGER: true
Release:
ConfigOpts: --no-debug --optimize
steps:
- script: |
./configure -v --ace-github-latest --tests $(ConfigOpts)
tools/scripts/show_build_config.pl
displayName: Run configure script
- script: make -sj6
displayName: Compile
- script: >
source $(Build.SourcesDirectory)/setenv.sh &&
$DDS_ROOT/tests/cmake_integration/run_ci_tests.pl
displayName: Compile and run CMake tests
- script: |
source setenv.sh
cd DevGuideExamples/DCPS/Messenger
perl integration_run_test.pl
condition: eq(variables['TEST_MESSENGER'], 'true')
displayName: Run Examples DCPS Messenger
- script: |
source setenv.sh
cd tests/DCPS/Messenger
perl run_test.pl all
condition: eq(variables['TEST_MESSENGER'], 'true')
displayName: Run DCPS Messenger Test
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化