Skip to content

feat: add Soroban CLI network config and deploy pipeline#27

Merged
ayshadogo merged 1 commit intoDfunder:mainfrom
OthmanImam:feat/issue-5-pipeline
Mar 6, 2026
Merged

feat: add Soroban CLI network config and deploy pipeline#27
ayshadogo merged 1 commit intoDfunder:mainfrom
OthmanImam:feat/issue-5-pipeline

Conversation

@OthmanImam
Copy link
Contributor

Add Soroban CLI Network Configuration and Deployment Pipeline

Summary

This PR introduces support for configuring and deploying Soroban smart contracts
within the Contract Fox workspace. It sets up default network profiles, adds a
convenience deploy script, updates documentation, and provides environment
variable templates.

Key Changes

  • Soroban config dir: .soroban/config/config.toml with testnet and
    mainnet entries.
  • Deployment script: scripts/deploy.sh builds and deploys all contracts
    to a chosen network; automatically adds missing network profiles.
  • Docs: new docs/DEPLOY.md detailing network setup, script usage, and
    contract invocation examples.
  • Environment template: .env.example updated with
    SOROBAN_RPC_URL and SOROBAN_NETWORK_PASSPHRASE entries.
  • Repo metadata: .gitignore updated to ignore .env; README.md links to
    deployment docs and explains Soroban network configuration.

Motivation

Developers need a reliable, reproducible way to deploy contracts to Soroban
public networks. Prior to this work, setup was manual and scattered across
documentation. The added script and configuration centralize these operations and
make onboarding easier.

Testing

  • Manual inspection of deploy.sh for syntax and logic (POSIX compliant).
  • Verified Makefile already supports deploy-testnet/deploy-mainnet.
  • Created .env.example and confirmed .gitignore blocks .env.
  • Documentation builds and renders as Markdown.

Usage

chmod +x ./scripts/deploy.sh
./scripts/deploy.sh testnet  # builds and deploys to testnet
./scripts/deploy.sh mainnet # deploys to mainnet

The script prints the contract IDs returned by the Soroban CLI, satisfying the
acceptance criteria.

Notes

  • Requires the Soroban CLI to be installed (cargo install soroban-cli).
  • On Windows, a POSIX shell (Git Bash/WSL) is necessary to run deploy.sh.

Closes: #5

@ayshadogo ayshadogo merged commit d52d8e5 into Dfunder:main Mar 6, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Setup Soroban CLI and Deploy Pipeline

2 participants