go.charczuk.com@v0.0.0-20240327042549-bc490516bd1a/projects/nodes/_temporal/entrypoint.sh (about)

     1  #!/bin/bash
     2  
     3  set -eu -o pipefail
     4  
     5  LOG_LEVEL=${LOG_LEVEL:-debug}
     6  
     7  : "${BIND_ON_IP:=$(getent hosts "$(hostname)" | awk '{print $1;}')}"
     8  export BIND_ON_IP
     9  
    10  # check TEMPORAL_ADDRESS is not empty
    11  if [[ -z "${TEMPORAL_ADDRESS:-}" ]]; then
    12      echo "TEMPORAL_ADDRESS is not set, setting it to ${BIND_ON_IP}:7233"
    13  
    14      if [[ "${BIND_ON_IP}" =~ ":" ]]; then
    15          # ipv6
    16          export TEMPORAL_ADDRESS="[${BIND_ON_IP}]:7233"
    17      else
    18          # ipv4
    19          export TEMPORAL_ADDRESS="${BIND_ON_IP}:7233"
    20      fi
    21  fi
    22  
    23  # Support TEMPORAL_CLI_ADDRESS for backwards compatibility.
    24  # TEMPORAL_CLI_ADDRESS is deprecated and support for it will be removed in the future release.
    25  if [[ -z "${TEMPORAL_CLI_ADDRESS:-}" ]]; then
    26      export TEMPORAL_CLI_ADDRESS="${TEMPORAL_ADDRESS}"
    27  fi
    28  
    29  # SECRETS_DIR=$HOME/secrets
    30  # mkdir -p $SECRETS_DIR
    31  
    32  # export TEMPORAL_TLS_REQUIRE_CLIENT_AUTH=true
    33  
    34  # export TEMPORAL_TLS_INTERNODE_SERVER_NAME=nodes-temporal.fly.dev
    35  # export TEMPORAL_TLS_FRONTEND_SERVER_NAME=nodes-temporal.fly.dev
    36  
    37  # export TEMPORAL_TLS_CLIENT1_CA_CERT=$SECRETS_DIR/tls.ca.crt
    38  # export TEMPORAL_TLS_FRONTEND_CERT=$SECRETS_DIR/client.tls.crt
    39  # export TEMPORAL_TLS_FRONTEND_KEY=$SECRETS_DIR/client.tls.key
    40  # export TEMPORAL_TLS_SERVER_CA_CERT=$SECRETS_DIR/tls.ca.crt
    41  # export TEMPORAL_TLS_SERVER_CERT=$SECRETS_DIR/tls.crt
    42  # export TEMPORAL_TLS_SERVER_KEY=$SECRETS_DIR/tls.key
    43  
    44  # export TEMPORAL_TLS_FRONTEND_DISABLE_HOST_VERIFICATION=true
    45  # export TEMPORAL_TLS_INTERNODE_DISABLE_HOST_VERIFICATION=true
    46  # export TEMPORAL_TLS_DISABLE_HOST_VERIFICATION=true
    47  
    48  # # base64 decode certificates
    49  # echo $TLS_CA_CERT | base64 -d > $TEMPORAL_TLS_CLIENT1_CA_CERT
    50  # echo $TLS_CA_CERT | base64 -d > $TEMPORAL_TLS_SERVER_CA_CERT
    51  
    52  # echo $TLS_CLIENT_CERT | base64 -d > $TEMPORAL_TLS_FRONTEND_CERT
    53  # echo $TLS_CLIENT_KEY   | base64 -d > $TEMPORAL_TLS_FRONTEND_KEY
    54  
    55  # echo $TLS_SERVER_CERT | base64 -d > $TEMPORAL_TLS_SERVER_CERT
    56  # echo $TLS_SERVER_KEY | base64 -d > $TEMPORAL_TLS_SERVER_KEY
    57  
    58  dockerize -template /etc/temporal/config/config_template.yaml:/etc/temporal/config/docker.yaml
    59  
    60  # Automatically setup Temporal Server (databases, Elasticsearch, default namespace) if "autosetup" is passed as an argument.
    61  for arg; do [[ ${arg} == autosetup ]] && /etc/temporal/auto-setup.sh && break ; done
    62  
    63  # Setup Temporal Server in development mode if "develop" is passed as an argument.
    64  for arg; do [[ ${arg} == develop ]] && /etc/temporal/setup-develop.sh && break ; done
    65  
    66  # Run bash instead of Temporal Server if "bash" is passed as an argument (convenient to debug docker image).
    67  for arg; do [[ ${arg} == bash ]] && bash && exit 0 ; done
    68  
    69  exec /etc/temporal/start-temporal.sh