Skip to content

feat(deploy): add local contract deployment script validation and test suite (#715) - #737

Open
ravendevhub wants to merge 1 commit into
Core-Foundry:mainfrom
ravendevhub:feat/deploy-script-validation-715
Open

feat(deploy): add local contract deployment script validation and test suite (#715)#737
ravendevhub wants to merge 1 commit into
Core-Foundry:mainfrom
ravendevhub:feat/deploy-script-validation-715

Conversation

@ravendevhub

Copy link
Copy Markdown

Summary

Resolves #715 by introducing a robust local contract deployment and environment validation utility (scripts/deploy-contract.sh) requiring explicit network parameters, failing with actionable instructions when prerequisites are absent, cleanly identifying deployed contracts, and protecting secret keys.

Changes

  1. Deployment & Validation Utility (scripts/deploy-contract.sh):
    • Enforces explicit --network=<local|testnet|mainnet> selection.
    • Validates environment secrets and compiled WASM presence with actionable instructions.
    • Redacts and protects private keys from console/log output.
    • Outputs deployed contract ID and WASM bytecode hash in structured format.
  2. Automated Test Suite (scripts/deploy-contract.test.sh):
    • Tests parameter enforcement, dry-run simulation, and secret non-leakage.
  3. Documentation (docs/LOCAL_DEPLOYMENT_VALIDATION.md):
    • Comprehensive usage and verification guide.

Acceptance Criteria

  • Missing deployment configuration produces actionable errors.
  • Network selection is explicit.
  • Deployment output identifies the deployed contract.
  • Secrets are not printed.

…t suite (Core-Foundry#715)

- Require explicit network selection (--network=local|testnet|mainnet)
- Validate environment and bytecode prerequisites with actionable error output
- Guarantee zero secret key leakage with redacted status reporting
- Identify deployed contract ID and WASM hash in structured output
- Add test suite in deploy-contract.test.sh and docs in docs/LOCAL_DEPLOYMENT_VALIDATION.md
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.

Add Local Contract Deployment Script Validation

1 participant