reload_flag=""
if [[ -n "${DEBUG}" ]]; then
reload_flag="--reload"
fi
if [[ -n "${WORKER_COUNT}" ]]; then
workers=${WORKER_COUNT}
else
workers=2
fi
gunicorn --workers ${workers} \
--bind 0.0.0.0:8000 \
${reload_flag} main.wsgi
Писали такие конструкции чтобы проверить наличие флага и сформировать команду правильно?
На самом деле можно сделать тоже самое проще. Для этого используются операторы условной подстановки, доступные в оболочках семейства POSIX.
:- для установки значений по умолчанию
${WORKER_COUNT:-2}
Если переменная не объявлена, то будет дефолтное значение 2.
:+ подставляет указанный текст, если переменная не пуста
${DEBUG:+--reload}
Если что-то есть в переменной то распечатается текст после символа +, в противном случае - ничего. Удобно для опциональных флагов, как в нашем примере.
Итого наш скрипт может выглядеть так:
gunicorn --workers ${WORKER_COUNT:-2} \
--bind 0.0.0.0:8000 \
${DEBUG:+--reload} main.wsgi
Есть еще два оператора.
:= не только подставить дефолтное значение, но и присвоить его переменной, если она пуста
# никаких переменных еще нет
VAL1=${VAL2:=hello}
# теперь доступны обе
echo $VAL1 $VAL2
# hello hello
:? остановить выполнение с ошибкой, если переменной нет.
echo ${MISS:?is required}
bash: MISS: is required
Код выхода будет 1.
#tricks#linux
🚢Lloyd’s Agency Network переходит под управление Lloyd’s List Intelligence.
Страховой рынок Lloyd’s передаёт управление Lloyd’s Agency Network провайдеру морских данных Lloyd’s List Intelligence (LLI)с апреля текущего года.
Решение объединяет одну из старейших портовых информационных сетей судоходства с цифровой аналитической платформой.
LLI - возьмёт на себя администрирование глобальной сети, включая аккредитацию агентов, контроль стандартов качества и агентские соглашения.
Сеть Lloyd’s Agents ведёт историю с 1811 года и традиционно обеспечивала локальную экспертизу и отчётность по инцидентам для рынка морского страхования.
Интеграция позволит усилить верификацию событий и повысить качество данных в регионах повышенного риска, где спутниковый трекинг требует подтверждения из локальных источников. Для судоходной отрасли шаг означает дальнейшую цифровизацию страховой экосистемы и сближение трекинга судов, аналитики и портовой информации.
Бренд Lloyd’s Agents сохранится, оставаясь связанным со страховым рынком Lloyd’s, но станет частью единой интеллектуальной платформы LLI.
📌Lloyd’s — британский страховой рынок, основанный в 1688 году в Лондоне, специализируется на специализированном и морском страховании. Работает как рынок синдикатов, объединяющий частных и институциональных андеррайтеров.
#MarineInsurance#Lloyds#MaritimeData#ShippingRisk#LLI