From 675201ab72bc98fa8b26aaaf03f5870ad3006842 Mon Sep 17 00:00:00 2001 From: eug-vs Date: Tue, 7 Apr 2020 16:00:45 +0300 Subject: build: add pages script, deploy on push --- .circleci/config.yml | 42 ++++++++++++++++++++++++++++++++---------- package.json | 6 ++++-- 2 files changed, 36 insertions(+), 12 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 84c6a35..e3c381b 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -29,7 +29,25 @@ jobs: name: Test syntax and perform type checking command: npm test - deploy: + deploy_pages: + <<: *defaults + steps: + - checkout + - restore_cache: + keys: + - v1-dependencies-{{ checksum "package.json" }} + # fallback to using the latest cache if no exact match is found + - v1-dependencies- + + - add_ssh_keys: + fingerprints: + - "02:a9:ad:b9:38:7c:39:70:20:ee:92:4c:86:27:43:9d" + + - run: + name: Deploy to gh-pages + command: npm run deploy-pages + + publish_package: <<: *defaults steps: - checkout @@ -42,9 +60,10 @@ jobs: - run: name: Authenticate with registry command: echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" > ~/repo/.npmrc + - run: - name: Deploy package - command: npm run deploy + name: Publish package to NPM + command: npm run publish-package workflows: @@ -57,17 +76,20 @@ workflows: deploy: jobs: - checkout_and_test: + - deploy_pages: filters: branches: - ignore: /.*/ - tags: - only: /^v.*/ - - deploy: + only: develop + requires: + - checkout_and_test + + publish: + jobs: + - checkout_and_test: + - publish_package: filters: branches: - ignore: /.*/ - tags: - only: /^v.*/ + only: master requires: - checkout_and_test diff --git a/package.json b/package.json index a915372..847abef 100644 --- a/package.json +++ b/package.json @@ -12,8 +12,10 @@ "start": "react-scripts start", "lint": "eslint . --ext ts,tsx --max-warnings 0", "test": "npm run lint && tsc", - "build": "rm -rf dist && tsc --project tsconfig.release.json", - "deploy": "npm run lint && npm run build && npm publish --public" + "build-pages": "react-scripts build", + "deploy-pages": "gh-pages -d build", + "compile-dist": "rm -rf dist && tsc --project tsconfig.release.json", + "publish-package": "npm run lint && npm run build && npm publish --public" }, "license": "MIT", "dependencies": { -- cgit v1.2.3