From 8008d2d4384801b8d2b3d22e3b569634bfbdbda7 Mon Sep 17 00:00:00 2001 From: poma Date: Tue, 15 Dec 2020 21:13:12 +0300 Subject: [PATCH] enable CI --- .github/workflows/build.yml | 141 ++++++++++++++++++------------------ package.json | 2 +- 2 files changed, 71 insertions(+), 72 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e4dd23b..b900d48 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -12,74 +12,73 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 -# - uses: actions/setup-node@v1 -# with: -# node-version: 12 -# - run: yarn install -# # Disabled until the repo is public because of performance issues -# # - run: yarn test -# - run: yarn lint -# - name: Telegram Failure Notification -# uses: appleboy/telegram-action@0.0.7 -# if: failure() -# with: -# message: ❗ Build failed for [${{ github.repository }}](https://github.com/${{ github.repository }}/actions) because of ${{ github.actor }} -# format: markdown -# to: ${{ secrets.TELEGRAM_CHAT_ID }} -# token: ${{ secrets.TELEGRAM_BOT_TOKEN }} -# -# publish: -# runs-on: ubuntu-latest -# needs: build -# if: startsWith(github.ref, 'refs/tags') -# steps: -# - name: Checkout -# uses: actions/checkout@v2 -# -# - name: Install dependencies -# run: yarn install -# -# - name: NPM login -# # NPM doesn't understand env vars and needs auth file lol -# run: echo "//registry.npmjs.org/:_authToken=${NPM_TOKEN}" > ~/.npmrc -# env: -# NPM_TOKEN: ${{ secrets.NPM_TOKEN }} -# -# - name: Set vars -# id: vars -# run: | -# echo "::set-output name=version::$(echo ${GITHUB_REF#refs/tags/v})" -# echo "::set-output name=repo_name::$(echo ${GITHUB_REPOSITORY#*/})" -# -# - name: Check package.json version vs tag -# run: | -# [ ${{ steps.vars.outputs.version }} = $(grep '"version":' package.json | grep -o "[0-9.]*") ] || (echo "Git tag doesn't match version in package.json" && false) -# -# - name: Publish to npm -# run: npm publish -# -# - name: Create GitHub Release Draft -# uses: actions/create-release@v1 -# with: -# tag_name: ${{ github.ref }} -# release_name: Release ${{ steps.vars.outputs.version }} -# draft: true -# env: -# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} -# -# - name: Telegram Notification -# uses: appleboy/telegram-action@0.0.7 -# with: -# message: 🚀 Published a [${{ steps.vars.outputs.repo_name }}](https://github.com/${{ github.repository }}) version [${{ steps.vars.outputs.version }}](https://hub.docker.com/repository/docker/${{ github.repository }}) to docker hub -# format: markdown -# to: ${{ secrets.TELEGRAM_CHAT_ID }} -# token: ${{ secrets.TELEGRAM_BOT_TOKEN }} -# -# - name: Telegram Failure Notification -# uses: appleboy/telegram-action@0.0.7 -# if: failure() -# with: -# message: ❗ Failed to publish [${{ steps.vars.outputs.repo_name }}](https://github.com/${{ github.repository }}/actions) because of ${{ env.GITHUB_ACTOR }} -# format: markdown -# to: ${{ secrets.TELEGRAM_CHAT_ID }} -# token: ${{ secrets.TELEGRAM_BOT_TOKEN }} + - uses: actions/setup-node@v1 + with: + node-version: 12 + - run: yarn install + - run: yarn test + - run: yarn lint + - name: Telegram Failure Notification + uses: appleboy/telegram-action@0.0.7 + if: failure() + with: + message: ❗ Build failed for [${{ github.repository }}](https://github.com/${{ github.repository }}/actions) because of ${{ github.actor }} + format: markdown + to: ${{ secrets.TELEGRAM_CHAT_ID }} + token: ${{ secrets.TELEGRAM_BOT_TOKEN }} + + publish: + runs-on: ubuntu-latest + needs: build + if: startsWith(github.ref, 'refs/tags') + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: Install dependencies + run: yarn install + + - name: NPM login + # NPM doesn't understand env vars and needs auth file lol + run: echo "//registry.npmjs.org/:_authToken=${NPM_TOKEN}" > ~/.npmrc + env: + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + + - name: Set vars + id: vars + run: | + echo "::set-output name=version::$(echo ${GITHUB_REF#refs/tags/v})" + echo "::set-output name=repo_name::$(echo ${GITHUB_REPOSITORY#*/})" + + - name: Check package.json version vs tag + run: | + [ ${{ steps.vars.outputs.version }} = $(grep '"version":' package.json | grep -o "[0-9.]*") ] || (echo "Git tag doesn't match version in package.json" && false) + + - name: Publish to npm + run: npm publish + + - name: Create GitHub Release Draft + uses: actions/create-release@v1 + with: + tag_name: ${{ github.ref }} + release_name: Release ${{ steps.vars.outputs.version }} + draft: true + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Telegram Notification + uses: appleboy/telegram-action@0.0.7 + with: + message: 🚀 Published a [${{ steps.vars.outputs.repo_name }}](https://github.com/${{ github.repository }}) version [${{ steps.vars.outputs.version }}](https://hub.docker.com/repository/docker/${{ github.repository }}) to docker hub + format: markdown + to: ${{ secrets.TELEGRAM_CHAT_ID }} + token: ${{ secrets.TELEGRAM_BOT_TOKEN }} + + - name: Telegram Failure Notification + uses: appleboy/telegram-action@0.0.7 + if: failure() + with: + message: ❗ Failed to publish [${{ steps.vars.outputs.repo_name }}](https://github.com/${{ github.repository }}/actions) because of ${{ env.GITHUB_ACTOR }} + format: markdown + to: ${{ secrets.TELEGRAM_CHAT_ID }} + token: ${{ secrets.TELEGRAM_BOT_TOKEN }} diff --git a/package.json b/package.json index 22b9ed5..2c2e7bd 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "rlp": "^2.2.6", "solhint-plugin-prettier": "^0.0.4", "solidity-coverage": "^0.7.7", - "torn-token": "git+https://github.com/tornadocash/torn-token.git#ed68304596f73bf746321e1cd2454979688ef1dd", + "torn-token": "^1.0.0", "truffle": "^5.1.29", "truffle-flattener": "^1.4.4", "truffle-hdwallet-provider": "^1.0.17",