Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v.4.0.2 #399

Merged
merged 35 commits into from
Feb 20, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
68769f2
add autopeering query
0xKtota Feb 11, 2024
a2e3457
add autopeering variable
0xKtota Feb 11, 2024
a7147d4
Add autopeering variable
0xKtota Feb 11, 2024
476fe51
autopeering ports
0xKtota Feb 11, 2024
647718b
fix typo
0xKtota Feb 11, 2024
8cc3329
fix typo
0xKtota Feb 11, 2024
128b142
Merge pull request #1 from 0xKtota/feature/autopeering
0xKtota Feb 11, 2024
8e59614
fix typo
0xKtota Feb 11, 2024
5c099ba
fix prompt
0xKtota Feb 12, 2024
cf58bcb
Merge pull request #2 from 0xKtota/feature/autopeering
0xKtota Feb 12, 2024
57d2b99
fix indent lines
0xKtota Feb 12, 2024
aad4a4b
Merge pull request #3 from 0xKtota/feature/autopeering
0xKtota Feb 12, 2024
889e2b5
code additions
dlt-green Feb 12, 2024
e514d65
Merge back changes from release/v.4.0.1
github-actions[bot] Feb 15, 2024
657c0af
Merge branch 'dlt-green:dev' into dev
0xKtota Feb 15, 2024
15d2a16
Update README.md
dlt-green Feb 18, 2024
70c7762
improved version with saved peers
0xKtota Feb 18, 2024
cd34900
Update node-installer.sh
0xKtota Feb 18, 2024
3594cfd
Merge pull request #4 from 0xKtota/feature/autopeering
0xKtota Feb 18, 2024
4408fc9
installer: update format input (see standard input values)
dlt-green Feb 19, 2024
42f5dd2
installer: only insert static neighbors when not empty
dlt-green Feb 19, 2024
144444b
installer: only set autopeering port when autopeering=true
dlt-green Feb 19, 2024
8403c3e
installer: delete inserted empty lines
dlt-green Feb 19, 2024
4abcacb
installer: fix iota var static neighbors
dlt-green Feb 19, 2024
232d31e
Merge pull request #395 from 0xKtota/dev
dlt-green Feb 19, 2024
d637cd0
installer: update input static neighbor(s)
dlt-green Feb 19, 2024
f8df28d
installer: bc: fix unit "," -> "."
dlt-green Feb 19, 2024
0184134
wasp: update 1.0.2-rc.1
dlt-green Feb 20, 2024
e119495
manual peering: Fixed some minor things.
bogenlos Feb 20, 2024
265521f
fix peering.json path
0xKtota Feb 20, 2024
52695a9
fix peering.json path
0xKtota Feb 20, 2024
0d44c5d
fix peering.json path
0xKtota Feb 20, 2024
9ecd05e
Merge remote-tracking branch 'origin/main' into release/v.4.0.2
github-actions[bot] Feb 20, 2024
8a1543d
Set version to v.4.0.2
github-actions[bot] Feb 20, 2024
6634912
Update release artifacts [v.4.0.2] [skip actions]
github-actions[bot] Feb 20, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,5 +113,7 @@ You get support in our discord from our team or the community
# Donations
THIS PROJECT IS DEVELOPED BY DLT.GREEN WITH ITS COMMUNITY.
YOU CAN SUPPORT THIS PROJECT WITH DONATIONS TO THE DLT.GREEN TREASURY:
https://explorer.iota.org/mainnet/addr/iota1qznzkq2n6kakps36s7w0z0gmuf0p70x647ghqshlfjlumqrld49l7zemavy
IOTA: iota1qq7seed74mzvy9g6nj2nj88pm37gf2x5qv35jcun78n86hyzaqcaggy8ewa
Shimmer: smr1qzp87wkakd22ld6rvcjuwuvn5usevmvut565y6l32xhfucpemu0extkpws0
Shimmer EVM: 0x6c5ab03b8e4b4f9ec591d211411082a7ab925c05
https://soonaverse.com/member/0x422bed2759f72e7d6ae1e100707ca45e26e9a12c
35 changes: 35 additions & 0 deletions common/scripts/prepare_docker_functions.sh
Original file line number Diff line number Diff line change
Expand Up @@ -287,3 +287,38 @@ stop_node () {
show_logs () {
docker compose logs -f --tail 1000
}

generate_peering_json() {
local peeringFilePath="$1"
local staticNeighbors="$2"

if [ -d "$peeringFilePath" ]; then
rm -Rf "$peeringFilePath"
fi

if [ -z "$staticNeighbors" ]; then
echo -e "No static neighbors defined"
jq -n '{peers: []}' > "$peeringFilePath"
return
fi
echo "Generating peering.json..."
local peersJson="[]"
IFS=','
for neighbor in $staticNeighbors; do
local cleanedNeighbor=$(echo "$neighbor" | sed 's/^[[:space:]]*//;s/[[:space:]]*$//')
local alias=""
local multiAddress=""

if [[ "$cleanedNeighbor" =~ .*:.* ]]; then
alias=$(echo "$cleanedNeighbor" | cut -d ':' -f 1 | sed 's/^[[:space:]]*//;s/[[:space:]]*$//')
multiAddress=$(echo "$cleanedNeighbor" | cut -d ':' -f 2- | sed 's/^[[:space:]]*//;s/[[:space:]]*$//')
else
alias="Node-$(date +%s%N | sha256sum | head -c 8)"
multiAddress="$cleanedNeighbor"
fi

peersJson=$(jq --arg alias "$alias" --arg multiAddress "$multiAddress" '. += [{"alias": $alias, "multiAddress": $multiAddress}]' <<< "$peersJson")
done
unset IFS
echo "$peersJson" | jq '{peers: .}' > "$peeringFilePath" && echo "${peeringFilePath} successfully generated" || echo "Failed to generate peering.json"
}
58 changes: 30 additions & 28 deletions iota-hornet/README.md

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions iota-hornet/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ services:
volumes:
- "/etc/localtime:/etc/localtime:ro"
- "${HORNET_DATA_DIR:-./data}/config/config-${HORNET_NETWORK:-mainnet}.json:/app/config/config.json:ro"
- "${HORNET_DATA_DIR:-./data}/config/peering-${HORNET_NETWORK:-mainnet}.json:/app/peering.json:ro"
- "${HORNET_DATA_DIR:-./data}/storage/${HORNET_NETWORK:-mainnet}:/app/storage"
- "${HORNET_DATA_DIR:-./data}/snapshots/${HORNET_NETWORK:-mainnet}:/app/snapshots"
- "${HORNET_DATA_DIR:-./data}/p2pstore/${HORNET_NETWORK:-mainnet}:/app/p2pstore"
Expand Down
5 changes: 4 additions & 1 deletion iota-hornet/prepare_docker.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ dataDir="${HORNET_DATA_DIR:-$scriptDir/data}"
configFilenameInContainer="config.json"
configFilename="config-${HORNET_NETWORK:-mainnet}.json"
configPath="${dataDir}/config/${configFilename}"
peeringFilename="peering-${HORNET_NETWORK:-mainnet}.json"
peeringFilePath="${dataDir}/config/${peeringFilename}"

validate_ssl_config "HORNET_SSL_CERT" "HORNET_SSL_KEY"
copy_common_assets
Expand Down Expand Up @@ -54,7 +56,7 @@ set_config "${configPath}" ".p2p.db.path" "\"/app/p2pstore\""
set_config "${configPath}" ".snapshots.fullPath" "\"/app/snapshots/full_snapshot.bin\""
set_config "${configPath}" ".snapshots.deltaPath" "\"/app/snapshots/delta_snapshot.bin\""
set_config "${configPath}" ".pruning.size.targetSize" "\"${HORNET_PRUNING_TARGET_SIZE:-64GB}\""
set_config "${configPath}" ".p2p.autopeering.enabled" "true"
set_config "${configPath}" ".p2p.autopeering.enabled" "${HORNET_AUTOPEERING_ENABLED:-true}"
set_config "${configPath}" ".restAPI.pow.enabled" "${HORNET_POW_ENABLED:-true}"
set_config "${configPath}" ".prometheus.enabled" "true"
set_config "${configPath}" ".prometheus.bindAddress" "\"0.0.0.0:9311\""
Expand All @@ -66,6 +68,7 @@ set_config_if_present_in_env "${configPath}" "HORNET_PRUNING_MAX_MILESTONES_TO_K
if [ ! -z "${HORNET_PRUNING_MAX_MILESTONES_TO_KEEP}" ]; then
set_config "${configPath}" ".pruning.milestones.enabled" "true"
fi
generate_peering_json "$peeringFilePath" "${HORNET_STATIC_NEIGHBORS:-""}"
rm -f "${tmp}"

echo "Finished"
146 changes: 128 additions & 18 deletions node-installer.sh
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/bin/sh

VRSN="v.4.0.1"
BUILD="20240215_190331"
VRSN="v.4.0.2"
BUILD="20240220_184147"

VAR_DOMAIN=''
VAR_HOST=''
Expand All @@ -14,11 +14,11 @@ VAR_CONF_RESET=0
VAR_IOTA_HORNET_VERSION='2.0.1'
VAR_IOTA_HORNET_UPDATE=1

VAR_IOTA_WASP_VERSION='1.0.2-alpha.4'
VAR_IOTA_WASP_VERSION='1.0.2-rc.1'
VAR_IOTA_WASP_UPDATE=1

VAR_IOTA_WASP_DASHBOARD_VERSION='0.1.9'
VAR_IOTA_WASP_CLI_VERSION='1.0.2-alpha.4'
VAR_IOTA_WASP_CLI_VERSION='1.0.2-rc.1'

VAR_IOTA_INX_INDEXER_VERSION='1.0'
VAR_IOTA_INX_MQTT_VERSION='1.0'
Expand All @@ -30,11 +30,11 @@ VAR_IOTA_INX_DASHBOARD_VERSION='1.0'
VAR_SHIMMER_HORNET_VERSION='2.0.0-rc.8'
VAR_SHIMMER_HORNET_UPDATE=1

VAR_SHIMMER_WASP_VERSION='1.0.2-alpha.4'
VAR_SHIMMER_WASP_VERSION='1.0.2-rc.1'
VAR_SHIMMER_WASP_UPDATE=1

VAR_SHIMMER_WASP_DASHBOARD_VERSION='0.1.9'
VAR_SHIMMER_WASP_CLI_VERSION='1.0.2-alpha.4'
VAR_SHIMMER_WASP_CLI_VERSION='1.0.2-rc.1'

VAR_SHIMMER_INX_INDEXER_VERSION='1.0-rc'
VAR_SHIMMER_INX_MQTT_VERSION='1.0-rc'
Expand Down Expand Up @@ -133,19 +133,19 @@ DEBIAN_FRONTEND=noninteractive sudo apt-get install curl -y -qq >/dev/null 2>&1

InstallerHash=$(curl -L https://github.com/dlt-green/node-installer-docker/releases/download/$VRSN/checksum.txt) >/dev/null 2>&1

IotaHornetHash='7d341325706df8096b12068e372f28be15f9185a1a930418ded85bd4f23a45e8'
IotaHornetHash='3ad26bac0ac128619e7d8962b77f97538359e3fedddd7a606fcdeb005d35bd79'
IotaHornetPackage="https://github.com/dlt-green/node-installer-docker/releases/download/$VRSN/iota-hornet.tar.gz"

IotaWaspHash='c14475d8367d737a6452ff109cd822e39f94b8de5a0e517740a4558ecb61fc45'
IotaWaspHash='9b16460a140bd0274f2529888abec6a197b0a3bc5177d7cd392997b1779b4e4d'
IotaWaspPackage="https://github.com/dlt-green/node-installer-docker/releases/download/$VRSN/iota-wasp.tar.gz"

ShimmerHornetHash='4bb62666cfa5504277beea58cdeb6df13c9236bfaac218c523b334e1c703211b'
ShimmerHornetHash='6860139a665d3d4ea4bcd689b5fb72c95d7417719e4d15c9cc629d150d4480a7'
ShimmerHornetPackage="https://github.com/dlt-green/node-installer-docker/releases/download/$VRSN/shimmer-hornet.tar.gz"

ShimmerWaspHash='1ca04596aac76affaadc97df2e164b84b4adebc70f1bcf625c9ecf95e2a913ea'
ShimmerWaspHash='def32def00c9f32cb43e106e9cfa60da3a6e1def964dff2b0b899a7ba118ea1d'
ShimmerWaspPackage="https://github.com/dlt-green/node-installer-docker/releases/download/$VRSN/shimmer-wasp.tar.gz"

ShimmerChronicleHash='95b605f8903c34a8b61b7780ec69c2143349ad55dae554c8a3268fe5cc441af1'
ShimmerChronicleHash='96c045c15f64de0e10b8168af51664358e946395ae7b89cc7ecf7386c4c4c21a'
ShimmerChroniclePackage="https://github.com/dlt-green/node-installer-docker/releases/download/$VRSN/shimmer-chronicle.tar.gz"

if [ "$VRSN" = 'dev-latest' ]; then VRSN=$BUILD; fi
Expand Down Expand Up @@ -377,7 +377,7 @@ FormatToBytes() {
unset bytes;
if [ -n "$1" ]; then
unit=$(echo "$1" | sed -e 's/[^a-zA-Z_]//g' | tr '[:lower:]' '[:upper:]');
value=$(echo "$1" | sed -e "s/$unit//g");
value=$(echo "$1" | sed -e "s/$unit//g" | sed "s/,/./g");

case $unit in
KB) bytes=$(echo "$value*1024" | bc);;
Expand All @@ -395,8 +395,9 @@ FormatToBytes() {
FormatFromBytes() {
unset fbytes;
if [ -n "$1" ]; then
fbytes=$(numfmt --to iec --format "%8f" "$1")B;
fbytes=$(echo "$fbytes" | sed 's/ *$//g');
fbytes=$(echo "$1" | cut -d '.' -f 1);
fbytes=$(numfmt --to iec --format "%8f" "$fbytes")B;
fbytes=$(echo "$fbytes" | sed 's/ *$//g' | sed 's/ //g');
fi
}

Expand Down Expand Up @@ -2640,6 +2641,41 @@ IotaHornet() {
echo "$rd""Set PoW / proof of work: $VAR_IOTA_HORNET_POW""$xx"
fi

echo ''
VAR_IOTA_HORNET_AUTOPEERING=$(cat .env 2>/dev/null | grep HORNET_AUTOPEERING_ENABLED= | cut -d '=' -f 2)
VAR_DEFAULT='true'
if [ -z "$VAR_IOTA_HORNET_AUTOPEERING" ]; then
echo "Set autopeering (default: $ca$VAR_DEFAULT$xx):"; echo "Press [Enter] to use default value:"
else
echo "Set autopeering (config: $ca$VAR_IOTA_HORNET_AUTOPEERING$xx)"; echo "Press [Enter] to use existing config:"
fi
read -r -p '> Press [E] to enable Autopeering... Press [X] key to disable... ' VAR_TMP;
if [ -n "$VAR_TMP" ]; then
VAR_IOTA_HORNET_AUTOPEERING=$VAR_TMP
if [ "$VAR_IOTA_HORNET_AUTOPEERING" = 'e' ] || [ "$VAR_IOTA_HORNET_AUTOPEERING" = 'E' ]; then
VAR_IOTA_HORNET_AUTOPEERING='true'
else
VAR_IOTA_HORNET_AUTOPEERING='false'
fi
elif [ -z "$VAR_IOTA_HORNET_AUTOPEERING" ]; then VAR_IOTA_HORNET_AUTOPEERING=$VAR_DEFAULT; fi

if [ "$VAR_IOTA_HORNET_AUTOPEERING" = 'true' ]; then
echo "$gn""Set autopeering: $VAR_IOTA_HORNET_AUTOPEERING""$xx"
else
echo "$rd""Set autopeering: $VAR_IOTA_HORNET_AUTOPEERING""$xx"
fi

if [ "$VAR_IOTA_HORNET_AUTOPEERING" = 'false' ]; then
echo ''
VAR_IOTA_HORNET_STATIC_NEIGHBORS=$(cat .env 2>/dev/null | grep HORNET_STATIC_NEIGHBORS= | cut -d '=' -f 2)
VAR_DEFAULT='{nodeName}:/dns/{nodeURL}/tcp/15600/p2p/{nodeId},...';
if [ -z "$VAR_IOTA_HORNET_STATIC_NEIGHBORS" ]; then
echo "Set static neighbor(s) (template: $ca""$VAR_DEFAULT""$xx):"; else echo "Set static neighbor(s) (config: ""$ca""\n""$(echo "$VAR_IOTA_HORNET_STATIC_NEIGHBORS" | tr ',' '\n')""\n""$xx)"; echo "Press [Enter] to use existing config (template: $ca""$VAR_DEFAULT""$xx):"; fi
read -r -p '> ' VAR_TMP
if [ -n "$VAR_TMP" ]; then VAR_IOTA_HORNET_STATIC_NEIGHBORS=$VAR_TMP; elif [ -z "$VAR_IOTA_HORNET_STATIC_NEIGHBORS" ]; then VAR_IOTA_HORNET_STATIC_NEIGHBORS=''; fi
echo "$gn""Set static neighbor(s): ""\n""$(echo "$VAR_IOTA_HORNET_STATIC_NEIGHBORS" | tr ',' '\n')""$xx"
fi

echo ''
VAR_USERNAME=$(cat .env 2>/dev/null | grep DASHBOARD_USERNAME= | cut -d '=' -f 2)
VAR_DEFAULT=$(cat /dev/urandom | tr -dc '[:alpha:]' | fold -w "${1:-10}" | head -n 1);
Expand Down Expand Up @@ -2691,7 +2727,16 @@ IotaHornet() {
echo "HORNET_POW_ENABLED=$VAR_IOTA_HORNET_POW" >> .env
echo "HORNET_HTTPS_PORT=$VAR_IOTA_HORNET_HTTPS_PORT" >> .env
echo "HORNET_GOSSIP_PORT=15600" >> .env
echo "HORNET_AUTOPEERING_PORT=14626" >> .env
echo "HORNET_AUTOPEERING_ENABLED=$VAR_IOTA_HORNET_AUTOPEERING" >> .env

if [ "$VAR_IOTA_HORNET_AUTOPEERING" = 'true' ]; then
echo "HORNET_AUTOPEERING_PORT=14626" >> .env
fi

if [ -n "$VAR_IOTA_HORNET_STATIC_NEIGHBORS" ]; then
echo "HORNET_STATIC_NEIGHBORS=$VAR_IOTA_HORNET_STATIC_NEIGHBORS" >> .env
fi

echo "RESTAPI_SALT=$VAR_SALT" >> .env

if [ "$VAR_CERT" = 0 ]
Expand Down Expand Up @@ -2741,6 +2786,11 @@ IotaHornet() {
if [ -f .env ]; then sed -i "s/INX_POI_VERSION=.*/INX_POI_VERSION=$VAR_IOTA_INX_POI_VERSION/g" .env; fi
if [ -f .env ]; then sed -i "s/INX_DASHBOARD_VERSION=.*/INX_DASHBOARD_VERSION=$VAR_IOTA_INX_DASHBOARD_VERSION/g" .env; fi

VAR_IOTA_HORNET_AUTOPEERING=$(cat .env 2>/dev/null | grep HORNET_AUTOPEERING_ENABLED | cut -d '=' -f 2)
if [ -z "$VAR_IOTA_HORNET_AUTOPEERING" ]; then
echo "HORNET_AUTOPEERING_ENABLED=true" >> .env
fi

VAR_HOST=$(cat .env 2>/dev/null | grep _HOST | cut -d '=' -f 2)
fgrep -q "RESTAPI_SALT" .env || echo "RESTAPI_SALT=$VAR_SALT" >> .env
fi
Expand Down Expand Up @@ -2807,7 +2857,10 @@ IotaHornet() {

echo ufw allow "$VAR_IOTA_HORNET_HTTPS_PORT/tcp" && ufw allow "$VAR_IOTA_HORNET_HTTPS_PORT/tcp"
echo ufw allow '15600/tcp' && ufw allow '15600/tcp'
echo ufw allow '14626/udp' && ufw allow '14626/udp'

if [ "$VAR_IOTA_HORNET_AUTOPEERING" = "true" ]; then
echo ufw allow '14626/udp' && ufw allow '14626/udp'
fi

echo "$fl"; PromptMessage "$opt_time" "Press [Enter] / wait [""$opt_time""s] to continue... Press [P] to pause / [C] to cancel"; echo "$xx"; clear

Expand Down Expand Up @@ -2881,6 +2934,8 @@ IotaHornet() {
echo "domain name: $VAR_HOST"
echo "https port: $VAR_IOTA_HORNET_HTTPS_PORT"
echo "-------------------------------------------------------------------------------"
echo "autopeering: $VAR_IOTA_HORNET_AUTOPEERING"
echo "-------------------------------------------------------------------------------"
echo "hornet dashboard: https://$VAR_HOST/dashboard"
echo "hornet username: $VAR_USERNAME"
echo "hornet password: $VAR_PASSWORD"
Expand Down Expand Up @@ -3395,6 +3450,42 @@ ShimmerHornet() {
echo "$rd""Set PoW / proof of work: $VAR_SHIMMER_HORNET_POW""$xx"
fi

echo ''
VAR_SHIMMER_HORNET_AUTOPEERING=$(cat .env 2>/dev/null | grep HORNET_AUTOPEERING_ENABLED= | cut -d '=' -f 2)
VAR_DEFAULT='true'
if [ -z "$VAR_SHIMMER_HORNET_AUTOPEERING" ]; then
echo "Set autopeering (default: $ca$VAR_DEFAULT$xx):"; echo "Press [Enter] to use default value:"
else
echo "Set autopeering (config: $ca$VAR_SHIMMER_HORNET_AUTOPEERING$xx)"; echo "Press [Enter] to use existing config:"
fi
read -r -p '> Press [E] to enable Autopeering... Press [X] key to disable... ' VAR_TMP;
if [ -n "$VAR_TMP" ]; then
VAR_SHIMMER_HORNET_AUTOPEERING=$VAR_TMP
if [ "$VAR_SHIMMER_HORNET_AUTOPEERING" = 'e' ] || [ "$VAR_SHIMMER_HORNET_AUTOPEERING" = 'E' ]; then
VAR_SHIMMER_HORNET_AUTOPEERING='true'
else
VAR_SHIMMER_HORNET_AUTOPEERING='false'
fi
elif [ -z "$VAR_SHIMMER_HORNET_AUTOPEERING" ]; then VAR_SHIMMER_HORNET_AUTOPEERING=$VAR_DEFAULT; fi

if [ "$VAR_SHIMMER_HORNET_AUTOPEERING" = 'true' ]; then
echo "$gn""Set autopeering: $VAR_SHIMMER_HORNET_AUTOPEERING""$xx"
else
echo "$rd""Set autopeering: $VAR_SHIMMER_HORNET_AUTOPEERING""$xx"
fi

if [ "$VAR_SHIMMER_HORNET_AUTOPEERING" = 'false' ]; then

echo ''
VAR_SHIMMER_HORNET_STATIC_NEIGHBORS=$(cat .env 2>/dev/null | grep HORNET_STATIC_NEIGHBORS= | cut -d '=' -f 2)
VAR_DEFAULT='{nodeName}:/dns/{nodeURL}/tcp/15600/p2p/{nodeId},...';
if [ -z "$VAR_SHIMMER_HORNET_STATIC_NEIGHBORS" ]; then
echo "Set static neighbor(s) (template: $ca""$VAR_DEFAULT""$xx):"; else echo "Set static neighbor(s) (config: ""$ca""\n""$(echo "$VAR_SHIMMER_HORNET_STATIC_NEIGHBORS" | tr ',' '\n')""\n""$xx)"; echo "Press [Enter] to use existing config (template: $ca""$VAR_DEFAULT""$xx):"; fi
read -r -p '> ' VAR_TMP
if [ -n "$VAR_TMP" ]; then VAR_SHIMMER_HORNET_STATIC_NEIGHBORS=$VAR_TMP; elif [ -z "$VAR_SHIMMER_HORNET_STATIC_NEIGHBORS" ]; then VAR_SHIMMER_HORNET_STATIC_NEIGHBORS=''; fi
echo "$gn""Set static neighbor(s): ""\n""$(echo "$VAR_SHIMMER_HORNET_STATIC_NEIGHBORS" | tr ',' '\n')""$xx"
fi

echo ''
VAR_USERNAME=$(cat .env 2>/dev/null | grep DASHBOARD_USERNAME= | cut -d '=' -f 2)
VAR_DEFAULT=$(cat /dev/urandom | tr -dc '[:alpha:]' | fold -w "${1:-10}" | head -n 1);
Expand Down Expand Up @@ -3446,7 +3537,16 @@ ShimmerHornet() {
echo "HORNET_POW_ENABLED=$VAR_SHIMMER_HORNET_POW" >> .env
echo "HORNET_HTTPS_PORT=$VAR_SHIMMER_HORNET_HTTPS_PORT" >> .env
echo "HORNET_GOSSIP_PORT=15600" >> .env
echo "HORNET_AUTOPEERING_PORT=14626" >> .env
echo "HORNET_AUTOPEERING_ENABLED=$VAR_SHIMMER_HORNET_AUTOPEERING" >> .env

if [ "$VAR_SHIMMER_HORNET_AUTOPEERING" = 'true' ]; then
echo "HORNET_AUTOPEERING_PORT=14626" >> .env
fi

if [ -n "$VAR_SHIMMER_HORNET_STATIC_NEIGHBORS" ]; then
echo "HORNET_STATIC_NEIGHBORS=$VAR_SHIMMER_HORNET_STATIC_NEIGHBORS" >> .env
fi

echo "RESTAPI_SALT=$VAR_SALT" >> .env

if [ "$VAR_CERT" = 0 ]
Expand Down Expand Up @@ -3496,6 +3596,11 @@ ShimmerHornet() {
if [ -f .env ]; then sed -i "s/INX_POI_VERSION=.*/INX_POI_VERSION=$VAR_SHIMMER_INX_POI_VERSION/g" .env; fi
if [ -f .env ]; then sed -i "s/INX_DASHBOARD_VERSION=.*/INX_DASHBOARD_VERSION=$VAR_SHIMMER_INX_DASHBOARD_VERSION/g" .env; fi

VAR_SHIMMER_HORNET_AUTOPEERING=$(cat .env 2>/dev/null | grep HORNET_AUTOPEERING_ENABLED | cut -d '=' -f 2)
if [ -z "$VAR_SHIMMER_HORNET_AUTOPEERING" ]; then
echo "HORNET_AUTOPEERING_ENABLED=true" >> .env
fi

VAR_HOST=$(cat .env 2>/dev/null | grep _HOST | cut -d '=' -f 2)
fgrep -q "RESTAPI_SALT" .env || echo "RESTAPI_SALT=$VAR_SALT" >> .env
fi
Expand Down Expand Up @@ -3562,7 +3667,10 @@ ShimmerHornet() {

echo ufw allow "$VAR_SHIMMER_HORNET_HTTPS_PORT/tcp" && ufw allow "$VAR_SHIMMER_HORNET_HTTPS_PORT/tcp"
echo ufw allow '15600/tcp' && ufw allow '15600/tcp'
echo ufw allow '14626/udp' && ufw allow '14626/udp'

if [ "$VAR_SHIMMER_HORNET_AUTOPEERING" = "true" ]; then
echo ufw allow '14626/udp' && ufw allow '14626/udp'
fi

echo "$fl"; PromptMessage "$opt_time" "Press [Enter] / wait [""$opt_time""s] to continue... Press [P] to pause / [C] to cancel"; echo "$xx"; clear

Expand Down Expand Up @@ -3636,6 +3744,8 @@ ShimmerHornet() {
echo "domain name: $VAR_HOST"
echo "https port: $VAR_SHIMMER_HORNET_HTTPS_PORT"
echo "-------------------------------------------------------------------------------"
echo "autopeering: $VAR_SHIMMER_HORNET_AUTOPEERING"
echo "-------------------------------------------------------------------------------"
echo "hornet dashboard: https://$VAR_HOST/dashboard"
echo "hornet username: $VAR_USERNAME"
echo "hornet password: $VAR_PASSWORD"
Expand Down
2 changes: 2 additions & 0 deletions shimmer-hornet/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ HORNET_HOST=node.your-domain.com
# HORNET_PRUNING_TARGET_SIZE=64GB
# HORNET_PRUNING_MAX_MILESTONES_TO_KEEP=60480
# HORNET_POW_ENABLED=false
# HORNET_STATIC_NEIGHBORS=my-alias:/ip4/127.0.0.1/tcp/15600/p2p/12D3KooWCKWcTWevORKa2KEBputEGASvEBuDfRDSbe8t1DWugUmL

# DASHBOARD_USERNAME=admin
DASHBOARD_PASSWORD=0000000000000000000000000000000000000000000000000000000000000000
Expand Down Expand Up @@ -63,6 +64,7 @@ INX_DASHBOARD_VERSION=1.0.0-beta.5
| HORNET_PRUNING_TARGET_SIZE | | 64GB | Target size of database |
| HORNET_PRUNING_MAX_MILESTONES_TO_KEEP | | 60480 | Max umber of milestones to keep in database. Milestone pruning is disabled by default. It's activated if this parameter is set. |
| HORNET_POW_ENABLED | | false | Whether the node does PoW if messages are received via API |
| HORNET_STATIC_NEIGHBORS | | | Comma separated list of static neighbors. Format example: `my-alias:/ip4/127.0.0.1/tcp/15600/p2p/12D3KooWCKWcTWevORKa2KEBputEGASvEBuDfRDSbe8t1DWugUmL` (see [docs](https://wiki.iota.org/hornet/references/peering/) for further infos) |
| DASHBOARD_USERNAME | | admin | Username to access dashboard |
| DASHBOARD_PASSWORD | x | | Password hash (can be generated with `docker compose run hornet tool pwd-hash` or non-interactively with `docker compose run hornet tool pwd-hash --json --password <password>`) |
| DASHBOARD_SALT | x | | Password salt (can be generated with `docker compose run hornet tool pwd-hash` or non-interactively with `docker compose run hornet tool pwd-hash --json --password <password>`) |
Expand Down
1 change: 1 addition & 0 deletions shimmer-hornet/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ services:
volumes:
- "/etc/localtime:/etc/localtime:ro"
- "${HORNET_DATA_DIR:-./data}/config/config-${HORNET_NETWORK:-mainnet}.json:/app/config/config.json:ro"
- "${HORNET_DATA_DIR:-./data}/config/peering-${HORNET_NETWORK:-mainnet}.json:/app/peering.json:ro"
- "${HORNET_DATA_DIR:-./data}/storage/${HORNET_NETWORK:-mainnet}:/app/storage"
- "${HORNET_DATA_DIR:-./data}/snapshots/${HORNET_NETWORK:-mainnet}:/app/snapshots"
- "${HORNET_DATA_DIR:-./data}/p2pstore/${HORNET_NETWORK:-mainnet}:/app/p2pstore"
Expand Down
Loading