Opsworks с Chef 12 не может получить доступ к развертыванию ssh_key

В соответствии с документацией OpsWorks для Chef v11 или более ранней версии вы можете получить доступ к ключу развертывания, выполнив:

include 'deploy'
key = node[:deploy]['appshortname'][:scm][:ssh_key]

Однако согласно документации OpsWorks with Chef 12 :

Чтобы перенести код рецепта, который обращается к настройкам стека, из Chef 11.10 и более ранних версий для Linux в Chef 12 Linux, вы должны изменить свой код, чтобы:

  • Доступ к пакетам данных Chef вместо атрибутов Chef.
  • Используйте поиск Chef вместо объекта узла Chef.
  • Используйте имена пакетов данных AWS OpsWorks, такие как aws_opsworks_app, вместо использования имен атрибутов AWS * OpsWorks, таких как opsworks и deploy.

Моя проблема в том, что документация о том, как получить доступ к ssh_key для развертывания, не была обновлена, чтобы показать, где в пакетах данных я могу найти ключ.

Кто-нибудь знает актуальную документацию или может кто-нибудь указать мне правильное направление для поиска ключа развертывания ssh?


person bdx    schedule 14.12.2015    source источник


Ответы (1)


Это указано на этой странице документации в разделе «app_source»: http://docs.aws.amazon.com/opsworks/latest/userguide/data-bag-json-app.html#data-bag-json-app-app-source

Вот немного измененный пример с приведенной выше страницы, который также показывает ключ SSH:

search("aws_opsworks_app").each do |app|
  Chef::Log.info("********** The app's short name is '#{app['shortname']}' **********")
  Chef::Log.info("********** The app's ssh_key is '#{app['app_source’][‘ssh_key’]}’ **********")
end
person mauve    schedule 16.12.2015