mirror of
https://github.com/atom/atom.git
synced 2026-01-25 14:59:03 -05:00
58 lines
1.8 KiB
YAML
58 lines
1.8 KiB
YAML
phases:
|
|
- phase: Linux
|
|
dependsOn: GetReleaseVersion
|
|
variables:
|
|
ReleaseVersion: $[ dependencies.GetReleaseVersion.outputs['Version.ReleaseVersion'] ]
|
|
queue:
|
|
name: Hosted Linux Preview
|
|
timeoutInMinutes: 180
|
|
|
|
steps:
|
|
- task: NodeTool@0
|
|
inputs:
|
|
versionSpec: 8.9.3
|
|
displayName: Install Node.js 8.9.3
|
|
|
|
- script: |
|
|
apt-get update
|
|
apt-get install -y --no-install-recommends build-essential xvfb clang-3.5 fakeroot git libsecret-1-dev rpm libx11-dev libxkbfile-dev xz-utils xorriso zsync libxss1 libgconf2-4 libgtk-3-0
|
|
displayName: Install apt dependencies
|
|
|
|
- script: |
|
|
script/build --create-debian-package --create-rpm-package --compress-artifacts
|
|
env:
|
|
ATOM_RELEASE_VERSION: $(ReleaseVersion)
|
|
displayName: Build Atom
|
|
|
|
- script: script/lint
|
|
displayName: Run linter
|
|
|
|
- script: |
|
|
/sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -ac -screen 0 1280x1024x16
|
|
export DISPLAY=':99.0'
|
|
Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &
|
|
script/test
|
|
env:
|
|
CI: true
|
|
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: '?(*.deb|*.rpm|*.tar.gz)'
|
|
targetFolder: $(Build.ArtifactStagingDirectory)
|
|
displayName: Stage Artifacts
|
|
|
|
- task: PublishBuildArtifacts@1
|
|
inputs:
|
|
PathtoPublish: $(Build.ArtifactStagingDirectory)
|
|
ArtifactName: Binaries
|
|
ArtifactType: Container
|
|
displayName: Upload Artifacts
|