#!/usr/bin/env sh # SPDX-License-Identifier: AGPL-3.0-or-later set -eu is_positive_int() { case "${1:-}" in '' | 0* | *[!0-9]*) return 1 ;; *) [ "$1" -gt 0 ] ;; esac } available_cpu_count() { cpu_quota="" cpu_period="" if [ -r /sys/fs/cgroup/cpu.max ]; then read -r cpu_quota cpu_period &2 exit 1 fi if ! is_positive_int "${FLUXER_ERLANG_SCHEDULERS:-}"; then FLUXER_ERLANG_SCHEDULERS="$(clamp_int "$(available_cpu_count)" "$FLUXER_ERLANG_SCHEDULERS_MIN" "$FLUXER_ERLANG_SCHEDULERS_MAX")" fi if ! is_positive_int "${FLUXER_ERLANG_DIRTY_CPU_SCHEDULERS:-}"; then FLUXER_ERLANG_DIRTY_CPU_SCHEDULERS="$(((FLUXER_ERLANG_SCHEDULERS * 2 + 2) / 3))" fi export FLUXER_ERLANG_NODE_NAME export FLUXER_ERLANG_COOKIE export FLUXER_ERLANG_DIST_PORT export FLUXER_ERLANG_SCHEDULERS export FLUXER_ERLANG_DIRTY_CPU_SCHEDULERS export RELX_REPLACE_OS_VARS="${RELX_REPLACE_OS_VARS:-true}" exec /opt/fluxer_gateway/bin/fluxer_gateway foreground