Full build: Vite/React acid-terminal frontend (BEARER design system, Panchang/Sentient/Fragment Mono, neon layer, palette audit script), HoodquidityVaults Foundry contracts (single+dual deposits via Chainlink-style feeds, hybrid exit, 10% platform fee, boost, Genesis LP), Reown AppKit wallet connect with Robinhood Chain testnet (46630), live data from Dexscreener and onchain reads, partner portal, design-sync setup for claude.ai/design. Deploy: static via Forgejo Actions platform, BUILD_DIR=apps/web/dist (.env). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
97 lines
3.1 KiB
YAML
97 lines
3.1 KiB
YAML
name: Release Upgradeable
|
|
|
|
on:
|
|
workflow_dispatch: {}
|
|
|
|
jobs:
|
|
state:
|
|
name: Check state
|
|
permissions:
|
|
pull-requests: read
|
|
if: ${{ !endsWith(github.repository, '-upgradeable') }}
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v7
|
|
with:
|
|
repository: ${{ github.repository }}-upgradeable
|
|
ref: ${{ github.ref }}
|
|
- uses: actions/checkout@v7
|
|
with:
|
|
ref: ${{ github.ref }}
|
|
path: lib/openzeppelin-contracts
|
|
- name: Set up environment
|
|
uses: ./.github/actions/setup
|
|
- name: Check upgradeable
|
|
id: check-upgradeable
|
|
run: bash scripts/release/workflow/check-upgradeable.sh
|
|
outputs:
|
|
publish: ${{ steps.check-upgradeable.outcome }}
|
|
is_prerelease: ${{ steps.check-upgradeable.outputs.is_prerelease }}
|
|
|
|
# copied from release-cycle.yml
|
|
publish:
|
|
needs: state
|
|
name: Publish to npm
|
|
environment: npm
|
|
permissions:
|
|
id-token: write
|
|
if: needs.state.outputs.publish == 'success' # Note: changed from 'true' to 'success' to support the way publish is computed
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v7
|
|
with:
|
|
repository: ${{ github.repository }}-upgradeable
|
|
ref: ${{ github.ref }}
|
|
- uses: actions/checkout@v7
|
|
with:
|
|
ref: ${{ github.ref }}
|
|
path: lib/openzeppelin-contracts
|
|
- name: Set up environment
|
|
uses: ./.github/actions/setup
|
|
- id: pack
|
|
name: Pack
|
|
run: bash scripts/release/workflow/pack.sh
|
|
env:
|
|
PRERELEASE: ${{ needs.state.outputs.is_prerelease }}
|
|
- name: Upload tarball artifact
|
|
uses: actions/upload-artifact@v7
|
|
with:
|
|
name: ${{ github.ref_name }}-upgradeable
|
|
path: ${{ steps.pack.outputs.tarball }}
|
|
- name: Publish
|
|
run: bash scripts/release/workflow/publish.sh
|
|
env:
|
|
TARBALL: ${{ steps.pack.outputs.tarball }}
|
|
TAG: ${{ steps.pack.outputs.tag }}
|
|
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
NPM_CONFIG_PROVENANCE: false
|
|
- name: Create Github Release
|
|
uses: actions/github-script@v9
|
|
env:
|
|
PRERELEASE: ${{ needs.state.outputs.is_prerelease }}
|
|
TARGET_COMMIT: ${{ github.ref }}
|
|
REPO_SUFFIX: -upgradeable
|
|
with:
|
|
github-token: ${{ secrets.GH_TOKEN_UPGRADEABLE }}
|
|
script: await require('./scripts/release/workflow/github-release.js')({ github, context })
|
|
outputs:
|
|
tarball_name: ${{ steps.pack.outputs.tarball_name }}
|
|
|
|
integrity_check:
|
|
needs: publish
|
|
name: Tarball Integrity Check
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v7
|
|
with:
|
|
repository: ${{ github.repository }}-upgradeable
|
|
ref: ${{ github.ref }}
|
|
- name: Download tarball artifact
|
|
id: artifact
|
|
uses: actions/download-artifact@v8
|
|
with:
|
|
name: ${{ github.ref_name }}-upgradeable
|
|
- name: Check integrity
|
|
run: bash scripts/release/workflow/integrity-check.sh
|
|
env:
|
|
TARBALL: ${{ steps.artifact.outputs.download-path }}/${{ needs.publish.outputs.tarball_name }}
|