get wallet balance action

This commit is contained in:
Léo Haf 2025-03-24 14:08:05 +01:00
parent f5d26600c6
commit 5e305ab06b
Signed by: Retropex
GPG Key ID: F5073C4F4882FFFC
3 changed files with 43 additions and 0 deletions

View File

@ -83,6 +83,7 @@ COPY --from=bitcoin-core /opt /opt
COPY ./manager/target/${ARCH}-unknown-linux-musl/release/bitcoind-manager \
./docker_entrypoint.sh \
./actions/getaddress.sh \
./actions/getbalance.sh \
./actions/reindex.sh \
./actions/reindex_chainstate.sh \
./actions/prioritise-transaction.sh \

27
actions/getbalance.sh Normal file
View File

@ -0,0 +1,27 @@
#!/bin/sh
set -e
if ! bitcoin-cli listwalletdir | jq -e '.wallets[] | select(.name == "coin")' &> /dev/null; then
bitcoin-cli createwallet "coin" &> /dev/null
fi
if ! bitcoin-cli getwalletinfo &> /dev/null; then
bitcoin-cli loadwallet coin &> /dev/null
fi
TRUSTED=$(bitcoin-cli getbalances | jq -r '.mine.trusted')
UNTRUSTED=$(bitcoin-cli getbalances | jq -r '.mine.untrusted_pending')
IMMATURE=$(bitcoin-cli getbalances | jq -r '.mine.immature')
result=" {
\"version\": \"0\",
\"message\": \"Your wallet balance: $TRUSTED BTC.
Non confirmed balance: $UNTRUSTED BTC.
Immanture balance from mining: $IMMATURE BTC.\",
\"value\": null,
\"copyable\": true,
\"qr\": false
}"
echo $result

View File

@ -240,6 +240,21 @@ actions:
mounts:
main: /root/.bitcoin
inject: true
getbalance:
name: "Get wallet balance"
description: "Get wallet balance."
allowed-statuses:
- running
implementation:
type: docker
image: main
system: false
entrypoint: getbalance.sh
args: []
io-format: json
mounts:
main: /root/.bitcoin
inject: true
migrations:
from:
"*":