#---------------------------------# # environment configuration # #---------------------------------# version: 2.1.{build}.0 install: - git clone https://github.com/PowerShell/DscResource.Tests - ps: Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force - ps: Install-Module -Name Pester -Repository PSGallery -Force #---------------------------------# # build configuration # #---------------------------------# build: false #---------------------------------# # test configuration # #---------------------------------# test_script: - ps: | $testResultsFile = ".\TestsResults.xml" $res = Invoke-Pester -OutputFormat NUnitXml -OutputFile $testResultsFile -PassThru (New-Object 'System.Net.WebClient').UploadFile("https://ci.appveyor.com/api/testresults/nunit/$($env:APPVEYOR_JOB_ID)", (Resolve-Path $testResultsFile)) if ($res.FailedCount -gt 0) { throw "$($res.FailedCount) tests failed." } #---------------------------------# # deployment configuration # #---------------------------------# # scripts to run before deployment deploy_script: - ps: | # Creating project artifact $stagingDirectory = (Resolve-Path ..).Path $manifest = Join-Path $pwd "PSDscResources.psd1" (Get-Content $manifest -Raw).Replace("2.1.0.0", $env:APPVEYOR_BUILD_VERSION) | Out-File $manifest $zipFilePath = Join-Path $stagingDirectory "$(Split-Path $pwd -Leaf).zip" Add-Type -assemblyname System.IO.Compression.FileSystem [System.IO.Compression.ZipFile]::CreateFromDirectory($pwd, $zipFilePath) # Creating NuGet package artifact New-Nuspec -packageName $env:APPVEYOR_PROJECT_NAME -version $env:APPVEYOR_BUILD_VERSION -author "Microsoft" -owners "Microsoft" -licenseUrl "https://github.com/PowerShell/DscResources/blob/master/LICENSE" -projectUrl "https://github.com/$($env:APPVEYOR_REPO_NAME)" -packageDescription $env:APPVEYOR_PROJECT_NAME -tags "DesiredStateConfiguration DSC DSCResourceKit" -destinationPath . nuget pack ".\$($env:APPVEYOR_PROJECT_NAME).nuspec" -outputdirectory . $nuGetPackageName = $env:APPVEYOR_PROJECT_NAME + "." + $env:APPVEYOR_BUILD_VERSION + ".nupkg" $nuGetPackagePath = (Get-ChildItem $nuGetPackageName).FullName @( # You can add other artifacts here $zipFilePath, $nuGetPackagePath ) | % { Write-Host "Pushing package $_ as Appveyor artifact" Push-AppveyorArtifact $_ }