BME Deployment Flow:
- Mint ACT first: User converts AKT to ACT via
akash tx bme mint-act - Wait for epoch: ACT appears in balance after ~1 minute
- Create deployment: SDL pricing and deposit must use
uact(notuakt) - Escrow funded with ACT: User’s ACT balance decreases
CRITICAL: SDL Pricing Change
With BME enabled, SDL pricing must be specified in uact instead of uakt. Example:
profiles: compute: web: resources: cpu: units: 0.5 memory: size: 512Mi storage: size: 1Gi placement: dcloud: pricing: web: denom: uact # <-- Must be uact, not uakt amount: 1000ACT Minting Delay
ACT mints are processed in epochs (default: every 10 blocks). After akash tx bme mint-act, the ACT will NOT appear in your bank balance immediately. Wait ~1 minute (10 blocks × ~6 sec/block) then check balance.
Required Tools
akashCLI configured for testnetprovider-servicesbinary (required for sending manifests) — download from: https://github.com/akash-network/provider/releases
CLI Deployment Guide: For detailed deployment instructions, see: https://akash.network/docs/developers/deployment/cli/
⚠️ Important: Close all test deployments when Category 1 testing is complete to avoid unnecessary escrow drain.
Test 1.1: Create Standard Deployment
Objective: Verify complete deployment lifecycle from ACT minting through active lease, validating BME state at each step
Preconditions:
- Provider is online and bidding
- User has AKT balance (from faucet)
provider-servicesbinary installed
Step 1.1.1: Mint ACT (Required Before Deployment)
Background: With BME, deployments require ACT for escrow deposits. Users must first convert AKT to ACT.
User Actions:
-
Mint ACT from AKT:
Terminal window akash tx bme mint-act 100000000uakt --from <wallet> -y(This converts 100 AKT to ACT)
-
Wait for epoch processing (~1 minute):
Terminal window sleep 60 -
Verify ACT appeared in balance:
Terminal window akash query bank balances <user-address>
Expected Results:
- AKT balance decreased by ~100 AKT
- ACT balance appears (amount = 100 × oracle_price)
Step 1.1.2: Record Pre-Deployment Baseline
User Actions:
- Record baseline state:
Terminal window akash query bank balances <user-address>akash query bme vault-stateakash query oracle prices | head -n 15
Record These Values:
| Metric | Baseline Value |
|---|---|
| User AKT Balance | _______ |
| User ACT Balance | _______ |
| VaultAKT | _______ |
| OutstandingACT | _______ |
| RemintCredits | _______ |
| Oracle Price (AKT/USD) | _______ |
Step 1.1.3: Create Deployment
User Actions:
-
Ensure SDL file (
deploy.yml) hasuactpricing:placement:akash:pricing:web:denom: uact # MUST be uactamount: 100000 -
Submit deployment transaction with uact deposit:
Terminal window akash tx deployment create deploy.yml \--from <wallet> \--deposit 5000000uact \-y -
Note the DSEQ (deployment sequence) from output
-
Verify deployment created:
Terminal window akash query deployment get --owner <user-address> --dseq <dseq>
Expected Results:
- Transaction succeeds
- Deployment state shows
active - Order created for the deployment
Step 1.1.4: Accept Bid and Create Lease
User Actions:
-
Wait 10-30 seconds for provider to bid, then query bids:
Terminal window akash query market bid list --owner <user-address> --dseq <dseq> -
Accept the bid (creates lease):
Terminal window akash tx market lease create \--dseq <dseq> \--provider <provider-address> \--from <wallet> \-y -
Verify lease created:
Terminal window akash query market lease list --owner <user-address> --dseq <dseq>
Expected Results:
- At least one bid appears
- Lease state shows
active
Step 1.1.5: Send Manifest
Note: This step requires the provider-services binary. Download from: https://github.com/akash-network/provider/releases
User Actions:
-
Send manifest to provider:
Terminal window provider-services send-manifest deploy.yml \--dseq <dseq> \--provider <provider-address> \--from <wallet> -
Verify deployment is running:
Terminal window akash query deployment get --owner <user-address> --dseq <dseq>
Expected Results:
- Manifest send shows
status: PASS - Deployment is active and running
Step 1.1.6: Post-Deployment Validation
User Actions:
- Query updated state:
Terminal window akash query bank balances <user-address>akash query bme vault-state
Expected Results:
- User ACT balance decreased by deposit amount (~5 ACT)
- User AKT balance unchanged (minus gas fees)
- Deployment escrow shows funded balance in ACT
Key Insight: BME conversion (AKT → ACT) happens at mint time (Step 1.1.1), not at deployment time. Deployment simply uses the user’s existing ACT balance.
⚠️ Important: Close this deployment when testing is complete:
akash tx deployment close --dseq <dseq> --from <wallet> -yProof to Submit:
- Pre-deployment ACT balance
- Deployment create tx hash and DSEQ (from tx output)
- Lease status showing service ready:
Terminal window provider-services lease-status --dseq <dseq> --provider <provider> --from <wallet> - Post-deployment ACT balance (confirming escrow deducted)
Test 1.2: Create Deployment - Insufficient Funds
Objective: Verify deployment fails gracefully with insufficient ACT balance
User Actions:
-
Check current ACT balance:
Terminal window akash query bank balances <user-address>Note the ACT balance (or confirm it’s 0)
-
Attempt deployment with deposit exceeding ACT balance:
Terminal window akash tx deployment create deploy.yml \--from <wallet> \--deposit 999999999999uact \-y -
Observe error
Expected Results:
- Transaction fails with insufficient funds error
- No ACT leaves wallet
- BME vault state unchanged
- No deployment created
Proof to Submit:
- Current ACT balance (showing amount is less than attempted deposit)
- Error message from deployment attempt:
deposit invalid: insufficient balance
Test 1.3: Create Deployment - Minimum Deposit
Objective: Verify deployment works with minimum viable deposit amount
User Actions:
-
Ensure wallet has ACT balance (mint if needed):
Terminal window akash tx bme mint-act 50000000uakt --from <wallet> -ysleep 60 -
Create deployment with minimum deposit:
Terminal window akash tx deployment create deploy.yml \--from <wallet> \--deposit 1000000uact \-y -
Complete lease creation and manifest send (see Test 1.1 for full workflow)
-
Verify deployment is active:
Terminal window akash query deployment get --owner <user-address> --dseq <dseq>
Expected Results:
- Deployment created successfully with minimal deposit
- Lease created (if provider bids)
- Deployment may close quickly if escrow depletes rapidly
Note: Minimum deposit depends on provider pricing. Very low deposits may result in immediate escrow depletion.
⚠️ Important: Close deployment when done:
akash tx deployment close --dseq <dseq> --from <wallet> -yProof to Submit:
- Deployment create tx hash with minimum deposit amount (e.g., 1000000uact)
- Deployment state showing active:
Terminal window akash query deployment get --owner <user-address> --dseq <dseq> | head -n 10 - Bid received (showing provider address and price):
Terminal window akash query market bid list --owner <user-address> --dseq <dseq> | head -n 20
Test 1.4: Multiple Deployments from Single Wallet
Objective: Verify account-level ACT pool funds multiple deployments correctly
Step 1.4.1: Setup and Baseline
User Actions:
-
Ensure wallet has sufficient AKT (500 AKT from faucet)
-
Mint ACT for all deployments:
Terminal window akash tx bme mint-act 200000000uakt --from <wallet> -y(This converts 200 AKT to ACT — enough for multiple deployments)
-
Wait for epoch processing (~1 minute):
Terminal window sleep 60 -
Record initial state:
Terminal window akash query bank balances <user-address>akash query bme vault-state
Step 1.4.2: Create Deployment A
User Actions:
-
Create first deployment:
Terminal window akash tx deployment create deploy.yml \--from <wallet> \--deposit 5000000uact \-y -
Complete lease creation and manifest send (see Test 1.1)
-
Record DSEQ-A: _______
Step 1.4.3: Create Deployment B
User Actions:
-
Create second deployment:
Terminal window akash tx deployment create deploy.yml \--from <wallet> \--deposit 5000000uact \-y -
Complete lease creation and manifest send
-
Record DSEQ-B: _______
Step 1.4.4: Create Deployment C
User Actions:
-
Create third deployment:
Terminal window akash tx deployment create deploy.yml \--from <wallet> \--deposit 5000000uact \-y -
Complete lease creation and manifest send
-
Record DSEQ-C: _______
Step 1.4.5: Final State Validation
User Actions:
akash query bank balances <user-address>akash query bme vault-stateakash query deployment list --owner <user-address>akash query market lease list --owner <user-address>Expected Results:
- User ACT balance decreased by ~15 ACT (3 × 5 ACT deposits)
- All three deployments active with leases
- Each deployment independently accounted
- Cumulative vault state reflects the initial mint operation
⚠️ Important: Close all deployments when testing is complete:
akash tx deployment close --dseq <dseq-a> --from <wallet> -yakash tx deployment close --dseq <dseq-b> --from <wallet> -yakash tx deployment close --dseq <dseq-c> --from <wallet> -yProof to Submit:
- Pre-test ACT balance
- Both deployments showing active (query each individually):
Terminal window akash query deployment get --owner <user-address> --dseq <dseq-a> | head -n 10akash query deployment get --owner <user-address> --dseq <dseq-b> | head -n 10 - Post-test ACT balance (confirming multiple escrow deposits deducted)