2020-01-28 Использовать Импорт Переменных Вместо Параметров
Различия
Здесь показаны различия между двумя версиями данной страницы.
правила_разработки:как_не_надо_делать:2020-01-28_использовать_импорт_переменных_вместо_параметров [28.01.2020 01:56] v.anohin создано |
правила_разработки:как_не_надо_делать:2020-01-28_использовать_импорт_переменных_вместо_параметров [28.01.2020 02:13] (текущий) v.anohin Approved(v.anohin 11.01.2021 03:55) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | **Постановка задачи:** При вызове супервизора передавать owner_id. | ||
+ | |||
+ | **Проблема:** В конфигурационных файлах vm, cdn и dns записывались разные значения для параметра OWNER. | ||
+ | |||
+ | **Ошибка:** Нельзя использовать импорт переменных и получение данных от других сущностей. Например cdn не должен зависить от vm, и скрипт упадёт, если нет vm. | ||
+ | |||
+ | <code bash> | ||
+ | declare VM_OWNER | ||
+ | |||
+ | . cloud_conf vm get "$1" | ||
+ | |||
+ | . . . | ||
+ | |||
+ | cloud_conf cdn set "${CDN_NAME}" --owner="${VM_OWNER}" | ||
+ | cloud_conf cdn commit "$CDN_NAME" "$0 $@" | ||
+ | </code> | ||
+ | |||
+ | **Как надо делать:** Передавать параметры через опции в существующие вызовы create или set. | ||
+ | |||
+ | <code bash> | ||
+ | cloud_conf cdn create "${CDN_NAME}" "${ARG_OWNER:+--owner=$ARG_OWNER}" | ||
+ | </code> | ||
+ | ~~OWNERAPPROVE~~ /*Не удаляйте эту строку и ниже!*/ | ||
+ | |||
+ | {(rater>id=1|name=Прочитал_правила_разработки:как_не_надо_делать:2020-01-28_использовать_импорт_переменных_вместо_параметров|type=vote|trace=user|tracedetails=1)} | ||
+ | |||