Some checks failed
CI/CD Pipeline / Solidity Contracts (push) Failing after 1m16s
CI/CD Pipeline / Security Scanning (push) Successful in 2m32s
CI/CD Pipeline / Lint and Format (push) Failing after 50s
CI/CD Pipeline / Terraform Validation (push) Failing after 23s
CI/CD Pipeline / Kubernetes Validation (push) Has been cancelled
Deploy ChainID 138 / Deploy ChainID 138 (push) Has started running
Validation / validate-genesis (push) Has been cancelled
Validation / validate-terraform (push) Has been cancelled
Validation / validate-kubernetes (push) Has been cancelled
Validation / validate-smart-contracts (push) Has been cancelled
Validation / validate-security (push) Has been cancelled
Validation / validate-documentation (push) Has been cancelled
Verify Deployment / Verify Deployment (push) Has been cancelled
Co-authored-by: Cursor <cursoragent@cursor.com>
209 lines
4.6 KiB
Bash
209 lines
4.6 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
# Start OMNL services from /srv/zardasht-portal inside PCT
|
|
|
|
set -euo pipefail
|
|
|
|
|
|
|
|
ROOT="${OMNL_PORTAL_ROOT:-/srv/zardasht-portal}"
|
|
|
|
LOG_DIR="${OMNL_BANK_LOG_DIR:-/var/log/omnl-bank}"
|
|
|
|
NGINX_TEMPLATE="${ROOT}/deploy/nginx/omnl-lxc-portal.conf"
|
|
|
|
ENV_FILE="${OMNL_BANK_ENV:-${ROOT}/.env}"
|
|
|
|
mkdir -p "$LOG_DIR"
|
|
|
|
|
|
|
|
if [[ -f "$ENV_FILE" ]]; then
|
|
|
|
set -a
|
|
|
|
set +u
|
|
|
|
# shellcheck disable=SC1090
|
|
|
|
source "$ENV_FILE"
|
|
|
|
set -u
|
|
|
|
set +a
|
|
|
|
fi
|
|
|
|
|
|
|
|
export SETTLEMENT_MIDDLEWARE_CONFIG="${ROOT}/config/settlement-middleware.production.v1.json"
|
|
|
|
export DBIS_EXCHANGE_CONFIG="${ROOT}/config/dbis-exchange.production.v1.json"
|
|
|
|
export OMNL_SUPPORTED_CHAINS_CONFIG="${ROOT}/config/omnl-supported-chains.v1.json"
|
|
|
|
export OMNL_M2_TOKEN_REGISTRY="${ROOT}/config/omnl-m2-token-registry.v1.json"
|
|
|
|
export OMNL_BANK_ROOT="$ROOT"
|
|
|
|
|
|
|
|
start() {
|
|
|
|
local name="$1" dir="$2" cmd="$3" port="${4:-}"
|
|
|
|
cd "${ROOT}/${dir}"
|
|
|
|
pkill -f "${ROOT}/${dir}" 2>/dev/null || true
|
|
|
|
if [[ -n "$port" ]]; then
|
|
|
|
if command -v fuser >/dev/null 2>&1; then
|
|
|
|
fuser -k "${port}/tcp" 2>/dev/null || true
|
|
|
|
else
|
|
|
|
pid="$(ss -H -tlnp "sport = :${port}" 2>/dev/null | sed -n 's/.*pid=\([0-9]*\).*/\1/p' | head -1)"
|
|
|
|
[[ -n "$pid" ]] && kill "$pid" 2>/dev/null || true
|
|
|
|
fi
|
|
|
|
sleep 1
|
|
|
|
fi
|
|
|
|
if [[ ! -d node_modules ]] || [[ ! -f node_modules/.package-lock.json ]]; then
|
|
|
|
NODE_ENV=development npm install --no-fund --no-audit
|
|
|
|
fi
|
|
|
|
nohup env \
|
|
|
|
SETTLEMENT_MIDDLEWARE_CONFIG="$SETTLEMENT_MIDDLEWARE_CONFIG" \
|
|
|
|
DBIS_EXCHANGE_CONFIG="$DBIS_EXCHANGE_CONFIG" \
|
|
|
|
OMNL_SUPPORTED_CHAINS_CONFIG="$OMNL_SUPPORTED_CHAINS_CONFIG" \
|
|
|
|
OMNL_M2_TOKEN_REGISTRY="$OMNL_M2_TOKEN_REGISTRY" \
|
|
|
|
OMNL_BANK_ROOT="$ROOT" \
|
|
|
|
OMNL_API_KEY="${OMNL_API_KEY:-}" \
|
|
|
|
OMNL_SUPER_ADMIN_OFFICE24_KEY="${OMNL_SUPER_ADMIN_OFFICE24_KEY:-}" \
|
|
|
|
OMNL_SUPER_ADMIN_EXCHANGE_KEY="${OMNL_SUPER_ADMIN_EXCHANGE_KEY:-}" \
|
|
|
|
OMNL_SUPER_ADMIN_SECURE_KEY="${OMNL_SUPER_ADMIN_SECURE_KEY:-}" \
|
|
|
|
OMNL_SUPER_ADMIN_FOREX_KEY="${OMNL_SUPER_ADMIN_FOREX_KEY:-}" \
|
|
|
|
OMNL_PORTAL_INTERNAL_SECRET="${OMNL_PORTAL_INTERNAL_SECRET:-}" \
|
|
|
|
OMNL_CUSTOMER_API_KEYS="${OMNL_CUSTOMER_API_KEYS:-}" \
|
|
|
|
OMNL_CUSTOMER_SECURITY_PRODUCTION="${OMNL_CUSTOMER_SECURITY_PRODUCTION:-1}" \
|
|
|
|
OMNL_FINERACT_BASE_URL="${OMNL_FINERACT_BASE_URL:-}" \
|
|
|
|
OMNL_FINERACT_TENANT="${OMNL_FINERACT_TENANT:-omnl}" \
|
|
|
|
OMNL_FINERACT_USERNAME="${OMNL_FINERACT_USERNAME:-}" \
|
|
|
|
OMNL_FINERACT_USER="${OMNL_FINERACT_USER:-}" \
|
|
|
|
OMNL_FINERACT_PASSWORD="${OMNL_FINERACT_PASSWORD:-}" \
|
|
|
|
OMNL_PUBLIC_MONEY_SUPPLY="${OMNL_PUBLIC_MONEY_SUPPLY:-1}" \
|
|
|
|
DATABASE_URL="${DATABASE_URL:-}" \
|
|
|
|
SETTLEMENT_ALLOW_HYBX_PRODUCTION="${SETTLEMENT_ALLOW_HYBX_PRODUCTION:-1}" \
|
|
|
|
SETTLEMENT_ALLOW_CHAIN_MINT_EXECUTE="${SETTLEMENT_ALLOW_CHAIN_MINT_EXECUTE:-1}" \
|
|
|
|
OMNL_ALLOW_CHAIN_MINT_EXECUTE="${OMNL_ALLOW_CHAIN_MINT_EXECUTE:-1}" \
|
|
|
|
TOKEN_AGGREGATION_URL="${TOKEN_AGGREGATION_URL:-http://127.0.0.1:3000}" \
|
|
|
|
HYBX_MIFOS_FINERACT_SIDECAR_URL="${HYBX_MIFOS_FINERACT_SIDECAR_URL:-}" \
|
|
|
|
SWIFT_LISTENER_URL="${SWIFT_LISTENER_URL:-}" \
|
|
|
|
RPC_URL_138="${RPC_URL_138:-${CHAIN_138_RPC_URL:-}}" \
|
|
|
|
CHAIN_138_RPC_URL="${CHAIN_138_RPC_URL:-${RPC_URL_138:-}}" \
|
|
|
|
OMNL_MINT_OPERATOR_PRIVATE_KEY="${OMNL_MINT_OPERATOR_PRIVATE_KEY:-}" \
|
|
|
|
INFURA_PROJECT_ID="${INFURA_PROJECT_ID:-}" \
|
|
|
|
INFURA_PROJECT_SECRET="${INFURA_PROJECT_SECRET:-}" \
|
|
|
|
bash -c "$cmd" >"${LOG_DIR}/${name}.log" 2>&1 &
|
|
|
|
echo $! >"${LOG_DIR}/${name}.pid"
|
|
|
|
}
|
|
|
|
|
|
|
|
start token-aggregation services/token-aggregation "npm run start" 3000
|
|
|
|
sleep 2
|
|
|
|
start settlement-middleware services/settlement-middleware "npm run start" 3011
|
|
|
|
sleep 2
|
|
|
|
start dbis-exchange services/dbis-exchange "npm run start" 3012
|
|
|
|
sleep 2
|
|
|
|
|
|
|
|
FRONTEND_PORT="${OMNL_BANK_FRONTEND_PORT:-3002}"
|
|
|
|
pkill -f "serve -s.*${FRONTEND_PORT}" 2>/dev/null || true
|
|
|
|
if [ -f "${LOG_DIR}/nginx.pid" ]; then
|
|
|
|
nginx -s quit -g "pid ${LOG_DIR}/nginx.pid;" 2>/dev/null || true
|
|
|
|
fi
|
|
|
|
fuser -k "${FRONTEND_PORT}/tcp" 2>/dev/null || true
|
|
|
|
sleep 1
|
|
|
|
|
|
|
|
if command -v nginx >/dev/null 2>&1 && [ -f "$NGINX_TEMPLATE" ]; then
|
|
|
|
sed "s|/srv/zardasht-portal|${ROOT}|g; s|/srv/ali-portal|${ROOT}|g" "$NGINX_TEMPLATE" > "${LOG_DIR}/nginx.conf"
|
|
|
|
nginx -t -c "${LOG_DIR}/nginx.conf"
|
|
|
|
nohup nginx -c "${LOG_DIR}/nginx.conf" >"${LOG_DIR}/frontend.log" 2>&1 &
|
|
|
|
echo $! >"${LOG_DIR}/frontend.pid"
|
|
|
|
echo "OMNL banking portal started under ${ROOT} (nginx :${FRONTEND_PORT})"
|
|
|
|
else
|
|
|
|
cd "${ROOT}/frontend-dapp"
|
|
|
|
nohup npx --yes serve -s dist -l "$FRONTEND_PORT" >"${LOG_DIR}/frontend.log" 2>&1 &
|
|
|
|
echo $! >"${LOG_DIR}/frontend.pid"
|
|
|
|
echo "OMNL banking portal started under ${ROOT} (serve :${FRONTEND_PORT})"
|
|
|
|
fi
|
|
|