mirror of
https://github.com/dfinke/ImportExcel.git
synced 2025-12-06 00:23:20 +00:00
150 lines
4.2 KiB
YAML
150 lines
4.2 KiB
YAML
# Starter pipeline
|
|
# Start with a minimal pipeline that you can customize to build and deploy your code.
|
|
# Add steps that build, run tests, deploy, and more:
|
|
# https://aka.ms/yaml
|
|
|
|
trigger:
|
|
branches:
|
|
include:
|
|
- '*'
|
|
# - master
|
|
# - releases/*
|
|
paths:
|
|
exclude:
|
|
- README.md
|
|
- CHANGELOG.md
|
|
|
|
jobs:
|
|
- job: Windows
|
|
pool:
|
|
vmImage: 'windows-latest'
|
|
|
|
steps:
|
|
|
|
# BEGIN - ACE support for Invoke-ExcelQuery testing
|
|
- task: Cache@2
|
|
inputs:
|
|
key: v2 | "$(Agent.OS)" | ace
|
|
path: ace
|
|
cacheHitVar: CACHE_RESTORED
|
|
displayName: Cache ACE
|
|
|
|
- bash: |
|
|
mkdir ./ace
|
|
curl -o ./ace/ace.exe https://download.microsoft.com/download/3/5/C/35C84C36-661A-44E6-9324-8786B8DBE231/accessdatabaseengine_X64.exe
|
|
displayName: 'Download ACE'
|
|
condition: ne(variables.CACHE_RESTORED, 'true')
|
|
|
|
- powershell: Start-Process ./ace/ace.exe -Wait -ArgumentList "/quiet /passive /norestart"
|
|
displayName: 'Install ACE for Invoke-ExcelQuery testing'
|
|
# END - ACE support for Invoke-ExcelQuery testing
|
|
|
|
- powershell: 'Install-Module -Name Pester -Force -SkipPublisherCheck'
|
|
displayName: 'Update Pester'
|
|
- powershell: './CI/CI.ps1 -Test'
|
|
displayName: 'Install and Test'
|
|
|
|
- task: PublishTestResults@2
|
|
inputs:
|
|
testResultsFormat: 'NUnit'
|
|
testResultsFiles: '**/TestResults*.xml'
|
|
failTaskOnFailedTests: true
|
|
|
|
- powershell: './CI/CI.ps1 -Artifact'
|
|
displayName: 'Prepare Artifact'
|
|
- task: PublishPipelineArtifact@1
|
|
inputs:
|
|
targetPath: '$(Build.ArtifactStagingDirectory)'
|
|
artifact: 'Modules'
|
|
- powershell: './CI/CI.ps1 -Analyzer'
|
|
displayName: 'Invoke ScriptAnalyzer'
|
|
- task: PublishPipelineArtifact@1
|
|
inputs:
|
|
targetPath: '$(Build.SourcesDirectory)'
|
|
artifact: 'Source'
|
|
|
|
- job: WindowsPSCore
|
|
pool:
|
|
vmImage: 'windows-latest'
|
|
|
|
steps:
|
|
|
|
# BEGIN - ACE support for Invoke-ExcelQuery testing
|
|
- task: Cache@2
|
|
inputs:
|
|
key: v2 | "$(Agent.OS)" | ace
|
|
path: ace
|
|
cacheHitVar: CACHE_RESTORED
|
|
displayName: Cache ACE
|
|
|
|
- bash: |
|
|
mkdir ./ace
|
|
curl -o ./ace/ace.exe https://download.microsoft.com/download/3/5/C/35C84C36-661A-44E6-9324-8786B8DBE231/accessdatabaseengine_X64.exe
|
|
displayName: 'Download ACE'
|
|
condition: ne(variables.CACHE_RESTORED, 'true')
|
|
|
|
- powershell: Start-Process ./ace/ace.exe -Wait -ArgumentList "/quiet /passive /norestart"
|
|
displayName: 'Install ACE for Invoke-ExcelQuery testing'
|
|
# END - ACE support for Invoke-ExcelQuery testing
|
|
|
|
- pwsh: 'Install-Module -Name Pester -Force'
|
|
displayName: 'Update Pester'
|
|
- pwsh: './CI/CI.ps1 -Test'
|
|
displayName: 'Install and Test'
|
|
|
|
- task: PublishTestResults@2
|
|
inputs:
|
|
testResultsFormat: 'NUnit'
|
|
testResultsFiles: '**/TestResults*.xml'
|
|
failTaskOnFailedTests: true
|
|
|
|
- job: Ubuntu
|
|
pool:
|
|
vmImage: 'ubuntu-latest'
|
|
|
|
steps:
|
|
- powershell: 'Install-Module -Name Pester -Force'
|
|
displayName: 'Update Pester'
|
|
- powershell: './CI/CI.ps1 -Test'
|
|
displayName: 'Install and Test'
|
|
|
|
- task: PublishTestResults@2
|
|
inputs:
|
|
testResultsFormat: 'NUnit'
|
|
testResultsFiles: '**/TestResults*.xml'
|
|
failTaskOnFailedTests: true
|
|
|
|
- job: macOS
|
|
pool:
|
|
vmImage: 'macOS-latest'
|
|
|
|
steps:
|
|
- script: brew install mono-libgdiplus
|
|
displayName: 'Install mono-libgdiplus'
|
|
- powershell: 'Install-Module -Name Pester -Force'
|
|
displayName: 'Update Pester'
|
|
- powershell: './CI/CI.ps1 -Test'
|
|
displayName: 'Install and Test'
|
|
|
|
- task: PublishTestResults@2
|
|
inputs:
|
|
testResultsFormat: 'NUnit'
|
|
testResultsFiles: '**/TestResults*.xml'
|
|
failTaskOnFailedTests: true
|
|
|
|
- job: macOSNoDeps
|
|
pool:
|
|
vmImage: 'macOS-latest'
|
|
|
|
steps:
|
|
- powershell: 'Install-Module -Name Pester -Force'
|
|
displayName: 'Update Pester'
|
|
- powershell: './CI/CI.ps1 -TestImportOnly'
|
|
displayName: 'Install and Test Import Only'
|
|
|
|
- task: PublishTestResults@2
|
|
inputs:
|
|
testResultsFormat: 'NUnit'
|
|
testResultsFiles: '**/TestResults*.xml'
|
|
failTaskOnFailedTests: true
|