2016-06-23 2 views
0

Мой верхний файл выглядит следующим образом.Заказ на выполнение солевого состояния

base: '[email protected]:docker': - states/docker '[email protected]:sb-monolith-ecr': - states/aws-ecr-logged-in - states/sb-monolith-ecr '[email protected]:web-applications-ecr': - states/aws-ecr-logged-in - states/web-applications-ecr

АМС-ECR-Логгин в состоянии:

aws-erc-logged-in: cmd.run: - name: $(aws ecr get-login --region={{ pillar['aws']['region'] }})

Я ожидаю, состояние входа, чтобы вызвать один раз и до состояний, которые требуют проверки подлинности на AWS ECR. Сегодня, когда я обновил своих миньонов, у некоторых из них были ошибки аутентификации. Каков наилучший способ гарантировать, что команда входа в систему будет работать в нужное время?

ответ

1

Я думаю, было бы лучше, если бы вы использовали require, чтобы убедиться, что вы вошли в систему до любого другого состояния, которое нуждается в аутентификации. также, если в команде входа есть ошибка, любое состояние, зависящее от этого, не будет выполнено, что избавит вас от получения ошибок аутентификации в этом случае. В вашем случае вам понадобится SLS, который называется aws-ecr-logged-in Как вы думаете?

+0

У меня была настройка раньше, однако логин запускается дважды в этом подходе. Есть ли какие-либо, чтобы команда выполнила концепцию «один раз на машину за состояние»? –

+0

Что касается написания sls, требующего sls: login, а затем sb-monolith-ecr, если роль sb-monolith-ecr и в том числе веб-приложения-ecr, если роль является веб-приложениями-ecr (используйте оператор if, предоставленный дзиндзя). у вас есть что-то в виду? –

+0

Кажется, что это сработает. Я попробую, когда у меня будет время. –

 Смежные вопросы

  • Нет связанных вопросов^_^