examples: execute bash sessions in script environment

Previously, the sessions contained only explicitly exported variables
and functions.
This was fragile and in part buggy due to lacking exports.

Interactive features like user-defined aliases and functions are still
working as before.
This commit is contained in:
Erik Arvstedt 2020-05-17 14:25:40 +02:00
parent e3a6ca3bb1
commit 719dcd77bb
No known key found for this signature in database
GPG Key ID: 33312B944DD97846
4 changed files with 9 additions and 3 deletions

View File

@ -81,6 +81,6 @@ echo "Bitcoind data dir:"
sudo ls -al /var/lib/containers/demo-node/var/lib/bitcoind
# Uncomment to start a shell session here
# export -f c; bash -li
# . start-bash-session.sh
# Cleanup happens at exit (see above)

View File

@ -39,6 +39,6 @@ nixops deploy -d bitcoin-node
nixops ssh bitcoin-node systemctl status bitcoind
# Uncomment to start a shell session here
# bash -li
# . start-bash-session.sh
# Cleanup happens at exit (see above)

View File

@ -91,6 +91,6 @@ echo "Node info:"
c nodeinfo
# Uncomment to start a shell session here
# export -f c; bash -li
# . start-bash-session.sh
# Cleanup happens at exit (see above)

View File

@ -0,0 +1,6 @@
# Start an interactive bash session in the current bash environment.
# BASH_ENVIRONMENT contains definitions of read-only variables like 'BASHOPTS' that
# cause warnings on importing. Suppress these warnings during bash startup.
BASH_ENVIRONMENT=<(declare -p; declare -pf) \
bash --rcfile <(echo 'source $BASH_ENVIRONMENT 2>/dev/null')