mirror of
https://github.com/atom/atom.git
synced 2026-01-25 23:08:18 -05:00
56 lines
1.8 KiB
YAML
56 lines
1.8 KiB
YAML
phases:
|
|
- phase: macOS
|
|
dependsOn: GetReleaseVersion
|
|
variables:
|
|
ReleaseVersion: $[ dependencies.GetReleaseVersion.outputs['Version.ReleaseVersion'] ]
|
|
queue:
|
|
name: Hosted macOS Preview
|
|
timeoutInMinutes: 180
|
|
|
|
steps:
|
|
- task: NodeTool@0
|
|
inputs:
|
|
versionSpec: 8.9.3
|
|
displayName: Install Node.js 8.9.3
|
|
|
|
- script: |
|
|
script/build --code-sign --compress-artifacts
|
|
displayName: Build Atom
|
|
env:
|
|
ATOM_RELEASE_VERSION: $(ReleaseVersion)
|
|
ATOM_MAC_CODE_SIGNING_CERT_DOWNLOAD_URL: $(ATOM_MAC_CODE_SIGNING_CERT_DOWNLOAD_URL)
|
|
ATOM_MAC_CODE_SIGNING_CERT_PASSWORD: $(ATOM_MAC_CODE_SIGNING_CERT_PASSWORD)
|
|
ATOM_MAC_CODE_SIGNING_KEYCHAIN: $(ATOM_MAC_CODE_SIGNING_KEYCHAIN)
|
|
ATOM_MAC_CODE_SIGNING_KEYCHAIN_PASSWORD: $(ATOM_MAC_CODE_SIGNING_KEYCHAIN_PASSWORD)
|
|
|
|
- script: script/lint
|
|
displayName: Run linter
|
|
|
|
- script: |
|
|
osascript -e 'tell application "System Events" to keystroke "x"' # clear screen saver
|
|
caffeinate -s script/test # Run with caffeinate to prevent screen saver
|
|
env:
|
|
CI: true
|
|
CI_PROVIDER: VSTS
|
|
displayName: Run tests
|
|
|
|
# This step is necessary in the short term due to a bug in the *NIX
|
|
# implementation of the CopyFiles task which scans the entire file
|
|
# system structure just to resolve the glob pattern.
|
|
- script: rm -rf $(Build.SourcesDirectory)/out/*/
|
|
displayName: Delete Intermediate Output
|
|
|
|
- task: CopyFiles@2
|
|
inputs:
|
|
sourceFolder: $(Build.SourcesDirectory)/out
|
|
contents: '*.zip'
|
|
targetFolder: $(Build.ArtifactStagingDirectory)
|
|
displayName: Stage Artifacts
|
|
|
|
- task: PublishBuildArtifacts@1
|
|
inputs:
|
|
PathtoPublish: $(Build.ArtifactStagingDirectory)
|
|
ArtifactName: Binaries
|
|
ArtifactType: Container
|
|
displayName: Upload Artifacts
|