Build SuiNS TX #180
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: Build SuiNS TX | |
on: | |
workflow_dispatch: | |
inputs: | |
transaction_type: | |
description: 'select transaction type to create' | |
type: choice | |
options: | |
- Create Deepbook Pools | |
- Multi Purpose Operation | |
- Profits to Treasury | |
- Transfer Reserved Names | |
sui_tools_image: | |
description: 'image reference of sui_tools' | |
default: 'mysten/sui-tools:mainnet' | |
rpc: | |
description: 'RPC url' | |
required: true | |
default: 'https://suins-rpc.mainnet.sui.io:443' | |
type: string | |
gas_object_id: | |
description: 'object id to get gas from for multisig transaction' | |
required: true | |
type: string | |
default: '0xae841028e9c704badbeb0f3f837b371f663bf647e6f9c984ce47284869a8754e' | |
jobs: | |
suins: | |
name: suins create tx | |
runs-on: ubuntu-latest | |
steps: | |
- name: Selected transaction type | |
run: | | |
echo ${{ inputs.transaction_type }} | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 1 | |
- name: Install Homebrew | |
run: | | |
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" | |
echo "/home/linuxbrew/.linuxbrew/bin" >> $GITHUB_PATH | |
- name: Install Sui using Homebrew | |
run: brew install sui | |
- name: NPM BUILD TX Environment | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
- name: Do a global PNPM install | |
run: | | |
npm install -g pnpm | |
- name: Set up working directory | |
run: | | |
pnpm install | |
- name: Create Deepbook Pools | |
if: ${{ inputs.transaction_type == 'Create Deepbook Pools' }} | |
env: | |
NODE_ENV: production | |
GAS_OBJECT: ${{ inputs.gas_object_id }} | |
NETWORK: mainnet | |
ORIGIN: gh_action | |
run: | | |
cd scripts && pnpm create-deepbook-pools | |
- name: Profits to Treasury | |
if: ${{ inputs.transaction_type == 'Profits to Treasury' }} | |
env: | |
NODE_ENV: production | |
GAS_OBJECT: ${{ inputs.gas_object_id }} | |
NETWORK: mainnet | |
ORIGIN: gh_action | |
run: | | |
cd scripts && pnpm withdraw:profits | |
- name: Transfer Reserved Names | |
if: ${{ inputs.transaction_type == 'Transfer Reserved Names' }} | |
env: | |
NODE_ENV: production | |
GAS_OBJECT: ${{ inputs.gas_object_id }} | |
NETWORK: mainnet | |
ORIGIN: gh_action | |
run: | | |
cd scripts && pnpm transfer::names | |
- name: Multi Purpose Operation | |
if: ${{ inputs.transaction_type == 'Multi Purpose Operation' }} | |
env: | |
NODE_ENV: production | |
GAS_OBJECT: ${{ inputs.gas_object_id }} | |
NETWORK: mainnet | |
ORIGIN: gh_action | |
RPC_URL: ${{ inputs.rpc }} | |
run: | | |
cd scripts && pnpm ts-node transactions/mass-ops.ts | |
- name: Finalize Auctions And Discount | |
if: ${{ inputs.transaction_type == 'Finalize Auctions And Discount' }} | |
env: | |
NODE_ENV: production | |
GAS_OBJECT: ${{ inputs.gas_object_id }} | |
NETWORK: mainnet | |
ORIGIN: gh_action | |
RPC_URL: ${{ inputs.rpc }} | |
run: | | |
cd scripts && pnpm ts-node transactions/discount-and-auction-profits.ts | |
- name: Show Transaction Data (To sign) | |
run: | | |
cat scripts/tx/tx-data.txt | |
- name: Upload Transaction Artifact | |
uses: actions/upload-artifact@v3 | |
with: | |
name: transaction-data | |
path: scripts/tx |