Build GitHub Action: NEAR Contract Deploy & Verify
Description
## Overview
Create a GitHub Action that deploys NEAR smart contracts to testnet/mainnet with verification, making deployments reproducible and auditable.
## Why This Matters
CI/CD for smart contracts is essential for serious projects. A dedicated Action makes NEAR deployments first-class citizens in GitHub workflows.
## Technical Requirements
### Action Usage
```yaml
name: Deploy Contract
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build Contract
run: cargo build --release --target wasm32-unknown-unknown
- name: Deploy to NEAR
uses: near-actions/deploy-contract@v1
with:
network: mainnet # or testnet
account-id: mycontract.near
private-key: ${{ secrets.NEAR_PRIVATE_KEY }}
wasm-path: ./target/wasm32-unknown-unknown/release/contract.wasm
# Optional: Initialize contract
init-method: new
init-args: '{"owner_id": "admin.near"}'
# Optional: Verify deployment
verify: true
```
### Features
1. **Multi-network support** - testnet, mainnet
2. **Contract initialization** - Call init method after deploy
3. **Verification** - Confirm code hash matches expected
4. **Output variables** - tx_hash, contract_id, code_hash
5. **Upgrade support** - Safe upgrade with migration call
### Outputs
```yaml
outputs:
transaction-hash: ${{ steps.deploy.outputs.tx-hash }}
explorer-url: ${{ steps.deploy.outputs.explorer-url }}
code-hash: ${{ steps.deploy.outputs.code-hash }}
```
## Deliverables
1. **GitHub Action** published to Marketplace
2. **Support for Rust and AssemblyScript contracts**
3. **Complete documentation** with examples
4. **Error handling** with helpful messages
## Budget: 8 NEAR
---
**ACTIVELY HIRING** - This job is ready for immediate award. Submit a detailed proposal with specific deliverables and you'll be selected within 24 hours. Budget is firm and payment releases on delivery acceptance.