Files
allwpilib/azure-pipelines.yml
Tyler Veness f432f65bef Update copyright year in license to 2019 (#1524)
Also update clang-format to 6.0.
2019-05-17 17:35:09 -07:00

191 lines
5.4 KiB
YAML

# Gradle
# Build your Java projects and run tests with Gradle using a Gradle wrapper script.
# Add steps that analyze code, save build artifacts, deploy, and more:
# https://docs.microsoft.com/vsts/pipelines/languages/java
resources:
containers:
- container: wpilib2019
image: wpilib/roborio-cross-ubuntu:2019-18.04
- container: raspbian
image: wpilib/raspbian-cross-ubuntu:18.04
- container: ubuntu18
image: ubuntu:18.04
options: "--name ci-container -v /usr/bin/docker:/tmp/docker:ro"
jobs:
- job: Linux_Arm
pool:
vmImage: 'Ubuntu 16.04'
container: wpilib2019
steps:
- task: Gradle@2
inputs:
workingDirectory: ''
gradleWrapperFile: 'gradlew'
gradleOptions: '-Xmx3072m'
publishJUnitResults: false
testResultsFiles: '**/TEST-*.xml'
tasks: 'build'
options: '-PonlyAthena'
# checkStyleRunAnalysis: true
# pmdRunAnalysis: true
- job: Linux_Raspbian
pool:
vmImage: 'Ubuntu 16.04'
container: raspbian
steps:
- task: Gradle@2
inputs:
workingDirectory: ''
gradleWrapperFile: 'gradlew'
gradleOptions: '-Xmx3072m'
publishJUnitResults: true
testResultsFiles: '**/TEST-*.xml'
tasks: 'build'
options: '-PonlyRaspbian'
# checkStyleRunAnalysis: true
# pmdRunAnalysis: true
- job: Linux
pool:
vmImage: 'Ubuntu 16.04'
container: wpilib2019
steps:
- task: Gradle@2
inputs:
workingDirectory: ''
gradleWrapperFile: 'gradlew'
gradleOptions: '-Xmx3072m'
publishJUnitResults: true
testResultsFiles: '**/TEST-*.xml'
tasks: 'build'
options: '-PskipAthena'
# checkStyleRunAnalysis: true
# pmdRunAnalysis: true
- job: Styleguide
pool:
vmImage: 'Ubuntu 16.04'
container: ubuntu18
steps:
- script: |
/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: Set up sudo
- script: |
sudo apt-get update -y
sudo apt-get install clang-format-6.0 python3-setuptools python3-pip git -y
sudo pip3 install wpiformat
git checkout -b master
displayName: 'Install Dependencies'
- script: |
wpiformat -clang 6.0
displayName: 'Run wpiformat'
- script: |
# Ensure formatter made no changes
git --no-pager diff --exit-code HEAD
displayName: 'Check wpiformat Output'
- job: CMakeBuild
pool:
vmImage: 'Ubuntu 16.04'
container: wpilib2019
steps:
- task: CMake@1
inputs:
cmakeArgs: '-DWITHOUT_ALLWPILIB=OFF ..'
- script: |
make -j3
workingDirectory: 'build'
displayName: 'Build'
- job: Windows_64_Bit
pool:
vmImage: 'vs2017-win2016'
steps:
- powershell: |
mkdir build
$ProgressPreference = 'SilentlyContinue'
wget "https://download.java.net/java/ga/jdk11/openjdk-11_windows-x64_bin.zip" -O "build\jdk.zip"
displayName: 'Download JDK'
- task: JavaToolInstaller@0
inputs:
jdkSourceOption: localDirectory
jdkFile: 'build/jdk.zip'
jdkDestinationDirectory: 'build/jdkinst'
jdkArchitectureOption: x64
- task: Gradle@2
inputs:
workingDirectory: ''
gradleWrapperFile: 'gradlew'
gradleOptions: '-Xmx3072m'
publishJUnitResults: true
testResultsFiles: '**/TEST-*.xml'
tasks: 'build'
# checkStyleRunAnalysis: true
# pmdRunAnalysis: true
- job: Windows_32_Bit
pool:
vmImage: 'vs2017-win2016'
steps:
- powershell: |
mkdir build
$ProgressPreference = 'SilentlyContinue'
wget "https://github.com/wpilibsuite/frc-openjdk-windows/releases/download/v11.0.0u28-1/jdk-x86-11.0.0u28-1.zip" -O "build\jdk.zip"
displayName: 'Download JDK'
- task: JavaToolInstaller@0
inputs:
jdkSourceOption: localDirectory
jdkFile: 'build/jdk.zip'
jdkDestinationDirectory: 'build/jdkinst'
jdkArchitectureOption: x86
- task: Gradle@2
inputs:
workingDirectory: ''
gradleWrapperFile: 'gradlew'
gradleOptions: '-Xmx1024m'
publishJUnitResults: true
testResultsFiles: '**/TEST-*.xml'
tasks: 'build'
# checkStyleRunAnalysis: true
# pmdRunAnalysis: true
- job: Mac
pool:
vmImage: 'xcode9-macos10.13'
steps:
- script: |
mkdir build
wget "https://download.java.net/java/ga/jdk11/openjdk-11_osx-x64_bin.tar.gz" -O "build/jdk.tar.gz"
sudo tar xvzf build/jdk.tar.gz -C /Library/Java/JavaVirtualMachines/
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home/
displayName: 'Setup JDK'
- script: |
rm /Users/vsts/.gradle/init.d/log-gradle-version-plugin.gradle
displayName: 'Delete Version init script'
- task: Gradle@2
inputs:
workingDirectory: ''
gradleWrapperFile: 'gradlew'
gradleOptions: '-Xmx3072m'
javaHomeOption: 'path'
jdkDirectory: '/Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home/'
publishJUnitResults: true
testResultsFiles: '**/TEST-*.xml'
tasks: 'build'
# checkStyleRunAnalysis: true
# pmdRunAnalysis: true