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:
parent
dc30b86377
commit
e389fa75ea
4 changed files with 13 additions and 24 deletions
|
@ -1,4 +1,4 @@
|
||||||
FROM arm64v8/ubuntu:16.04
|
FROM arm64v8/ubuntu:18.04
|
||||||
|
|
||||||
RUN groupadd --gid 1000 builduser \
|
RUN groupadd --gid 1000 builduser \
|
||||||
&& useradd --uid 1000 --gid builduser --shell /bin/bash --create-home 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 \
|
nano \
|
||||||
python-setuptools \
|
python-setuptools \
|
||||||
python-pip \
|
python-pip \
|
||||||
python-dbusmock \
|
|
||||||
sudo \
|
sudo \
|
||||||
unzip \
|
unzip \
|
||||||
wget \
|
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
|
# crcmod is required by gsutil, which is used for filling the gclient git cache
|
||||||
RUN pip install -U crcmod
|
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
|
ADD tools/xvfb-init.sh /etc/init.d/xvfb
|
||||||
RUN chmod a+x /etc/init.d/xvfb
|
RUN chmod a+x /etc/init.d/xvfb
|
||||||
|
|
||||||
|
|
|
@ -150,8 +150,8 @@ async function installSpecModules () {
|
||||||
cwd: path.resolve(__dirname, '../spec'),
|
cwd: path.resolve(__dirname, '../spec'),
|
||||||
stdio: 'inherit'
|
stdio: 'inherit'
|
||||||
})
|
})
|
||||||
if (status !== 0) {
|
if (status !== 0 && !process.env.IGNORE_YARN_INSTALL_ERROR) {
|
||||||
throw new Error('Failed to npm install in the spec folder')
|
throw new Error('Failed to yarn install in the spec folder')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -53,14 +53,6 @@ steps:
|
||||||
env:
|
env:
|
||||||
CIRCLE_TOKEN: $(CIRCLECI_TOKEN)
|
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: |
|
- bash: |
|
||||||
sh -e /etc/init.d/xvfb start
|
sh -e /etc/init.d/xvfb start
|
||||||
displayName: Setup for headless testing
|
displayName: Setup for headless testing
|
||||||
|
@ -69,20 +61,20 @@ steps:
|
||||||
|
|
||||||
- bash: |
|
- bash: |
|
||||||
cd src
|
cd src
|
||||||
./out/Default/electron electron/spec --ci --enable-logging
|
export ELECTRON_OUT_DIR=Default
|
||||||
|
(cd electron && node script/yarn test -- --ci --enable-logging)
|
||||||
displayName: 'Run Electron tests'
|
displayName: 'Run Electron tests'
|
||||||
timeoutInMinutes: 10
|
timeoutInMinutes: 20
|
||||||
env:
|
env:
|
||||||
ELECTRON_DISABLE_SANDBOX: 1
|
|
||||||
ELECTRON_DISABLE_SECURITY_WARNINGS: 1
|
ELECTRON_DISABLE_SECURITY_WARNINGS: 1
|
||||||
|
IGNORE_YARN_INSTALL_ERROR: 1
|
||||||
|
ELECTRON_TEST_RESULTS_DIR: junit
|
||||||
|
|
||||||
- bash: |
|
- bash: |
|
||||||
cd src
|
cd src
|
||||||
python electron/script/verify-ffmpeg.py --source-root "$PWD" --build-dir out/Default --ffmpeg-path out/ffmpeg
|
python electron/script/verify-ffmpeg.py --source-root "$PWD" --build-dir out/Default --ffmpeg-path out/ffmpeg
|
||||||
displayName: Verify non proprietary ffmpeg
|
displayName: Verify non proprietary ffmpeg
|
||||||
timeoutInMinutes: 5
|
timeoutInMinutes: 5
|
||||||
env:
|
|
||||||
ELECTRON_DISABLE_SANDBOX: 1
|
|
||||||
|
|
||||||
- bash: |
|
- bash: |
|
||||||
cd src
|
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
|
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
|
displayName: Verify cross arch snapshot
|
||||||
timeoutInMinutes: 5
|
timeoutInMinutes: 5
|
||||||
env:
|
|
||||||
ELECTRON_DISABLE_SANDBOX: 1
|
|
||||||
condition: and(succeeded(), eq(variables['RUN_NATIVE_MKSNAPSHOT'], 'true'))
|
|
||||||
|
|
||||||
- task: PublishTestResults@2
|
- task: PublishTestResults@2
|
||||||
displayName: 'Publish Test Results'
|
displayName: 'Publish Test Results'
|
||||||
|
|
|
@ -1,10 +1,8 @@
|
||||||
resources:
|
resources:
|
||||||
containers:
|
containers:
|
||||||
- container: arm64v8-test-container
|
- container: arm64v8-test-container
|
||||||
image: electronbuilds/arm64v8:0.0.4
|
image: electronbuilds/arm64v8:0.0.5
|
||||||
options: --shm-size 128m
|
options: --shm-size 128m
|
||||||
env:
|
|
||||||
RUN_NATIVE_MKSNAPSHOT: true
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
- job: Test_Arm64
|
- job: Test_Arm64
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue