diff --git a/.circleci/config.yml b/.circleci/config.yml index 77059c7ae..f480933ab 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,4 +1,5 @@ version: 2 + references: container_config: &container_config docker: @@ -7,6 +8,13 @@ references: TARGET_ARCH: x64 working_directory: ~/neon-wallet + win_config: &win_config + docker: + - image: electronuserland/builder:wine + environment: + TARGET_ARCH: x64 + working_directory: ~/neon-wallet + workspace_root: &workspace_root ~/neon-wallet @@ -36,6 +44,7 @@ jobs: root: *workspace_root paths: - dist/* + test: <<: *container_config steps: @@ -61,11 +70,55 @@ jobs: - path: artifacts/ - destination: yarnpkg + deploy_win64: + <<: *win_config + steps: + - checkout + - restore_cache: + key: neon-wallet-{{ checksum "yarn.lock" }} + - run: apt-get -y update + - run: apt-get -y install libusb-1.0-0-dev icnsutils graphicsmagick libudev-dev + - run: apt-get install --no-install-recommends -y gcc-multilib g++-multilib + - run: yarn + - run: yarn assets + - run: yarn build -w --x64 + - store_artifacts: + path: dist + destination: build + + deploy_linux: + <<: *container_config + steps: + - checkout + - restore_cache: + key: neon-wallet-{{ checksum "yarn.lock" }} + - run: apt-get -y update + - run: apt-get -y install libusb-1.0-0-dev icnsutils graphicsmagick libudev-dev + - run: yarn + - run: yarn dist + - store_artifacts: + path: dist + destination: build + workflows: version: 2 - build-test-and-deploy: + build_test: jobs: - build - test: requires: - build + deploy: + jobs: + - deploy_win64: + filters: + branches: + ignore: /.*/ + tags: + only: /[0-9]+(\.[0-9]+)+.*/ + - deploy_linux: + filters: + branches: + ignore: /.*/ + tags: + only: /[0-9]+(\.[0-9]+)+.*/