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')