зеркало из https://github.com/electron/electron.git
122 строки
3.9 KiB
YAML
122 строки
3.9 KiB
YAML
steps:
|
|
- task: CopyFiles@2
|
|
displayName: 'Copy Files to: src/electron'
|
|
inputs:
|
|
TargetFolder: src/electron
|
|
|
|
- bash: |
|
|
cd src/electron
|
|
node script/yarn.js install --frozen-lockfile
|
|
displayName: 'Yarn install'
|
|
|
|
- bash: |
|
|
export ZIP_DEST=$PWD/src/out/Default
|
|
echo "##vso[task.setvariable variable=ZIP_DEST]$ZIP_DEST"
|
|
mkdir -p $ZIP_DEST
|
|
cd src/electron
|
|
node script/download-circleci-artifacts.js --buildNum=$CIRCLE_BUILD_NUM --name=dist.zip --dest=$ZIP_DEST
|
|
cd $ZIP_DEST
|
|
unzip -o dist.zip
|
|
xattr -cr Electron.app
|
|
displayName: 'Download and unzip dist files for test'
|
|
env:
|
|
CIRCLE_TOKEN: $(CIRCLECI_TOKEN)
|
|
|
|
- bash: |
|
|
export FFMPEG_ZIP_DEST=$PWD/src/out/ffmpeg
|
|
mkdir -p $FFMPEG_ZIP_DEST
|
|
cd src/electron
|
|
node script/download-circleci-artifacts.js --buildNum=$CIRCLE_BUILD_NUM --name=ffmpeg.zip --dest=$FFMPEG_ZIP_DEST
|
|
cd $FFMPEG_ZIP_DEST
|
|
unzip -o ffmpeg.zip
|
|
displayName: 'Download and unzip ffmpeg for test'
|
|
env:
|
|
CIRCLE_TOKEN: $(CIRCLECI_TOKEN)
|
|
|
|
- bash: |
|
|
export NODE_HEADERS_DEST=$PWD/src/out/Default/gen
|
|
mkdir -p $NODE_HEADERS_DEST
|
|
cd src/electron
|
|
node script/download-circleci-artifacts.js --buildNum=$CIRCLE_BUILD_NUM --name=node_headers.tar.gz --dest=$NODE_HEADERS_DEST
|
|
cd $NODE_HEADERS_DEST
|
|
tar xzf node_headers.tar.gz
|
|
displayName: 'Download and untar node header files for test'
|
|
env:
|
|
CIRCLE_TOKEN: $(CIRCLECI_TOKEN)
|
|
|
|
- bash: |
|
|
export CROSS_ARCH_SNAPSHOTS=$PWD/src/out/Default/cross-arch-snapshots
|
|
mkdir -p $CROSS_ARCH_SNAPSHOTS
|
|
cd src/electron
|
|
node script/download-circleci-artifacts.js --buildNum=$CIRCLE_BUILD_NUM --name=cross-arch-snapshots/snapshot_blob.bin --dest=$CROSS_ARCH_SNAPSHOTS
|
|
node script/download-circleci-artifacts.js --buildNum=$CIRCLE_BUILD_NUM --name=cross-arch-snapshots/v8_context_snapshot.arm64.bin --dest=$CROSS_ARCH_SNAPSHOTS
|
|
displayName: 'Download cross arch snapshot files'
|
|
env:
|
|
CIRCLE_TOKEN: $(CIRCLECI_TOKEN)
|
|
|
|
- bash: |
|
|
cd src
|
|
export ELECTRON_OUT_DIR=Default
|
|
export npm_config_arch=arm64
|
|
(cd electron && node script/yarn test --enable-logging --runners main)
|
|
displayName: 'Run Electron main tests'
|
|
timeoutInMinutes: 20
|
|
env:
|
|
ELECTRON_DISABLE_SECURITY_WARNINGS: 1
|
|
IGNORE_YARN_INSTALL_ERROR: 1
|
|
ELECTRON_TEST_RESULTS_DIR: junit
|
|
|
|
- bash: |
|
|
cd src
|
|
export ELECTRON_OUT_DIR=Default
|
|
export npm_config_arch=arm64
|
|
(cd electron && node script/yarn test --enable-logging --runners remote)
|
|
displayName: 'Run Electron remote tests'
|
|
timeoutInMinutes: 20
|
|
condition: succeededOrFailed()
|
|
env:
|
|
ELECTRON_DISABLE_SECURITY_WARNINGS: 1
|
|
IGNORE_YARN_INSTALL_ERROR: 1
|
|
ELECTRON_TEST_RESULTS_DIR: junit
|
|
|
|
- bash: |
|
|
cd src
|
|
python electron/script/verify-ffmpeg.py --source-root "$PWD" --build-dir out/Default --ffmpeg-path out/ffmpeg
|
|
displayName: Verify non proprietary ffmpeg
|
|
timeoutInMinutes: 5
|
|
condition: succeededOrFailed()
|
|
env:
|
|
TARGET_ARCH: arm64
|
|
|
|
- bash: |
|
|
cd src
|
|
echo Verify cross arch snapshot
|
|
python electron/script/verify-mksnapshot.py --source-root "$PWD" --build-dir out/Default --snapshot-files-dir $PWD/out/Default/cross-arch-snapshots
|
|
displayName: Verify cross arch snapshot
|
|
timeoutInMinutes: 5
|
|
condition: succeededOrFailed()
|
|
|
|
- task: PublishTestResults@2
|
|
displayName: 'Publish Test Results'
|
|
inputs:
|
|
testResultsFiles: '*.xml'
|
|
|
|
searchFolder: '$(System.DefaultWorkingDirectory)/src/junit/'
|
|
|
|
condition: succeededOrFailed()
|
|
|
|
- bash: killall Electron || echo "No Electron processes left running"
|
|
displayName: 'Kill processes left running from last test run'
|
|
condition: always()
|
|
|
|
- bash: |
|
|
rm -rf ~/Library/Application\ Support/Electron*
|
|
rm -rf ~/Library/Application\ Support/electron*
|
|
displayName: 'Delete user app data directories'
|
|
condition: always()
|
|
|
|
- task: mspremier.PostBuildCleanup.PostBuildCleanup-task.PostBuildCleanup@3
|
|
displayName: 'Clean Agent Directories'
|
|
|
|
condition: always()
|