Найдите пользователя развертывания OpsWorks в рецепте

Я пытаюсь выяснить, как извлечь или найти имя пользователя, выполняющего развертывание приложения в заданном стеке OpsWorks. Например, в разделе стека «Развертывания и команды» в таблице отображается история различных развертываний с указанием того, кем был пользователь развертывания... и т. д. Я хотел бы иметь возможность захватить того же пользователя из своего рецепт блюда.

Не похоже, что это что-то, что я могу вытащить из search(:aws_opsworks_app) базы данных (если я не ошибаюсь). Или где-то еще я могу легко получить эту информацию?


person poweratom    schedule 09.08.2016    source источник
comment
Вы имеете в виду системного пользователя, запускающего Chef, или например, какая учетная запись AWS инициировала операцию API?   -  person coderanger    schedule 10.08.2016
comment
Я имел в виду последнее: учетная запись пользователя AWS, которая инициировала операцию развертывания.   -  person poweratom    schedule 10.08.2016


Ответы (1)


Оказывается, есть довольно простой способ получить его через search(:aws_opsworks_command) базу данных.

:aws_opsworks_command предоставляет атрибут iam_user_arn, который можно изменить так, чтобы он отображался как имя IAM пользователя развертывания. Пример строки iam_user_arn выглядит как arn:aws:iam:555555:user/username

Пример:

owc = search(:aws_opsworks_command).first
owc[:iam_user_arn].split(':').last
# => gets us "user/username"

Документация: https://docs.aws.amazon.com/opsworks/latest/userguide/data-bag-json-command.html

person poweratom    schedule 10.08.2016