test: run all tests on arm linux platforms (#19318)

* test: run all tests on arm platforms

* Use Ubuntu 18.04 for arm64 CI
This commit is contained in:
John Kleinschmidt 2019-07-19 19:15:47 -04:00 коммит произвёл Shelley Vohr
Родитель dc30b86377
Коммит e389fa75ea
4 изменённых файлов: 13 добавлений и 24 удалений

Просмотреть файл

@ -1,4 +1,4 @@
FROM arm64v8/ubuntu:16.04
FROM arm64v8/ubuntu:18.04
RUN groupadd --gid 1000 builduser \
&& useradd --uid 1000 --gid builduser --shell /bin/bash --create-home builduser
@ -41,7 +41,6 @@ RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \
nano \
python-setuptools \
python-pip \
python-dbusmock \
sudo \
unzip \
wget \
@ -56,6 +55,9 @@ RUN curl -sL https://deb.nodesource.com/setup_10.x | bash - \
# crcmod is required by gsutil, which is used for filling the gclient git cache
RUN pip install -U crcmod
# dbusmock is needed for Electron tests
RUN pip install python-dbusmock
ADD tools/xvfb-init.sh /etc/init.d/xvfb
RUN chmod a+x /etc/init.d/xvfb

Просмотреть файл

@ -150,8 +150,8 @@ async function installSpecModules () {
cwd: path.resolve(__dirname, '../spec'),
stdio: 'inherit'
})
if (status !== 0) {
throw new Error('Failed to npm install in the spec folder')
if (status !== 0 && !process.env.IGNORE_YARN_INSTALL_ERROR) {
throw new Error('Failed to yarn install in the spec folder')
}
}

Просмотреть файл

@ -53,14 +53,6 @@ steps:
env:
CIRCLE_TOKEN: $(CIRCLECI_TOKEN)
- bash: |
cd src
export npm_config_nodedir=$PWD/out/Default/gen/node_headers
cd electron/spec
node ../script/yarn.js install --frozen-lockfile
displayName: Install test modules
- bash: |
sh -e /etc/init.d/xvfb start
displayName: Setup for headless testing
@ -68,21 +60,21 @@ steps:
DISPLAY: ":99.0"
- bash: |
cd src
./out/Default/electron electron/spec --ci --enable-logging
cd src
export ELECTRON_OUT_DIR=Default
(cd electron && node script/yarn test -- --ci --enable-logging)
displayName: 'Run Electron tests'
timeoutInMinutes: 10
timeoutInMinutes: 20
env:
ELECTRON_DISABLE_SANDBOX: 1
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
env:
ELECTRON_DISABLE_SANDBOX: 1
- bash: |
cd src
@ -90,9 +82,6 @@ steps:
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
env:
ELECTRON_DISABLE_SANDBOX: 1
condition: and(succeeded(), eq(variables['RUN_NATIVE_MKSNAPSHOT'], 'true'))
- task: PublishTestResults@2
displayName: 'Publish Test Results'

Просмотреть файл

@ -1,10 +1,8 @@
resources:
containers:
- container: arm64v8-test-container
image: electronbuilds/arm64v8:0.0.4
image: electronbuilds/arm64v8:0.0.5
options: --shm-size 128m
env:
RUN_NATIVE_MKSNAPSHOT: true
jobs:
- job: Test_Arm64