From 033fdc625c8a2c7eee91a17c4e175a6b78626c7a Mon Sep 17 00:00:00 2001 From: Stanley Yuen <102275989+stanleyyconsensys@users.noreply.github.com> Date: Wed, 1 May 2024 11:40:50 +0800 Subject: [PATCH] feat: sf 613 add cicd support for alchemy (#237) * feat: bump starknetjs to 6.6.0 * chore: remove unuse script * chore: add default config * chore: remove patching * chore: update library version * chore: update getStarkName * feat: add alchemy provider * fix: add cicd pipeline --- .github/workflows/deploy.yml | 10 ++++++++-- .github/workflows/publish-npm-dev.yml | 7 +++++-- packages/starknet-snap/.env.example | 11 +++++++++++ packages/starknet-snap/package.json | 10 +++++++--- 4 files changed, 31 insertions(+), 7 deletions(-) create mode 100644 packages/starknet-snap/.env.example diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index faeb1e84..8a24df3f 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -48,12 +48,15 @@ jobs: REACT_APP_SNAP_VERSION=${VERSION}-staging yarn workspace wallet-ui build npm --prefix ./packages/starknet-snap version --new-version ${VERSION}-staging --no-git-tag-version - SNAP_ENV=staging VOYAGER_API_KEY=${{ secrets.VOYAGER_API_KEY }} yarn workspace @consensys/starknet-snap build + yarn workspace @consensys/starknet-snap build npm publish ./packages/starknet-snap --tag staging --access public 2>&1 > /dev/null || : aws s3 sync ./packages/wallet-ui/build s3://staging.snaps.consensys.io/starknet env: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} + SNAP_ENV: staging + VOYAGER_API_KEY: ${{ secrets.VOYAGER_API_KEY }} + ALCHEMY_API_KEY: ${{ secrets.ALCHEMY_API_KEY }} if: inputs.environment == 'staging' - name: Production Deployment @@ -62,12 +65,15 @@ jobs: REACT_APP_SNAP_VERSION=${VERSION} REACT_APP_DEBUG_LEVEL=off yarn workspace wallet-ui build npm --prefix ./packages/starknet-snap version --new-version ${VERSION} --no-git-tag-version --allow-same-version - SNAP_ENV=prod VOYAGER_API_KEY=${{ secrets.VOYAGER_API_KEY }} yarn workspace @consensys/starknet-snap build + yarn workspace @consensys/starknet-snap build npm publish ./packages/starknet-snap --tag latest --access public 2>&1 > /dev/null || : aws s3 sync ./packages/wallet-ui/build s3://snaps.consensys.io/starknet env: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} + SNAP_ENV: prod + VOYAGER_API_KEY: ${{ secrets.VOYAGER_API_KEY }} + ALCHEMY_API_KEY: ${{ secrets.ALCHEMY_API_KEY }} if: inputs.environment == 'production' - name: invalid aws cloudfront cache diff --git a/.github/workflows/publish-npm-dev.yml b/.github/workflows/publish-npm-dev.yml index 22a72129..dcc99aba 100644 --- a/.github/workflows/publish-npm-dev.yml +++ b/.github/workflows/publish-npm-dev.yml @@ -15,7 +15,6 @@ jobs: publish-dev-to-npm: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - run: | yarn install --no-immutable @@ -24,7 +23,11 @@ jobs: HASH=$(git rev-parse --short HEAD) DATE=$(date +%Y%m%d) npm --prefix ./packages/starknet-snap version --new-version ${VERSION}-dev-${HASH}-${DATE} --no-git-tag-version - SNAP_ENV=dev VOYAGER_API_KEY=${{ secrets.VOYAGER_API_KEY }} yarn workspace @consensys/starknet-snap build + yarn workspace @consensys/starknet-snap build + env: + SNAP_ENV: dev + VOYAGER_API_KEY: ${{ secrets.VOYAGER_API_KEY }} + ALCHEMY_API_KEY: ${{ secrets.ALCHEMY_API_KEY }} - uses: actions/setup-node@v3 with: diff --git a/packages/starknet-snap/.env.example b/packages/starknet-snap/.env.example new file mode 100644 index 00000000..43147264 --- /dev/null +++ b/packages/starknet-snap/.env.example @@ -0,0 +1,11 @@ +# Description: Environment variables for snap env +# Possible Options: dev | prod | staging +# Default: prod +# Required: false +SNAP_ENV=dev +# Description: Environment variables for API key of VOYAGER +# Required: false +VOYAGER_API_KEY= +# Description: Environment variables for API key of ALCHEMY +# Required: false +ALCHEMY_API_KEY= \ No newline at end of file diff --git a/packages/starknet-snap/package.json b/packages/starknet-snap/package.json index 0145e864..c016f764 100644 --- a/packages/starknet-snap/package.json +++ b/packages/starknet-snap/package.json @@ -2,19 +2,23 @@ "name": "@consensys/starknet-snap", "version": "2.6.2", "license": "(Apache-2.0 OR MIT)", - "main": "src/index.ts", "repository": { "type": "git", "url": "https://github.com/ConsenSys/starknet-snap.git" }, + "main": "./dist/bundle.js", + "files": [ + "dist/", + "images/", + "snap.manifest.json" + ], "scripts": { "setup": "yarn install --immutable && yarn allow-scripts", "build:clean": "yarn clean && yarn build", "build": "mm-snap build", "serve": "mm-snap serve", "clean": "rimraf js && rimraf dist", - "watch": "yarn build && concurrently --kill-others --names SNAP,SERVE -c bgMagenta.bold,bgGreen.bold \"yarn run watch:snap\" \"yarn run serve\"", - "watch:snap": "cross-env SNAP_ENV=prod mm-snap watch", + "watch": "mm-snap watch", "prettier": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"", "lint": "eslint . --max-warnings 0 -f json -o eslint-report.json", "lint:fix": "eslint '**/*.{js,ts,tsx}' --fix",