feat: improve glue code

pull/24376/head
Marco Neumann 2021-11-26 10:22:15 +01:00
parent c5f20769ad
commit e1b523333c
1 changed files with 7 additions and 25 deletions

View File

@ -1,24 +1,21 @@
#!/bin/bash #!/bin/bash
set -eu -o pipefail set -eu -o pipefail
shopt -s expand_aliases
# extract ordinal index from server ID # extract ordinal index from server ID
[[ $HOSTNAME =~ -([0-9]+)$ ]] || (echo "invalid hostname" && exit 1) [[ $HOSTNAME =~ -([0-9]+)$ ]] || (echo "invalid hostname" && exit 1)
ordinal=${BASH_REMATCH[1]} ordinal=${BASH_REMATCH[1]}
# calculate server ID # calculate server ID
offset="${INFLUXDB_IOX_ID_OFFSET:-0}" offset="${INFLUXDB_IOX_ID_OFFSET:-1}"
server_id=$((ordinal + offset)) server_id=$((ordinal + offset))
echo "ServerID: $server_id" echo "ServerID: $server_id"
# set server ID # set server ID
alias textgrpc="grpcurl -allow-unknown-fields -plaintext"
while true; do while true; do
set +e if textgrpc -d "{\"id\": $server_id}" "$INFLUXDB_IOX_GRPC_BIND_ADDR" influxdata.iox.deployment.v1.DeploymentService.UpdateServerId; then
grpcurl -d "{\"id\": $server_id}" -allow-unknown-fields -plaintext "$INFLUXDB_IOX_GRPC_BIND_ADDR" influxdata.iox.deployment.v1.DeploymentService.UpdateServerId
status=$?
set -e
if [[ $status == 0 ]]; then
echo "server ID set" echo "server ID set"
break break
else else
@ -60,23 +57,13 @@ while true; do
if [[ $type == "database" ]]; then if [[ $type == "database" ]]; then
echo "Create database..." echo "Create database..."
set +e if textgrpc -d @ < "$F_CURRENT" "$INFLUXDB_IOX_GRPC_BIND_ADDR" influxdata.iox.management.v1.ManagementService.CreateDatabase; then
grpcurl -d @ < "$F_CURRENT" -allow-unknown-fields -plaintext "$INFLUXDB_IOX_GRPC_BIND_ADDR" influxdata.iox.management.v1.ManagementService.CreateDatabase
status=$?
set -e
if [[ $status == 0 ]]; then
echo "databse created" echo "databse created"
in_sync=1 in_sync=1
else else
echo "cannot create database, try updating it..." echo "cannot create database, try updating it..."
set +e if textgrpc -d @ < "$F_CURRENT" "$INFLUXDB_IOX_GRPC_BIND_ADDR" influxdata.iox.management.v1.ManagementService.UpdateDatabase; then
grpcurl -d @ < "$F_CURRENT" -allow-unknown-fields -plaintext "$INFLUXDB_IOX_GRPC_BIND_ADDR" influxdata.iox.management.v1.ManagementService.UpdateDatabase
status=$?
set -e
if [[ $status == 0 ]]; then
echo "database updated" echo "database updated"
in_sync=1 in_sync=1
else else
@ -86,12 +73,7 @@ while true; do
else else
echo "Update router..." echo "Update router..."
set +e if textgrpc -d @ < "$F_CURRENT" "$INFLUXDB_IOX_GRPC_BIND_ADDR" influxdata.iox.router.v1.RouterService.UpdateRouter; then
grpcurl -d @ < "$F_CURRENT" -allow-unknown-fields -plaintext "$INFLUXDB_IOX_GRPC_BIND_ADDR" influxdata.iox.router.v1.RouterService.UpdateRouter
status=$?
set -e
if [[ $status == 0 ]]; then
echo "router updated" echo "router updated"
in_sync=1 in_sync=1
else else