Browse Source

run Linux build jobs with docker container

fix container reference
fixed GCC container job


fixed script PATH environment


removed sudo from container build step


check user in container


install missing sudo in container


fix script


add missing pip package installation


fix install package cmd


try to debug env in container


try fix pip errors


removed duplicated cmd


upgrade packages before install


run pip --upgrade now


don't upgrade pip


use official ubuntu container


fix pip install packages


fix apt package


add missing git


add build=missing


use ubuntu disco container


fix PATH in build step


add container clang build


build with clang 8.0


fixed clang profile


removed old clang job


added autotools


added libtool package


try fix clang build


set clang as CC and CXX
pull/1278/head
Silvio Kunaschk 6 years ago
parent
commit
d8233f58fb
2 changed files with 47 additions and 30 deletions
  1. +4
    -2
      .ci/conan_profile_linux_clang8
  2. +43
    -28
      azure-pipelines.yml

.ci/conan_profile_linux_clang6.0 → .ci/conan_profile_linux_clang8 View File

@@ -1,13 +1,15 @@
# this is a conan profile for Linux Clang 6.0
# this is a conan profile for Linux Clang 8
[settings]
os=Linux
os_build=Linux
arch=x86_64
arch_build=x86_64
compiler=clang
compiler.version=6.0
compiler.version=8
compiler.libcxx=libstdc++11
build_type=Release
[options]
[build_requires]
[env]
CC=clang
CXX=clang++

+ 43
- 28
azure-pipelines.yml View File

@@ -7,60 +7,75 @@ variables:
conan-pkg: "conan"
cpt-pkg: "conan_package_tools"
bpt-pkg: "bincrafters_package_tools"
linux-deps: "python3-setuptools python3-pip build-essential automake autoconf libtool cmake gcc g++ clang ninja-build git"
# Xcode Version overview: https://gist.github.com/yamaya/2924292
# available versions: https://github.com/Microsoft/azure-pipelines-image-generation/blob/master/images/macos/macos-10.14-Readme.md
XCODE_VERSION: 10.2
# https://docs.microsoft.com/en-us/azure/devops/pipelines/process/container-phases?view=azure-devops&tabs=yaml
jobs:
# Todo - run Linux build in a container with a more recent Ubuntu version, maybe also try CentOS and Arch builds?
# maybe also try CentOS and Arch builds?
- job: LinuxGCC
pool:
vmImage: Ubuntu-16.04
vmImage: 'ubuntu-16.04'
# add missing sudo to container - https://github.com/Microsoft/azure-pipelines-agent/issues/2043
container:
image: ubuntu:disco
options: "--name ci-container -v /usr/bin/docker:/tmp/docker:ro"
steps:
- task: UsePythonVersion@0
inputs:
versionSpec: $(python-version)
- script: |
export PATH="$PATH:/home/vsts/.local/bin"
sudo apt install -y python3-setuptools
pip install --user --upgrade pip
pip install --user $(conan-pkg)
pip install --user $(cpt-pkg) $(bpt-pkg)
/tmp/docker exec -t -u 0 ci-container \
sh -c "apt-get update && DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confold" -y install sudo"
displayName: install sudo in container
- script: |
export PATH="$PATH:$HOME/.local/bin"
sudo apt install -y $(linux-deps)
pip3 install --user $(conan-pkg)
pip3 install --user $(cpt-pkg) $(bpt-pkg)
conan user
conan remote add conan-community https://api.bintray.com/conan/conan-community/conan
conan remote add qno https://api.bintray.com/conan/qno/conan-public
conan remote add bincrafters https://api.bintray.com/conan/bincrafters/public-conan
displayName: setup dependencies
- script: |
export PATH="$PATH:$HOME/.local/bin"
pushd .
mkdir build && cd build
conan install .. -s compiler.libcxx=libstdc++11 -s build_type=Release
cmake -DCMAKE_BUILD_TYPE=Release ..
VERBOSE=1 make -j
conan install .. -s compiler.libcxx=libstdc++11 -s build_type=Release --build=missing
cmake -DCMAKE_BUILD_TYPE=Release -G Ninja ..
ninja -v
displayName: build VCVRack
- job: LinuxClang
pool:
vmImage: Ubuntu-16.04
vmImage: 'ubuntu-16.04'
container:
image: ubuntu:disco
options: "--name ci-container -v /usr/bin/docker:/tmp/docker:ro"
steps:
- task: UsePythonVersion@0
inputs:
versionSpec: $(python-version)
- script: |
export PATH="$PATH:/home/vsts/.local/bin"
export CC=clang-6.0
export CXX=clang++-6.0
sudo apt install -y python3-setuptools
pip install --user --upgrade pip
pip install --user $(conan-pkg)
pip install --user $(cpt-pkg) $(bpt-pkg)
/tmp/docker exec -t -u 0 ci-container \
sh -c "apt-get update && DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confold" -y install sudo"
displayName: install sudo in container
- script: |
export PATH="$PATH:$HOME/.local/bin"
sudo apt install -y $(linux-deps)
pip3 install --user $(conan-pkg)
pip3 install --user $(cpt-pkg) $(bpt-pkg)
conan user
conan remote add conan-community https://api.bintray.com/conan/conan-community/conan
conan remote add qno https://api.bintray.com/conan/qno/conan-public
conan remote add bincrafters https://api.bintray.com/conan/bincrafters/public-conan
displayName: setup dependencies
- script: |
export PATH="$PATH:$HOME/.local/bin"
export CC=clang
export CXX=clang++
pushd .
mkdir build && cd build
conan install .. -s build_type=Release --profile ../.ci/conan_profile_linux_clang6.0 --build=missing
cmake -DCMAKE_BUILD_TYPE=Release ..
VERBOSE=1 make -j
conan install .. -s build_type=Release --profile ../.ci/conan_profile_linux_clang8 --build=missing
cmake -DCMAKE_BUILD_TYPE=Release -G Ninja ..
ninja -v
displayName: build VCVRack
- job: MacOS1014
pool:
@@ -71,7 +86,7 @@ jobs:
versionSpec: $(python-version)
- script: |
/bin/bash -c "sudo xcode-select -s /Applications/Xcode_$(XCODE_VERSION).app/Contents/Developer"
export PATH=$PATH:$HOME/.local/bin
export PATH="$HOME/.local/bin:$PATH"
pip install --upgrade pip
brew update || brew update
brew install autoconf automake libtool pkg-config


Loading…
Cancel
Save