Update azure-pipelines.yml

This commit is contained in:
Eugene Pankov 2019-06-27 06:42:54 +02:00
parent 84503a87c2
commit d5d2341e69

View File

@ -4,58 +4,203 @@ trigger:
variables: variables:
- group: Vars - group: Vars
pool: - job: Windows
vmImage: 'vs2017-win2016' pool:
vmImage: 'vs2017-win2016'
steps: steps:
- task: NodeTool@0 - task: NodeTool@0
inputs: inputs:
versionSpec: '10.x' versionSpec: '10.x'
displayName: 'Install Node.js' displayName: 'Install Node.js'
- script: yarn - script: yarn
displayName: 'Install dependencies' displayName: 'Install dependencies'
- script: node scripts/build-native.js - script: node scripts/build-native.js
displayName: 'Rebuild native dependencies' displayName: 'Rebuild native dependencies'
- script: yarn run build:typings - script: yarn run build:typings
displayName: 'Build typings' displayName: 'Build typings'
- script: yarn run build - script: yarn run build
displayName: 'Build' displayName: 'Build'
- script: node scripts/prepackage-plugins.js - script: node scripts/prepackage-plugins.js
displayName: 'Prepackage plugins' displayName: 'Prepackage plugins'
- script: node scripts/build-windows.js - script: node scripts/build-windows.js
displayName: 'Package' displayName: 'Package'
env: env:
WIN_CSC_LINK: $(WIN_CSC_LINK) WIN_CSC_LINK: $(WIN_CSC_LINK)
WIN_CSC_KEY_PASSWORD: $(WIN_CSC_KEY_PASSWORD) WIN_CSC_KEY_PASSWORD: $(WIN_CSC_KEY_PASSWORD)
BT_TOKEN: $(BT_TOKEN) BT_TOKEN: $(BT_TOKEN)
GH_TOKEN: $(GH_TOKEN) GH_TOKEN: $(GH_TOKEN)
- task: CopyFiles@2 - task: CopyFiles@2
inputs: inputs:
contents: 'dist\\*-setup.exe' contents: 'dist\\*-setup.exe'
targetFolder: $(Build.ArtifactStagingDirectory) targetFolder: $(Build.ArtifactStagingDirectory)
flattenFolders: true flattenFolders: true
cleanTargetFolder: true cleanTargetFolder: true
- task: PublishBuildArtifacts@1 - task: PublishBuildArtifacts@1
inputs: inputs:
pathtoPublish: $(Build.ArtifactStagingDirectory) pathtoPublish: $(Build.ArtifactStagingDirectory)
artifactName: Windows - Installer artifactName: Windows - Installer
condition: eq(variables['Build.SourceBranch'], 'refs/heads/master')
- task: CopyFiles@2 - task: CopyFiles@2
inputs: inputs:
contents: 'dist\\*-portable.exe' contents: 'dist\\*-portable.exe'
targetFolder: $(Build.ArtifactStagingDirectory) targetFolder: $(Build.ArtifactStagingDirectory)
flattenFolders: true flattenFolders: true
cleanTargetFolder: true cleanTargetFolder: true
- task: PublishBuildArtifacts@1 - task: PublishBuildArtifacts@1
inputs: inputs:
pathtoPublish: $(Build.ArtifactStagingDirectory) pathtoPublish: $(Build.ArtifactStagingDirectory)
artifactName: Windows - Portable build artifactName: Windows - Portable build
condition: eq(variables['Build.SourceBranch'], 'refs/heads/master')
- job: Linux
pool:
vmImage: 'ubuntu-16.04'
steps:
- task: NodeTool@0
inputs:
versionSpec: '10.x'
displayName: 'Install Node.js'
- script: yarn
displayName: 'Install dependencies'
- script: node scripts/build-native.js
displayName: 'Rebuild native dependencies'
- script: yarn run build:typings
displayName: 'Build typings'
- script: yarn run build
displayName: 'Build'
- script: node scripts/prepackage-plugins.js
displayName: 'Prepackage plugins'
- script: node scripts/build-linux.js
displayName: 'Package'
env:
BT_TOKEN: $(BT_TOKEN)
GH_TOKEN: $(GH_TOKEN)
- task: CopyFiles@2
inputs:
contents: 'dist\\*.deb'
targetFolder: $(Build.ArtifactStagingDirectory)
flattenFolders: true
cleanTargetFolder: true
- task: PublishBuildArtifacts@1
inputs:
pathtoPublish: $(Build.ArtifactStagingDirectory)
artifactName: Linux - DEB
condition: eq(variables['Build.SourceBranch'], 'refs/heads/master')
- task: CopyFiles@2
inputs:
contents: 'dist\\*.rpm'
targetFolder: $(Build.ArtifactStagingDirectory)
flattenFolders: true
cleanTargetFolder: true
- task: PublishBuildArtifacts@1
inputs:
pathtoPublish: $(Build.ArtifactStagingDirectory)
artifactName: Linux - RPM
condition: eq(variables['Build.SourceBranch'], 'refs/heads/master')
- task: CopyFiles@2
inputs:
contents: 'dist\\*.snap'
targetFolder: $(Build.ArtifactStagingDirectory)
flattenFolders: true
cleanTargetFolder: true
- task: PublishBuildArtifacts@1
inputs:
pathtoPublish: $(Build.ArtifactStagingDirectory)
artifactName: Linux - Snap
condition: eq(variables['Build.SourceBranch'], 'refs/heads/master')
- task: CopyFiles@2
inputs:
contents: 'dist\\*.tar.gz'
targetFolder: $(Build.ArtifactStagingDirectory)
flattenFolders: true
cleanTargetFolder: true
- task: PublishBuildArtifacts@1
inputs:
pathtoPublish: $(Build.ArtifactStagingDirectory)
artifactName: Linux - tar.gz
condition: eq(variables['Build.SourceBranch'], 'refs/heads/master')
- job: macOS
pool:
vmImage: 'macOS-10.14'
steps:
- task: NodeTool@0
inputs:
versionSpec: '10.x'
displayName: 'Install Node.js'
- script: yarn
displayName: 'Install dependencies'
- script: node scripts/build-native.js
displayName: 'Rebuild native dependencies'
- script: yarn run build:typings
displayName: 'Build typings'
- script: yarn run build
displayName: 'Build'
- script: node scripts/prepackage-plugins.js
displayName: 'Prepackage plugins'
- script: node scripts/build-macos.js
displayName: 'Package'
env:
CSC_LINK: $(CSC_LINK)
CSC_KEY_PASSWORD: $(CSC_KEY_PASSWORD)
BT_TOKEN: $(BT_TOKEN)
GH_TOKEN: $(GH_TOKEN)
- task: CopyFiles@2
inputs:
contents: 'dist\\*.dmg'
targetFolder: $(Build.ArtifactStagingDirectory)
flattenFolders: true
cleanTargetFolder: true
- task: PublishBuildArtifacts@1
inputs:
pathtoPublish: $(Build.ArtifactStagingDirectory)
artifactName: macOS - DMG
condition: eq(variables['Build.SourceBranch'], 'refs/heads/master')
- task: CopyFiles@2
inputs:
contents: 'dist\\*.zip'
targetFolder: $(Build.ArtifactStagingDirectory)
flattenFolders: true
cleanTargetFolder: true
- task: PublishBuildArtifacts@1
inputs:
pathtoPublish: $(Build.ArtifactStagingDirectory)
artifactName: macOS - app.zip
condition: eq(variables['Build.SourceBranch'], 'refs/heads/master')