Skip to content

Enabled deployment to production from dev branch which is already pro… #17

Enabled deployment to production from dev branch which is already pro…

Enabled deployment to production from dev branch which is already pro… #17

name: 'Deploy Production'
concurrency: prod
on:
push:
branches:
- main
permissions:
id-token: write # This is required for requesting the JWT
contents: read # This is required for actions/checkout
jobs:
deploy:
name: Build & Deploy production using SST
environment: production
runs-on: ubuntu-latest
env:
ONE_INCH_API_KEY: ${{ secrets.ONE_INCH_API_KEY }}
ONE_INCH_API_VERSION: ${{ secrets.ONE_INCH_API_VERSION }}
ONE_INCH_API_URL: ${{ secrets.ONE_INCH_API_URL }}
ONE_INCH_ALLOWED_SWAP_PROTOCOLS: ${{ secrets.ONE_INCH_ALLOWED_SWAP_PROTOCOLS }}
ONE_INCH_SWAP_CHAIN_IDS: ${{ secrets.ONE_INCH_SWAP_CHAIN_IDS }}
ONE_INCH_API_SPOT_URL: ${{ secrets.ONE_INCH_API_SPOT_URL }}
ONE_INCH_API_SPOT_VERSION: ${{ secrets.ONE_INCH_API_SPOT_VERSION }}
ONE_INCH_API_SPOT_KEY: ${{ secrets.ONE_INCH_API_SPOT_KEY }}
MAINNET_RPC_URL: ${{ secrets.MAINNET_RPC_URL }}
SUBGRAPH_BASE: ${{ secrets.SUBGRAPH_BASE }}
RPC_GATEWAY: ${{ secrets.RPC_GATEWAY }}
DEBANK_API_KEY: ${{ secrets.DEBANK_API_KEY }}
DEBANK_API_URL: ${{ secrets.PROD_DEBANK_API_URL }}
FUNCTIONS_API_URL: ${{ secrets.FUNCTIONS_API_URL }}
POWERTOOLS_LOG_LEVEL: ${{ vars.POWERTOOLS_LOG_LEVEL }}
REDIS_CACHE_URL: ${{ secrets.REDIS_CACHE_URL }}
REDIS_CACHE_USER: ${{ secrets.REDIS_CACHE_USER }}
REDIS_CACHE_PASSWORD: ${{ secrets.REDIS_CACHE_PASSWORD }}
VPC_ID: ${{ secrets.VPC_ID }}
SECURITY_GROUP_ID: ${{ secrets.SECURITY_GROUP_ID }}
RAYS_DB_WRITE_CONNECTION_STRING: ${{ secrets.RAYS_DB_WRITE_CONNECTION_STRING }}
RAYS_DB_READ_CONNECTION_STRING: ${{ secrets.RAYS_DB_READ_CONNECTION_STRING }}
CONFIG_URL: ${{ secrets.CONFIG_URL }}
CONFIG_URL_RAYS: ${{ secrets.CONFIG_URL_RAYS }}
BORROW_DB_READ_CONNECTION_STRING: ${{ secrets.BORROW_DB_READ_CONNECTION_STRING }}
CONTENTFUL_ACCESS_TOKEN: ${{ secrets.CONTENTFUL_ACCESS_TOKEN }}
CONTENTFUL_PREVIEW_ACCESS_TOKEN: ${{ secrets.CONTENTFUL_PREVIEW_ACCESS_TOKEN }}
CONTENTFUL_SPACE_ID: ${{ secrets.CONTENTFUL_SPACE_ID }}
steps:
- name: Git clone the repository
uses: actions/checkout@v3
- name: Cache turbo build setup
uses: actions/cache@v3
with:
path: .turbo
key: ${{ runner.os }}-turbo-${{ github.sha }}
restore-keys: |
${{ runner.os }}-turbo-
- uses: pnpm/action-setup@v2.0.1
with:
version: 8.14.1
- name: Setup Node.js environment
uses: actions/setup-node@v3
with:
node-version: 20
cache: 'pnpm'
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ secrets.AWS_ROLE }}
aws-region: ${{ secrets.AWS_REGION }}
- name: Install dependencies
run: pnpm install
- name: Prebuild
run:
pnpm prebuild --filter=./packages/* --filter=./external-api/* --filter=./summerfi-api/*
- name: Build
run: pnpm build --filter=./packages/* --filter=./external-api/* --filter=./summerfi-api/*
- name: Deploy app
run: |
pnpm run sst:deploy:prod