default.build.ps1 (25 lines of code) (raw):
Set-StrictMode -Version 'Latest'
#$nameOfApp = 'saml2alibabacloud'
$version = ${env:APPVEYOR_REPO_TAG_NAME}.Split('v')[1]
task 'Compile Go libraries...' {
$ErrorActionPreference = 'Continue'
go build -o "bin/${env:appName}.exe" -ldflags "-X main.Version=${version}" "./cmd/$env:appName"
}
task 'Prepare for choco stuff...' {
mkdir ./choco/src
copy-item "./bin/${env:appName}.exe" "./choco/src/${env:appName}.exe"
Copy-Item "./LICENSE.md" "./choco/src/LICENSE.md"
Copy-Item "./choco/VERIFICATION.txt" "./choco/src/VERIFICATION.txt"
}
task 'Pack Choco...' {
Set-Location choco
choco pack --version "$version" "${env:appName}.nuspec"
$hash = Get-FileHash "${env:appName}.${version}.nupkg"
"$($hash.Hash) $(Split-Path $hash.Path -Leaf)" > "${env:appName}.${version}.nupkg.sha256"
}
task 'Zip for GH release...' {
7z a "${env:appName}.zip" "$env:APPVEYOR_BUILD_FOLDER\bin\${env:appName}.exe"
$hash = Get-FileHash "${env:appName}.zip"
"$($hash.Hash) $(Split-Path $hash.Path -Leaf)" > "${env:appName}.zip.sha256"
}
task . 'Compile Go libraries...', 'Prepare for choco stuff...', 'Pack Choco...', 'Zip for GH release...'