Невозможно получить секрет из Google Secret Manager из приложения Rails 6
Следуя документации диспетчера секретов, я создал секрет, который теперь пытаюсь получить программно. Моя реализация выглядит так:
require 'google/cloud/secret_manager'
class SecretManager
def self.read(secret_id)
return unless secret_id
Google::Cloud::SecretManager.secret_manager_service.access_secret_version(
name: "projects/my-test-project/secrets/#{secret_id}/versions/latest"
).payload.data
end
end
При исполнении получаю следующее:
irb(main):001:0> SecretManager.read('my-test-key')
objc[9757]: +[__NSCFConstantString initialize] may have been in progress in another thread when fork() was called.
objc[9757]: +[__NSCFConstantString initialize] may have been in progress in another thread when fork() was called. We cannot safely call it or ignore it in the fork() child process. Crashing instead. Set a breakpoint on objc_initializeAfterForkError to debug.
Кроме того, я обнаружил эту проблему (которой около 2 лет): https://bugs.ruby-lang.org/issues/14009, но предлагаемое решение для меня не работает.
Я использую OSX 10.14.6, Ruby 2.6.5, Rails 6.0.2.1