mirror of
https://github.com/Eugeny/tabby.git
synced 2024-12-15 06:30:13 +08:00
203 lines
5.1 KiB
YAML
203 lines
5.1 KiB
YAML
trigger:
|
|
- master
|
|
|
|
variables:
|
|
- group: Vars
|
|
|
|
jobs:
|
|
- job: Windows
|
|
pool:
|
|
vmImage: 'vs2017-win2016'
|
|
|
|
steps:
|
|
- task: NodeTool@0
|
|
inputs:
|
|
versionSpec: '10.x'
|
|
displayName: 'Install Node.js'
|
|
|
|
- script: yarn --network-timeout 100000
|
|
displayName: 'Install dependencies'
|
|
|
|
- script: node scripts/build-native.js
|
|
displayName: 'Rebuild native dependencies'
|
|
|
|
- script: yarn run build
|
|
displayName: 'Build'
|
|
|
|
- script: node scripts/prepackage-plugins.js
|
|
displayName: 'Prepackage plugins'
|
|
|
|
- script: node scripts/build-windows.js
|
|
displayName: 'Package'
|
|
env:
|
|
WIN_CSC_LINK: $(WIN_CSC_LINK)
|
|
WIN_CSC_KEY_PASSWORD: $(WIN_CSC_KEY_PASSWORD)
|
|
BT_TOKEN: $(BT_TOKEN)
|
|
GH_TOKEN: $(GH_TOKEN)
|
|
DEBUG: electron-builder
|
|
|
|
- task: CopyFiles@2
|
|
inputs:
|
|
contents: 'dist\\*-setup.exe'
|
|
targetFolder: $(Build.ArtifactStagingDirectory)
|
|
flattenFolders: true
|
|
cleanTargetFolder: true
|
|
|
|
- task: PublishBuildArtifacts@1
|
|
inputs:
|
|
pathtoPublish: $(Build.ArtifactStagingDirectory)
|
|
artifactName: Windows - Installer
|
|
condition: eq(variables['Build.SourceBranch'], 'refs/heads/master')
|
|
|
|
- task: CopyFiles@2
|
|
inputs:
|
|
contents: 'dist\\*-portable.exe'
|
|
targetFolder: $(Build.ArtifactStagingDirectory)
|
|
flattenFolders: true
|
|
cleanTargetFolder: true
|
|
|
|
- task: PublishBuildArtifacts@1
|
|
inputs:
|
|
pathtoPublish: $(Build.ArtifactStagingDirectory)
|
|
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
|
|
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
|
|
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)
|
|
APPSTORE_USERNAME: $(APPSTORE_USERNAME)
|
|
APPSTORE_PASSWORD: $(APPSTORE_PASSWORD)
|
|
DEBUG: electron-builder
|
|
|
|
- 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')
|