Как сделать одно пользовательское состояние зависимым от другого?

как сделать одно пользовательское состояние зависимым от другого с реквизитом в sls-файле?

пример: два пользовательские состояния на _states/seuss.py модуль:

# seuss.py
def green_eggs():
    return {'name': 'green_eggs', 'result': True, 'comment': '', 'changes': {}}

def ham():
    return {'name': 'ham', 'result': True, 'comment': '', 'changes': {}}

Я хочу ham зависит от green_eggs:

# init.sls

have_green_eggs:
  seuss.green_eggs:
  - require:
    - user: seuss

have_ham:
  seuss.ham:
  - require:
    - ???

как сделать ??? зависимость от успешного завершения green_eggs?

1 ответов


вы хотите:

have_ham:
  seuss.ham:
    - require:
      - seuss: have_green_eggs

однако в настоящее время вы определяете два состояния seuss ресурсов, что означает, что либо seuss.ham или seuss.green_eggs под названием have_green_eggs может выполнить это требование.

если вы этого не хотите, вам придется определить состояния в отдельных файлах (например,seuss_ham.exists и seuss_green_eggs.exists).