2018-07-05 14:59:47 +00:00
notify-slack-failure : ¬ify-slack-failure
run :
name : Send a slack notification on failure
command : |
if [ "$NIGHTLY_BUILD" == "true" ]; then
export MESSAGE="Build failed for *<$CIRCLE_BUILD_URL|$CIRCLE_JOB>* nightly build."
curl -g -H "Content-Type: application/json" -X POST \
-d "{\"text\": \"$MESSAGE\", \"attachments\": [{\"color\": \"#FC5C3C\",\"title\": \"$CIRCLE_JOB nightly build results\",\"title_link\": \"$CIRCLE_BUILD_URL\"}]}" $SLACK_WEBHOOK
fi
when : on_fail
notify-slack-success : ¬ify-slack-success
run :
name : Send a slack notification on success
command : |
if [ "$NIGHTLY_BUILD" == "true" ]; then
export MESSAGE="Build succeeded for *<$CIRCLE_BUILD_URL|$CIRCLE_JOB>* nightly build."
curl -g -H "Content-Type: application/json" -X POST \
-d "{\"text\": \"$MESSAGE\", \"attachments\": [{\"color\": \"good\",\"title\": \"$CIRCLE_JOB nightly build results\",\"title_link\": \"$CIRCLE_BUILD_URL\"}]}" $SLACK_WEBHOOK
fi
when : on_success
2018-05-22 17:50:44 +00:00
build-steps : &build-steps
steps :
- checkout
2018-06-15 09:09:54 +00:00
- run :
name : Install Node.js 10 on MacOS
command : |
if [ "$INSTALL_MACOS_NODE" == "true" ]; then
echo 'Installing Node.js 10 for MacOS'
brew update
brew install node@10
fi
2018-05-22 17:50:44 +00:00
- run :
name : Check for release
command : |
if [ -n "${RUN_RELEASE_BUILD}" ]; then
echo 'release build triggered from api'
2018-06-13 20:11:26 +00:00
echo 'export ELECTRON_RELEASE=1 UPLOAD_TO_S3=1' >> $BASH_ENV
2018-05-22 17:50:44 +00:00
fi
- run :
name : Bootstrap
command : |
if [ "$ELECTRON_RELEASE" == "1" ]; then
echo "Bootstrapping Electron for release build for $TARGET_ARCH"
script/bootstrap.py --target_arch=$TARGET_ARCH
else
echo "Bootstrapping Electron for debug build for $TARGET_ARCH"
script/bootstrap.py --target_arch=$TARGET_ARCH --dev
fi
- run :
name : Lint
command : npm run lint
- run :
name : Build
command : |
if [ "$ELECTRON_RELEASE" == "1" ]; then
echo 'Building Electron for release'
script/build.py -c R
else
echo 'Building Electron for debug'
script/build.py -c D
fi
- run :
name : Create distribution
command : |
if [ "$ELECTRON_RELEASE" == "1" ]; then
echo 'Creating Electron release distribution'
script/create-dist.py
else
echo 'Skipping create distribution because build is not for release'
fi
- run :
name : Upload distribution
command : |
2018-06-13 20:11:26 +00:00
if [ "$ELECTRON_RELEASE" == "1" ] && [ "$UPLOAD_TO_S3" != "1" ]; then
2018-05-22 17:50:44 +00:00
echo 'Uploading Electron release distribution to github releases'
script/upload.py
2018-06-13 20:11:26 +00:00
elif [ "$ELECTRON_RELEASE" == "1" ] && [ "$UPLOAD_TO_S3" == "1" ]; then
2018-05-22 17:50:44 +00:00
echo 'Uploading Electron release distribution to s3'
script/upload.py --upload_to_s3
else
echo 'Skipping upload distribution because build is not for release'
fi
- run :
name : Setup for headless testing
command : |
2018-06-13 20:11:26 +00:00
if [ "$RUN_HEADLESS_TESTS" == "true" ]; then
2018-05-22 17:50:44 +00:00
echo 'Setup for headless testing'
sh -e /etc/init.d/xvfb start
else
echo 'Headless testing not needed'
fi
- run :
name : Test
environment :
MOCHA_FILE : junit/test-results.xml
MOCHA_REPORTER : mocha-junit-reporter
command : |
2018-06-13 20:11:26 +00:00
if [ "$RUN_TESTS" == "true" ]; then
if [ "$ELECTRON_RELEASE" != "1" ]; then
echo 'Testing Electron debug build'
mkdir junit
script/test.py --ci --rebuild_native_modules
2018-05-22 17:50:44 +00:00
else
2018-07-12 14:34:10 +00:00
if [ "$UPLOAD_TO_S3" == "1" ]; then
echo 'Testing Electron release build'
mkdir junit
script/test.py --ci --rebuild_native_modules -c R
else
echo 'Skipping tests on GitHub release'
fi
2018-05-22 17:50:44 +00:00
fi
2018-06-13 20:11:26 +00:00
else
echo 'Skipping tests due to configuration'
2018-05-22 17:50:44 +00:00
fi
- run :
name : Verify FFmpeg
command : |
2018-06-13 20:11:26 +00:00
if [ "$RUN_TESTS" == "true" ]; then
if [ "$ELECTRON_RELEASE" != "1" ]; then
echo 'Verifying ffmpeg on debug build'
script/verify-ffmpeg.py
2018-05-22 17:50:44 +00:00
else
2018-06-13 20:11:26 +00:00
echo 'Verifying ffmpeg on release build'
2018-08-22 15:41:25 +00:00
script/verify-ffmpeg.py -c R
2018-05-22 17:50:44 +00:00
fi
2018-06-13 20:11:26 +00:00
else
echo 'Skipping tests due to configuration'
2018-05-22 17:50:44 +00:00
fi
2018-06-13 20:11:26 +00:00
2018-05-22 17:50:44 +00:00
- run :
name : Generate Typescript Definitions
command : |
if [ "$CREATE_TYPESCRIPT_DEFS" == "true" ]; then
npm run create-typescript-definitions
fi
2018-07-05 14:59:47 +00:00
- << : *notify-slack-failure
- << : *notify-slack-success
2018-05-22 17:50:44 +00:00
- persist_to_workspace :
root : out
paths :
- "*"
- store_test_results :
path : junit
- store_artifacts :
path : junit
- store_artifacts :
2018-07-12 14:34:10 +00:00
path : out
2018-05-22 17:50:44 +00:00
2018-07-31 18:18:36 +00:00
gn-build-steps : &gn-build-steps
steps :
- run :
name : Setup depot tools
command : |
git clone --depth=1 https://chromium.googlesource.com/chromium/tools/depot_tools.git
echo 'export PATH="$PATH:'"$PWD"'/depot_tools"' >> $BASH_ENV
2018-08-17 16:20:20 +00:00
echo 'export GIT_CACHE_PATH="$HOME/.gclient-cache"' >> $BASH_ENV
2018-07-31 18:18:36 +00:00
- checkout :
path : src/electron
- restore_cache :
paths :
- ~/.gclient-cache
keys :
- v1-gclient-cache-{{ arch }}-{{ checksum "src/electron/DEPS" }}
- v1-gclient-cache-{{ arch }}-
- run :
name : Gclient sync
command : |
gclient config \
--name "src/electron" \
--unmanaged \
2018-08-13 22:43:00 +00:00
$GCLIENT_EXTRA_ARGS \
2018-07-31 18:18:36 +00:00
"$CIRCLE_REPOSITORY_URL"
gclient sync --with_branch_heads --with_tags
- save_cache :
paths :
- ~/.gclient-cache
key : v1-gclient-cache-{{ arch }}-{{ checksum "src/electron/DEPS" }}
- run :
name : GN gen
command : |
cd src
2018-08-21 19:40:06 +00:00
SCCACHE_PATH="$PWD/electron/external_binaries/sccache"
2018-07-31 18:18:36 +00:00
echo 'export CHROMIUM_BUILDTOOLS_PATH="'"$PWD"'/buildtools"' >> $BASH_ENV
2018-08-21 19:40:06 +00:00
echo 'export SCCACHE_WRAPPER="'"$SCCACHE_PATH"'"' >> $BASH_ENV
2018-07-31 18:18:36 +00:00
source $BASH_ENV
2018-07-31 23:25:51 +00:00
gn gen out/Default --args='import("'$GN_CONFIG'") cc_wrapper="'"$SCCACHE_PATH"'"'" $GN_EXTRA_ARGS"
2018-07-31 18:18:36 +00:00
- run :
name : Ninja build
command : |
cd src
ninja -C out/Default electron:electron_app
2018-08-22 15:41:25 +00:00
- run :
name : ffmpeg GN gen
command : |
if [ "$BUILD_FFMPEG" == "true" ]; then
cd src
gn gen out/ffmpeg --args='import("//electron/build/args/ffmpeg.gn") cc_wrapper="'"$SCCACHE_PATH"'"'" $GN_EXTRA_ARGS"
fi
- run :
name : Non proprietary ffmpeg build
command : |
if [ "$BUILD_FFMPEG" == "true" ]; then
cd src
ninja -C out/ffmpeg third_party/ffmpeg
fi
- run :
name : native mksnapshot GN gen
command : |
if [ "$BUILD_NATIVE_MKSNAPSHOT" == "true" ]; then
cd src
gn gen out/native_mksnapshot --args='import("//electron/build/args/native_mksnapshot.gn") cc_wrapper="'"$SCCACHE_PATH"'" v8_snapshot_toolchain="'"$MKSNAPSHOT_TOOLCHAIN"'"'" $GN_EXTRA_ARGS"
fi
- run :
name : native mksnapshot (arm/arm64) build
command : |
if [ "$BUILD_NATIVE_MKSNAPSHOT" == "true" ]; then
cd src
ninja -C out/native_mksnapshot v8:mksnapshot
fi
2018-08-21 17:06:28 +00:00
- run :
name : Build dist.zip
command : |
cd src
ninja -C out/Default electron:electron_dist_zip
2018-07-31 18:18:36 +00:00
- run :
name : Check sccache stats after build
command : $SCCACHE_WRAPPER -s
- run :
name : Setup for headless testing
command : |
sh -e /etc/init.d/xvfb start
2018-08-22 15:41:25 +00:00
- run :
name : Verify ffmpeg
command : |
if [ "$RUN_TESTS" != "false" ] && [ "$BUILD_FFMPEG" == "true" ]; then
python src/electron/script/verify-ffmpeg.py -c Default --source-root "$PWD/src" --ffmpeg-path "$PWD/src/out/ffmpeg"
fi
2018-07-31 18:18:36 +00:00
- run :
name : Test
environment :
MOCHA_REPORTER : mocha-junit-reporter
MOCHA_FILE : junit/test-results.xml
ELECTRON_DISABLE_SECURITY_WARNINGS : 1
command : |
2018-08-13 22:43:00 +00:00
if [ "$RUN_TESTS" != "false" ]; then
cd src
ninja -C out/Default third_party/electron_node:headers
export npm_config_nodedir="$PWD/out/Default/gen/node_headers"
(cd electron/spec && npm install)
python electron/script/lib/dbus_mock.py ./out/Default/electron electron/spec --ci --enable-logging
fi
2018-07-31 18:18:36 +00:00
- store_test_results :
path : src/junit
- store_artifacts :
path : src/junit
2018-08-21 17:06:28 +00:00
- store_artifacts :
path : src/out/Default/dist.zip
2018-08-22 15:41:25 +00:00
- store_artifacts :
path : src/out/ffmpeg/libffmpeg.dylib
- store_artifacts :
path : src/out/ffmpeg/libffmpeg.so
- store_artifacts :
path : src/out/native_mksnapshot/mksnapshot
2018-08-21 17:06:28 +00:00
gn-mac-build-steps : &gn-mac-build-steps
steps :
- run :
name : Setup depot tools
command : |
git clone --depth=1 https://chromium.googlesource.com/chromium/tools/depot_tools.git
echo 'export PATH="$PATH:'"$PWD"'/depot_tools"' >> $BASH_ENV
echo 'export GIT_CACHE_PATH="$HOME/.gclient-cache"' >> $BASH_ENV
- run :
name : Install Node.js 10 on MacOS
command : |
echo 'Installing Node.js 10 for MacOS'
brew update
brew install node@10
brew install gnu-tar
echo 'export PATH="/usr/local/opt/gnu-tar/libexec/gnubin:$PATH"' >> $BASH_ENV
- checkout :
path : src/electron
- run :
name : Gclient sync
command : |
gclient config \
--name "src/electron" \
--unmanaged \
$GCLIENT_EXTRA_ARGS \
"$CIRCLE_REPOSITORY_URL"
gclient sync --with_branch_heads --with_tags
- run :
name : GN gen
command : |
cd src
SCCACHE_PATH="$PWD/libchromiumcontent/tools/sccache/aad2120/mac/sccache"
echo 'export SCCACHE_WRAPPER="'"$SCCACHE_PATH"'"' >> $BASH_ENV
echo 'export CHROMIUM_BUILDTOOLS_PATH="'"$PWD"'/buildtools"' >> $BASH_ENV
source $BASH_ENV
gn gen out/Default --args='import("'$GN_CONFIG'") cc_wrapper="'"$SCCACHE_PATH"'"'" $GN_EXTRA_ARGS"
- run :
name : Ninja build
command : |
cd src
ninja -C out/Default electron:electron_app
- run :
name : Build dist.zip
command : |
cd src
ninja -C out/Default electron:electron_dist_zip
- run :
name : Check sccache stats after build
command : $SCCACHE_WRAPPER -s
- run :
name : Test
environment :
MOCHA_REPORTER : mocha-junit-reporter
MOCHA_FILE : junit/test-results.xml
ELECTRON_DISABLE_SECURITY_WARNINGS : 1
command : |
if [ "$RUN_TESTS" != "false" ]; then
cd src
ninja -C out/Default third_party/electron_node:headers
export npm_config_nodedir="$PWD/out/Default/gen/node_headers"
(cd electron/spec && npm install)
./out/Default/Electron.app/Contents/MacOS/Electron electron/spec --ci --enable-logging
fi
- store_test_results :
path : src/junit
- store_artifacts :
path : src/junit
- store_artifacts :
path : src/out/Default/dist.zip
gn-linux-build-machine : &gn-linux-build-machine
docker :
- image : electronbuilds/electron:0.0.8
resource_class : 2xlarge
gn-mac-build-machine : &gn-mac-build-machine
macos :
xcode : "8.3.3"
resource_class : large
2018-07-31 18:18:36 +00:00
2018-05-22 17:50:44 +00:00
build-defaults : &build-defaults
docker :
2018-06-15 09:09:54 +00:00
- image : electronbuilds/electron:0.0.8
2018-05-22 17:50:44 +00:00
<< : *build-steps
2017-09-13 13:48:19 +00:00
version : 2
jobs :
electron-linux-arm :
2018-05-22 17:50:44 +00:00
environment :
TARGET_ARCH : arm
<< : *build-defaults
2017-11-24 02:03:02 +00:00
resource_class : 2xlarge
2018-05-22 17:50:44 +00:00
2017-12-13 19:42:01 +00:00
electron-linux-arm-test :
machine : true
steps :
- attach_workspace :
2018-05-22 17:50:44 +00:00
at : /tmp/workspace/project/out
2017-12-13 19:42:01 +00:00
- checkout
- run :
name : Test in ARM docker container
command : |
if [ "$ELECTRON_RELEASE" != "1" ]; then
docker run --rm --privileged multiarch/qemu-user-static:register --reset
docker run -it \
--mount type=bind,source=/tmp/workspace,target=/tmp/workspace \
2018-03-09 03:07:50 +00:00
--rm electronbuilds/electronarm7:0.0.5 > version.txt
2017-12-13 19:42:01 +00:00
cat version.txt
if grep -q `script/get-version.py` version.txt; then
echo "Versions match"
else
echo "Versions do not match"
exit 1
fi
else
echo "Skipping test for release build"
fi
2018-05-22 17:50:44 +00:00
electron-linux-arm-release-nightly :
environment :
TARGET_ARCH : arm
RUN_RELEASE_BUILD : true
2018-07-05 14:59:47 +00:00
NIGHTLY_BUILD : true
2018-05-22 17:50:44 +00:00
<< : *build-defaults
resource_class : 2xlarge
2017-09-13 13:48:19 +00:00
electron-linux-arm64 :
2018-05-22 17:50:44 +00:00
environment :
TARGET_ARCH : arm64
<< : *build-defaults
2017-11-24 02:03:02 +00:00
resource_class : 2xlarge
2018-05-22 17:50:44 +00:00
2017-12-13 19:42:01 +00:00
electron-linux-arm64-test :
machine : true
steps :
- attach_workspace :
2018-05-22 17:50:44 +00:00
at : /tmp/workspace/project/out
2017-12-13 19:42:01 +00:00
- checkout
- run :
name : Test in ARM64 docker container
command : |
if [ "$ELECTRON_RELEASE" != "1" ]; then
docker run --rm --privileged multiarch/qemu-user-static:register --reset
docker run -it \
--mount type=bind,source=/tmp/workspace,target=/tmp/workspace \
2018-03-09 03:07:50 +00:00
--rm electronbuilds/electronarm64:0.0.6 > version.txt
2017-12-13 19:42:01 +00:00
cat version.txt
if grep -q `script/get-version.py` version.txt; then
echo "Versions match"
else
echo "Versions do not match"
exit 1
fi
else
echo "Skipping test for release build"
fi
2018-05-22 17:50:44 +00:00
electron-linux-arm64-release-nightly :
environment :
TARGET_ARCH : arm64
RUN_RELEASE_BUILD : true
2018-07-05 14:59:47 +00:00
NIGHTLY_BUILD : true
2018-05-22 17:50:44 +00:00
<< : *build-defaults
resource_class : 2xlarge
2017-09-13 13:48:19 +00:00
electron-linux-ia32 :
2018-05-22 17:50:44 +00:00
environment :
TARGET_ARCH : ia32
DISPLAY : ':99.0'
RUN_TESTS : true
RUN_HEADLESS_TESTS : true
<< : *build-defaults
2017-09-28 17:05:42 +00:00
resource_class : xlarge
2018-05-22 17:50:44 +00:00
electron-linux-ia32-release-nightly :
environment :
TARGET_ARCH : ia32
RUN_RELEASE_BUILD : true
2018-07-05 14:59:47 +00:00
NIGHTLY_BUILD : true
2018-05-22 17:50:44 +00:00
<< : *build-defaults
resource_class : xlarge
2017-11-22 02:17:19 +00:00
electron-linux-mips64el :
2018-05-22 17:50:44 +00:00
environment :
TARGET_ARCH : mips64el
<< : *build-defaults
2017-11-22 02:17:19 +00:00
resource_class : xlarge
2017-09-13 13:48:19 +00:00
electron-linux-x64 :
2018-05-22 17:50:44 +00:00
environment :
TARGET_ARCH : x64
DISPLAY : ':99.0'
RUN_TESTS : true
RUN_HEADLESS_TESTS : true
CREATE_TYPESCRIPT_DEFS : true
<< : *build-defaults
resource_class : xlarge
electron-linux-x64-release-nightly :
environment :
TARGET_ARCH : x64
RUN_RELEASE_BUILD : true
2018-07-05 14:59:47 +00:00
NIGHTLY_BUILD : true
2018-05-22 17:50:44 +00:00
<< : *build-defaults
2017-09-28 17:05:42 +00:00
resource_class : xlarge
2017-09-13 13:48:19 +00:00
2018-04-09 19:19:54 +00:00
electron-osx-x64 :
environment :
TARGET_ARCH : x64
2018-05-22 17:50:44 +00:00
RUN_TESTS : true
2018-06-15 09:09:54 +00:00
INSTALL_MACOS_NODE : true
2018-04-09 19:19:54 +00:00
macos :
2018-06-15 09:09:54 +00:00
xcode : "8.3.3"
2018-05-22 17:50:44 +00:00
<< : *build-steps
electron-osx-x64-release-nightly :
environment :
TARGET_ARCH : x64
RUN_RELEASE_BUILD : true
2018-06-15 09:09:54 +00:00
INSTALL_MACOS_NODE : true
2018-07-05 14:59:47 +00:00
NIGHTLY_BUILD : true
2018-05-22 17:50:44 +00:00
macos :
2018-06-15 09:09:54 +00:00
xcode : "8.3.3"
2018-05-22 17:50:44 +00:00
<< : *build-steps
2018-04-09 19:19:54 +00:00
electron-mas-x64 :
environment :
TARGET_ARCH : x64
MAS_BUILD : 1
2018-05-22 17:50:44 +00:00
RUN_TESTS : true
2018-06-15 09:09:54 +00:00
INSTALL_MACOS_NODE : true
2018-04-09 19:19:54 +00:00
macos :
2018-06-15 09:09:54 +00:00
xcode : "8.3.3"
2018-05-22 17:50:44 +00:00
<< : *build-steps
electron-mas-x64-release-nightly :
environment :
TARGET_ARCH : x64
MAS_BUILD : 1
RUN_RELEASE_BUILD : true
2018-06-15 09:09:54 +00:00
INSTALL_MACOS_NODE : true
2018-07-05 14:59:47 +00:00
NIGHTLY_BUILD : true
2018-05-22 17:50:44 +00:00
macos :
2018-06-15 09:09:54 +00:00
xcode : "8.3.3"
2018-05-22 17:50:44 +00:00
<< : *build-steps
2018-07-31 23:25:51 +00:00
electron-gn-linux-x64-debug-fyi :
2018-07-11 18:01:15 +00:00
environment :
DISPLAY : ':99.0'
2018-07-31 18:18:36 +00:00
GN_CONFIG : //electron/build/args/debug.gn
2018-08-16 23:28:01 +00:00
RUN_TESTS : false
2018-08-21 17:06:28 +00:00
<< : *gn-linux-build-machine
2018-08-16 23:28:01 +00:00
<< : *gn-build-steps
electron-gn-linux-x64-testing-fyi :
environment :
DISPLAY : ':99.0'
GN_CONFIG : //electron/build/args/testing.gn
2018-08-22 15:41:25 +00:00
BUILD_FFMPEG : true
2018-08-21 17:06:28 +00:00
<< : *gn-linux-build-machine
2018-07-31 18:18:36 +00:00
<< : *gn-build-steps
2018-07-11 18:01:15 +00:00
2018-07-31 23:25:51 +00:00
electron-gn-linux-x64-release-fyi :
2018-07-31 18:18:36 +00:00
environment :
DISPLAY : ':99.0'
GN_CONFIG : //electron/build/args/release.gn
2018-08-22 15:41:25 +00:00
BUILD_FFMPEG : true
2018-08-21 17:06:28 +00:00
<< : *gn-linux-build-machine
2018-07-31 18:18:36 +00:00
<< : *gn-build-steps
2018-04-09 19:19:54 +00:00
2018-07-31 23:25:51 +00:00
electron-gn-linux-ia32-debug-fyi :
environment :
DISPLAY : ':99.0'
GN_CONFIG : //electron/build/args/debug.gn
GN_EXTRA_ARGS : 'target_cpu = "x86"'
2018-08-11 17:21:34 +00:00
NPM_CONFIG_ARCH : ia32
2018-08-16 23:28:01 +00:00
RUN_TESTS : false
2018-08-21 17:06:28 +00:00
<< : *gn-linux-build-machine
2018-08-16 23:28:01 +00:00
<< : *gn-build-steps
electron-gn-linux-ia32-testing-fyi :
environment :
DISPLAY : ':99.0'
GN_CONFIG : //electron/build/args/testing.gn
GN_EXTRA_ARGS : 'target_cpu = "x86"'
NPM_CONFIG_ARCH : ia32
2018-08-22 15:41:25 +00:00
BUILD_FFMPEG : true
2018-08-21 17:06:28 +00:00
<< : *gn-linux-build-machine
2018-07-31 23:25:51 +00:00
<< : *gn-build-steps
electron-gn-linux-ia32-release-fyi :
environment :
DISPLAY : ':99.0'
GN_CONFIG : //electron/build/args/release.gn
GN_EXTRA_ARGS : 'target_cpu = "x86"'
2018-08-11 17:21:34 +00:00
NPM_CONFIG_ARCH : ia32
2018-08-22 15:41:25 +00:00
BUILD_FFMPEG : true
2018-08-21 17:06:28 +00:00
<< : *gn-linux-build-machine
2018-07-31 23:25:51 +00:00
<< : *gn-build-steps
2018-08-13 22:43:00 +00:00
electron-gn-linux-arm-debug-fyi :
environment :
GN_CONFIG : //electron/build/args/debug.gn
GN_EXTRA_ARGS : 'target_cpu = "arm"'
GCLIENT_EXTRA_ARGS : '--custom-var=checkout_arm=True'
RUN_TESTS : false
2018-08-21 17:06:28 +00:00
<< : *gn-linux-build-machine
2018-08-13 22:43:00 +00:00
<< : *gn-build-steps
2018-08-16 23:28:01 +00:00
electron-gn-linux-arm-testing-fyi :
environment :
GN_CONFIG : //electron/build/args/testing.gn
GN_EXTRA_ARGS : 'target_cpu = "arm"'
GCLIENT_EXTRA_ARGS : '--custom-var=checkout_arm=True'
RUN_TESTS : false
2018-08-21 17:06:28 +00:00
<< : *gn-linux-build-machine
2018-08-16 23:28:01 +00:00
<< : *gn-build-steps
2018-08-13 22:43:00 +00:00
electron-gn-linux-arm-release-fyi :
environment :
GN_CONFIG : //electron/build/args/release.gn
GN_EXTRA_ARGS : 'target_cpu = "arm"'
GCLIENT_EXTRA_ARGS : '--custom-var=checkout_arm=True'
RUN_TESTS : false
2018-08-22 15:41:25 +00:00
BUILD_FFMPEG : true
BUILD_NATIVE_MKSNAPSHOT : true
MKSNAPSHOT_TOOLCHAIN : //build/toolchain/linux:clang_arm
2018-08-21 17:06:28 +00:00
<< : *gn-linux-build-machine
2018-08-13 22:43:00 +00:00
<< : *gn-build-steps
electron-gn-linux-arm64-debug-fyi :
environment :
GN_CONFIG : //electron/build/args/debug.gn
GN_EXTRA_ARGS : 'target_cpu = "arm64" fatal_linker_warnings = false enable_linux_installer = false'
GCLIENT_EXTRA_ARGS : '--custom-var=checkout_arm64=True'
RUN_TESTS : false
2018-08-21 17:06:28 +00:00
<< : *gn-linux-build-machine
2018-08-13 22:43:00 +00:00
<< : *gn-build-steps
2018-08-16 23:28:01 +00:00
electron-gn-linux-arm64-testing-fyi :
environment :
GN_CONFIG : //electron/build/args/testing.gn
GN_EXTRA_ARGS : 'target_cpu = "arm64" fatal_linker_warnings = false enable_linux_installer = false'
GCLIENT_EXTRA_ARGS : '--custom-var=checkout_arm64=True'
RUN_TESTS : false
2018-08-21 17:06:28 +00:00
<< : *gn-linux-build-machine
2018-08-16 23:28:01 +00:00
<< : *gn-build-steps
2018-08-13 22:43:00 +00:00
electron-gn-linux-arm64-release-fyi :
environment :
GN_CONFIG : //electron/build/args/release.gn
GN_EXTRA_ARGS : 'target_cpu = "arm64" fatal_linker_warnings = false enable_linux_installer = false'
GCLIENT_EXTRA_ARGS : '--custom-var=checkout_arm64=True'
RUN_TESTS : false
2018-08-22 15:41:25 +00:00
BUILD_FFMPEG : true
BUILD_NATIVE_MKSNAPSHOT : true
MKSNAPSHOT_TOOLCHAIN : //build/toolchain/linux:clang_arm64
2018-08-21 17:06:28 +00:00
<< : *gn-linux-build-machine
2018-08-13 22:43:00 +00:00
<< : *gn-build-steps
2018-08-21 17:06:28 +00:00
electron-gn-osx-release-fyi :
environment :
GN_CONFIG : //electron/build/args/release.gn
RUN_TESTS : true
<< : *gn-mac-build-machine
<< : *gn-mac-build-steps
electron-gn-osx-testing-fyi :
environment :
GN_CONFIG : //electron/build/args/testing.gn
RUN_TESTS : true
<< : *gn-mac-build-machine
<< : *gn-mac-build-steps
electron-gn-osx-debug-fyi :
environment :
GN_CONFIG : //electron/build/args/debug.gn
RUN_TESTS : false
<< : *gn-mac-build-machine
<< : *gn-mac-build-steps
electron-gn-mas-release-fyi :
environment :
GN_CONFIG : //electron/build/args/release.gn
RUN_TESTS : true
GN_EXTRA_ARGS : 'is_mas_build = true'
<< : *gn-mac-build-machine
<< : *gn-mac-build-steps
electron-gn-mas-testing-fyi :
environment :
GN_CONFIG : //electron/build/args/testing.gn
RUN_TESTS : true
GN_EXTRA_ARGS : 'is_mas_build = true'
<< : *gn-mac-build-machine
<< : *gn-mac-build-steps
electron-gn-mas-debug-fyi :
environment :
GN_CONFIG : //electron/build/args/debug.gn
RUN_TESTS : false
GN_EXTRA_ARGS : 'is_mas_build = true'
<< : *gn-mac-build-machine
<< : *gn-mac-build-steps
2017-09-13 13:48:19 +00:00
workflows :
version : 2
build-arm :
jobs :
- electron-linux-arm
2017-12-13 19:42:01 +00:00
- electron-linux-arm-test :
requires :
- electron-linux-arm
2017-09-13 13:48:19 +00:00
build-arm64 :
jobs :
- electron-linux-arm64
2017-12-13 19:42:01 +00:00
- electron-linux-arm64-test :
requires :
- electron-linux-arm64
2017-09-13 13:48:19 +00:00
build-ia32 :
jobs :
- electron-linux-ia32
build-x64 :
2018-04-09 19:19:54 +00:00
jobs :
- electron-linux-x64
build-osx-x64 :
jobs :
- electron-osx-x64
build-mas-x64 :
jobs :
- electron-mas-x64
2018-07-11 18:01:15 +00:00
build-gn-linux :
jobs :
2018-07-31 23:25:51 +00:00
- electron-gn-linux-x64-debug-fyi
2018-08-16 23:28:01 +00:00
- electron-gn-linux-x64-testing-fyi
2018-07-31 23:25:51 +00:00
- electron-gn-linux-ia32-debug-fyi
2018-08-16 23:28:01 +00:00
- electron-gn-linux-ia32-testing-fyi
2018-08-13 22:43:00 +00:00
- electron-gn-linux-arm-debug-fyi
2018-08-16 23:28:01 +00:00
- electron-gn-linux-arm-testing-fyi
2018-08-13 22:43:00 +00:00
- electron-gn-linux-arm64-debug-fyi
2018-08-16 23:28:01 +00:00
- electron-gn-linux-arm64-testing-fyi
2018-08-21 17:06:28 +00:00
build-gn-mac :
jobs :
- electron-gn-mas-debug-fyi
- electron-gn-mas-testing-fyi
- electron-gn-osx-debug-fyi
- electron-gn-osx-testing-fyi
2018-05-22 17:50:44 +00:00
nightly-release-test :
triggers :
- schedule :
cron : "0 0 * * *"
filters :
branches :
only :
- master
2018-08-16 23:28:01 +00:00
- 3 -0 -x
2018-05-22 17:50:44 +00:00
- 2 -0 -x
- 1 -8 -x
- 1 -7 -x
jobs :
- electron-linux-arm-release-nightly
- electron-linux-arm64-release-nightly
- electron-linux-ia32-release-nightly
- electron-linux-x64-release-nightly
2018-08-16 23:28:01 +00:00
nightly-gn-release-test :
triggers :
- schedule :
cron : "0 0 * * *"
filters :
branches :
only :
- master
jobs :
- electron-gn-linux-x64-release-fyi
- electron-gn-linux-ia32-release-fyi
- electron-gn-linux-arm-release-fyi
- electron-gn-linux-arm64-release-fyi
2018-08-21 17:06:28 +00:00
- electron-gn-mas-release-fyi
- electron-gn-osx-release-fyi