# 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: - task: Cache@2 inputs: key: ace restoreKeys: ace path: ace.exe cacheHitVar: CACHE_RESTORED displayName: Cache ACE - powershell: (New-Object system.data.oledb.oledbenumerator).GetElements().SOURCES_NAME displayName: 'Show data sources before ACE' - powershell: | $ProgressPreference = 'SilentlyContinue' $uri = 'https://download.microsoft.com/download/3/5/C/35C84C36-661A-44E6-9324-8786B8DBE231/accessdatabaseengine_X64.exe' irm $uri -outfile ace.exe $ProgressPreference = 'Continue' displayName: 'Download ACE' condition: ne(variables.CACHE_RESTORED, 'true') - powershell: Start-Process .\ace.exe -Wait -ArgumentList "/quiet /passive /norestart" displayName: 'Install ACE' - powershell: (New-Object system.data.oledb.oledbenumerator).GetElements().SOURCES_NAME displayName: 'Show data sources after ACE' # - 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: # - 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