This repository has been archived by the owner on Sep 5, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #4022 from ethereum/develop
`develop` changes into `master`
- Loading branch information
Showing
24 changed files
with
489 additions
and
743 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,143 @@ | ||
# | ||
# TODO: compilation | ||
# TODO: store_artifacts | ||
# TODO: name commands properly | ||
# TODO: mac job | ||
# TODO: improve caching | ||
# TODO: fix `xvfb gulp test` command | ||
# TODO: windows job | ||
# TODO: store_test_results | ||
# TODO: docker images | ||
# | ||
|
||
defaults: &defaults | ||
working_directory: /home/circleci/mist | ||
docker: | ||
- image: circleci/node:8.9.4-browsers | ||
environment: | ||
# Setting variable to fix node-gyp build error: | ||
# https://github.com/nodejs/node/issues/7173#issuecomment-224772258 | ||
- CXX_host: 'g++ -m32' | ||
|
||
linux_dependencies: &linux_dependencies | ||
name: Linux package dependencies | ||
# Installing multilib (build for 32 and 64 architectures): | ||
# https://www.quora.com/How-do-I-fix-fatal-error-sys-cdefs-h-file-not-found-include-sys-cdefs-h | ||
command: | | ||
sudo apt-get update && | ||
sudo apt-get install --no-install-recommends -y gcc-multilib g++-multilib icnsutils xz-utils && | ||
sudo apt-get install graphicsmagick | ||
install_meteor: &install_meteor | ||
name: Installing Meteor | ||
# PATH=$PATH:$HOME/.meteor && curl -L https://raw.githubusercontent.com/arunoda/travis-ci-meteor-packages/1390e0f96162d0d70fc1e60a6b0f4f891a0e8f42/configure.sh | /bin/sh | ||
command: which meteor || curl https://install.meteor.com | /bin/sh | ||
|
||
install_node_modules: &install_node_modules | ||
name: Installing node dependencies using yarn | ||
command: yarn | ||
|
||
|
||
# Javascript Node CircleCI 2.0 configuration file | ||
# | ||
# Check https://circleci.com/docs/2.0/language-javascript/ for more details | ||
# | ||
version: 2 | ||
jobs: | ||
build: | ||
<<: *defaults | ||
steps: | ||
- checkout | ||
|
||
# Download and cache dependencies | ||
- restore_cache: | ||
keys: | ||
- v1-dependencies-{{ checksum "package.json" }} | ||
# fallback to using the latest cache if no exact match is found | ||
- v1-dependencies- | ||
|
||
# Setting PATH: https://circleci.com/docs/2.0/env-vars/#setting-path | ||
- run: echo 'export PATH=`yarn global bin`:$PATH' >> $BASH_ENV | ||
|
||
- run: | ||
<<: *linux_dependencies | ||
- run: | ||
<<: *install_meteor | ||
- run: | ||
<<: *install_node_modules | ||
|
||
- save_cache: | ||
paths: | ||
- node_modules | ||
key: v1-dependencies-{{ checksum "package.json" }} | ||
- persist_to_workspace: | ||
root: /home/circleci/ | ||
paths: | ||
- mist | ||
|
||
mist-linux: | ||
<<: *defaults | ||
steps: | ||
- attach_workspace: | ||
at: /home/circleci/ | ||
|
||
- run: | ||
<<: *linux_dependencies | ||
- run: | ||
<<: *install_meteor | ||
- run: | ||
<<: *install_node_modules | ||
|
||
- run: yarn build:mist --linux | ||
|
||
- store_artifacts: | ||
path: dist_mist/release | ||
|
||
wallet-linux: | ||
<<: *defaults | ||
steps: | ||
- attach_workspace: | ||
at: /home/circleci/ | ||
|
||
- run: | ||
<<: *linux_dependencies | ||
- run: | ||
<<: *install_meteor | ||
- run: | ||
<<: *install_node_modules | ||
|
||
- run: yarn build:wallet --linux | ||
|
||
- store_artifacts: | ||
path: dist_wallet/release | ||
|
||
spectron-test: | ||
docker: | ||
- image: circleci/node:8.9.4 | ||
steps: | ||
- attach_workspace: | ||
at: /home/circleci/ | ||
- run: xvfb-run yarn test:e2e | ||
|
||
unit-test: | ||
<<: *defaults | ||
steps: | ||
- attach_workspace: | ||
at: /home/circleci/ | ||
- run: << *install_node_modules | ||
- run: yarn test:unit:once | ||
|
||
workflows: | ||
version: 2 | ||
build_and_test: | ||
jobs: | ||
- build | ||
- mist-linux: | ||
requires: | ||
- build | ||
- wallet-linux: | ||
requires: | ||
- build | ||
- unit-test: | ||
requires: | ||
- build |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1 @@ | ||
initLabels: | ||
- "Status: Triage" | ||
label: "Status: Triage" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,6 @@ | ||
[submodule "dapp-styles"] | ||
path = interface/public/dapp-styles | ||
url = git://github.com/ethereum/dapp-styles.git | ||
[submodule "meteor-dapp-wallet"] | ||
path = meteor-dapp-wallet | ||
url = https://github.com/ethereum/meteor-dapp-wallet.git |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -8,105 +8,60 @@ cache: | |
|
||
sudo: required | ||
|
||
branches: | ||
only: | ||
- develop | ||
- master | ||
- /^greenkeeper/.*$/ | ||
|
||
matrix: | ||
include: | ||
# WINDOWS cross-built from linux | ||
- os: linux | ||
dist: trusty | ||
env: | ||
- GULP_PLATFORM=win | ||
addons: | ||
apt: | ||
packages: | ||
- icnsutils | ||
- graphicsmagick | ||
- xz-utils | ||
- nsis | ||
- g++-multilib | ||
sources: | ||
- mono | ||
before_install: | ||
- sudo dpkg --add-architecture i386 && sudo add-apt-repository ppa:ubuntu-wine/ppa -y | ||
- sudo apt-get update -q | ||
- sudo apt-get install --no-install-recommends -y mono-devel ca-certificates-mono wine1.8 | ||
|
||
# LINUX | ||
- os: linux | ||
dist: trusty | ||
env: | ||
- GULP_PLATFORM=linux | ||
addons: | ||
artifacts: | ||
paths: | ||
- $( ls dist_{mist,wallet}/release/* | tr "\n" ":" ) | ||
apt: | ||
packages: | ||
- icnsutils | ||
- graphicsmagick | ||
- xz-utils | ||
- gcc-multilib | ||
- g++-multilib | ||
|
||
before_install: | ||
# prepare integration tests | ||
- export DISPLAY=:99.0; sh -e /etc/init.d/xvfb start | ||
|
||
# MAC | ||
- os: osx | ||
osx_image: xcode8.3 # currently xcode8.1+ doesn't support electron-builder macOS code-signing (https://github.com/electron-userland/electron-builder/issues/820#issuecomment-267777060) | ||
osx_image: xcode8.3 | ||
env: | ||
- GULP_PLATFORM=mac | ||
addons: | ||
artifacts: | ||
paths: | ||
- $( ls dist_{mist,wallet}/release/* | tr "\n" ":" ) | ||
before_install: | ||
- npm install -g yarn # macOS xcode8 image doesn't natively support yarn yet | ||
|
||
allow_failures: | ||
- os: osx | ||
|
||
fast_finish: true | ||
|
||
- npm install -g yarn | ||
|
||
install: | ||
- echo $PATH | ||
- PATH=$PATH:$HOME/.meteor && curl -L https://raw.githubusercontent.com/arunoda/travis-ci-meteor-packages/1390e0f96162d0d70fc1e60a6b0f4f891a0e8f42/configure.sh | /bin/sh | ||
- export PATH=$PATH:`yarn global bin` | ||
- yarn global add gulp-cli meteor-build-client [email protected] | ||
|
||
- yarn | ||
|
||
script: | ||
# disable macOS code-signing (production certificate) on develop branch | ||
# only code signs when on master | ||
- if [[ $TRAVIS_BRANCH != "master" ]]; then unset CSC_LINK CSC_KEY_PASSWORD; fi | ||
# windows code-signing on master branch | ||
- if [[ $GULP_PLATFORM == "win" && $TRAVIS_BRANCH == "master" ]]; then export CSC_LINK=$CSC_WIN_LINK && CSC_KEY_PASSWORD=$CSC_WIN_KEY_PASSWORD; fi | ||
|
||
# unit test | ||
- if [[ $GULP_PLATFORM == "linux" ]]; then yarn test:unit:once; fi | ||
script: | ||
- yarn test:unit:once | ||
|
||
# build mist | ||
- if [[ $GULP_PLATFORM == "mac" ]]; then travis_wait 60 gulp --$GULP_PLATFORM; fi # increase timeout for slower mac builds | ||
- if [[ $GULP_PLATFORM != "mac" ]]; then gulp --$GULP_PLATFORM; fi | ||
- yarn build:mist --$GULP_PLATFORM | ||
|
||
# assert creation of Mist artifacts | ||
- gulp verify-artifacts --mist --$GULP_PLATFORM | ||
|
||
# build wallet if on master branch | ||
- if [[ $TRAVIS_BRANCH == "master" ]]; then travis_wait 60 gulp --wallet --$GULP_PLATFORM; fi | ||
- yarn build:wallet --$GULP_PLATFORM | ||
|
||
# assert creation of Wallet artifacts | ||
- if [[ $TRAVIS_BRANCH == "master" ]]; then gulp verify-artifacts --wallet --$GULP_PLATFORM; fi | ||
|
||
# prepare integration tests | ||
- if [[ $TRAVIS_OS_NAME == "linux" ]]; then export DISPLAY=:99.0; sh -e /etc/init.d/xvfb start; sleep 3; fi | ||
|
||
# currently, tests should run in linux and mac | ||
- if [[ $GULP_PLATFORM != "win" ]]; then gulp test; fi | ||
- yarn test:e2e | ||
|
||
after_success: | ||
- if [[ $TRAVIS_BRANCH == "master" ]]; then gulp upload-queue --$GULP_PLATFORM && gulp upload-queue --wallet --$GULP_PLATFORM; fi | ||
|
||
- if [[ $TRAVIS_BRANCH == "master" ]]; then | ||
yarn dist:mist --$GULP_PLATFORM; | ||
yarn dist:wallet --$GULP_PLATFORM; | ||
fi | ||
|
||
notifications: | ||
webhooks: | ||
urls: | ||
- https://webhooks.gitter.im/e/33972d9e627a142c57a6 | ||
on_success: change | ||
on_failure: always | ||
on_start: never |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.