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)}
 +