deployments for choco and snap
This commit is contained in:
parent
87f7ad680a
commit
41c522e108
92
appveyor.yml
92
appveyor.yml
|
@ -1,5 +1,6 @@
|
|||
image:
|
||||
- Visual Studio 2017
|
||||
#- Ubuntu1804
|
||||
|
||||
branches:
|
||||
except:
|
||||
|
@ -8,34 +9,59 @@ branches:
|
|||
environment:
|
||||
WIN_PKG: C:\Users\appveyor\.pkg-cache\v2.5\fetched-v10.4.1-win-x64
|
||||
|
||||
stack: node 10
|
||||
|
||||
init:
|
||||
- ps: |
|
||||
if($env:DEBUG_RDP -eq "true") {
|
||||
if($isWindows -and $env:DEBUG_RDP -eq "true") {
|
||||
iex ((new-object net.webclient).DownloadString(`
|
||||
'https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
|
||||
}
|
||||
- ps: Install-Product node 10
|
||||
- ps: |
|
||||
if($isWindows) {
|
||||
Install-Product node 10
|
||||
$env:PATH = "C:\Program Files (x86)\Resource Hacker;${env:PATH}"
|
||||
if(Test-Path -Path $env:WIN_PKG) {
|
||||
$env:VER_INFO = "true"
|
||||
}
|
||||
}
|
||||
if($env:APPVEYOR_REPO_TAG -eq "true") {
|
||||
$tagName = $env:APPVEYOR_REPO_TAG_NAME.TrimStart("v")
|
||||
$env:RELEASE_NAME = "Version ${tagName}"
|
||||
}
|
||||
|
||||
install:
|
||||
- ps: $env:PACKAGE_VERSION = (Get-Content -Raw -Path .\package.json | ConvertFrom-Json).version
|
||||
- ps: choco install reshack --no-progress
|
||||
- ps: choco install cloc --no-progress
|
||||
- ps: choco install checksum --no-progress
|
||||
- ps: cloc --include-lang TypeScript,JavaScript --vcs git
|
||||
- ps: .\scripts\make-versioninfo.ps1
|
||||
- ps: |
|
||||
$env:PACKAGE_VERSION = (Get-Content -Raw -Path .\package.json | ConvertFrom-Json).version
|
||||
$env:PROD_DEPLOY = "false"
|
||||
if($env:APPVEYOR_REPO_TAG -eq "true" -and $env:APPVEYOR_RE_BUILD -eq "True") {
|
||||
$env:PROD_DEPLOY = "true"
|
||||
echo "This is a production deployment."
|
||||
}
|
||||
- ps: |
|
||||
if($isWindows) {
|
||||
choco install reshack --no-progress
|
||||
choco install cloc --no-progress
|
||||
choco install checksum --no-progress
|
||||
cloc --include-lang TypeScript,JavaScript --vcs git
|
||||
.\scripts\make-versioninfo.ps1
|
||||
}
|
||||
|
||||
before_build:
|
||||
- cmd: node --version
|
||||
- cmd: npm --version
|
||||
- node --version
|
||||
- npm --version
|
||||
# Get new $SNAP_TOKEN with:
|
||||
# $ snapcraft export-login --snaps bw --acls package_push,package_release -
|
||||
- sh: |
|
||||
if [ "${SNAP_TOKEN}" != "" -a "${PROD_DEPLOY}" == "true" ]
|
||||
then
|
||||
sudo snap install snapcraft --classic
|
||||
echo "$SNAP_TOKEN" | snapcraft login --with -
|
||||
fi
|
||||
- ps: |
|
||||
if($isWindows -and $env:CHOCO_API_KEY -ne $null -and $env:PROD_DEPLOY -eq "true") {
|
||||
choco apikey --key $env:CHOCO_API_KEY --source https://push.chocolatey.org/
|
||||
}
|
||||
|
||||
build_script:
|
||||
- cmd: |
|
||||
|
@ -47,8 +73,9 @@ build_script:
|
|||
- cmd: 7z a ./dist/bw-windows-%PACKAGE_VERSION%.zip ./dist/windows/bw.exe
|
||||
- cmd: 7z a ./dist/bw-macos-%PACKAGE_VERSION%.zip ./dist/macos/bw
|
||||
- cmd: 7z a ./dist/bw-linux-%PACKAGE_VERSION%.zip ./dist/linux/bw
|
||||
- ps: .\scripts\choco-pack.ps1
|
||||
- ps: |
|
||||
if($isWindows) {
|
||||
.\scripts\choco-pack.ps1
|
||||
checksum -f="./dist/bw-windows-${env:PACKAGE_VERSION}.zip" `
|
||||
-t sha256 | Out-File ./dist/bw-windows-sha256-${env:PACKAGE_VERSION}.txt
|
||||
checksum -f="./dist/bw-macos-${env:PACKAGE_VERSION}.zip" `
|
||||
|
@ -56,6 +83,34 @@ build_script:
|
|||
checksum -f="./dist/bw-linux-${env:PACKAGE_VERSION}.zip" `
|
||||
-t sha256 | Out-File ./dist/bw-linux-sha256-${env:PACKAGE_VERSION}.txt
|
||||
|
||||
Push-AppveyorArtifact .\dist\bw-windows-${env:PACKAGE_VERSION}.zip
|
||||
Push-AppveyorArtifact .\dist\bw-mac-${env:PACKAGE_VERSION}.zip
|
||||
Push-AppveyorArtifact .\dist\bw-linux-${env:PACKAGE_VERSION}.zip
|
||||
Push-AppveyorArtifact .\dist\bw-windows-sha256-${env:PACKAGE_VERSION}.txt
|
||||
Push-AppveyorArtifact .\dist\bw-mac-sha256-${env:PACKAGE_VERSION}.txt
|
||||
Push-AppveyorArtifact .\dist\bw-linux-sha256-${env:PACKAGE_VERSION}.txt
|
||||
Push-AppveyorArtifact .\dist\chocolatey\bitwarden-cli.${env:PACKAGE_VERSION}.nupkg
|
||||
}
|
||||
|
||||
after_build:
|
||||
- ps: |
|
||||
if($env:PROD_DEPLOY -eq "true") {
|
||||
if($isLinux) {
|
||||
echo "Deploy Linux..."
|
||||
./scripts/snap-build.ps1 -version $env:PACKAGE_VERSION
|
||||
./scripts/snap-update.ps1
|
||||
}
|
||||
else {
|
||||
echo "Deploy Windows..."
|
||||
.\scripts\choco-update.ps1 -version $env:PACKAGE_VERSION
|
||||
}
|
||||
}
|
||||
- sh: |
|
||||
if [ "${SNAP_TOKEN}" != "" -a "${PROD_DEPLOY}" == "true" ]
|
||||
then
|
||||
snapcraft logout
|
||||
fi
|
||||
|
||||
on_finish:
|
||||
- ps: |
|
||||
if($env:DEBUG_RDP -eq "true") {
|
||||
|
@ -64,15 +119,11 @@ on_finish:
|
|||
'https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
|
||||
}
|
||||
|
||||
artifacts:
|
||||
- path: dist/bw-windows-%PACKAGE_VERSION%.zip
|
||||
- path: dist/bw-macos-%PACKAGE_VERSION%.zip
|
||||
- path: dist/bw-linux-%PACKAGE_VERSION%.zip
|
||||
- path: dist/bw-windows-sha256-%PACKAGE_VERSION%.txt
|
||||
- path: dist/bw-macos-sha256-%PACKAGE_VERSION%.txt
|
||||
- path: dist/bw-linux-sha256-%PACKAGE_VERSION%.txt
|
||||
- path: dist/chocolatey/bitwarden-cli.%PACKAGE_VERSION%.nupkg
|
||||
|
||||
for:
|
||||
-
|
||||
matrix:
|
||||
only:
|
||||
- image: Visual Studio 2017
|
||||
cache:
|
||||
- 'C:\Users\appveyor\.pkg-cache\ -> package.json'
|
||||
|
||||
|
@ -86,3 +137,4 @@ deploy:
|
|||
on:
|
||||
branch: master
|
||||
APPVEYOR_REPO_TAG: true
|
||||
PROD_DEPLOY: false
|
||||
|
|
Loading…
Reference in New Issue