The Puppet Azure module requires specific gems to be installed. The directions https://github.com/puppetlabs/puppetlabs-azure show the following example:
/opt/puppetlabs/puppet/bin/gem install azure azure_mgmt_compute azure_mgmt_storage azure_mgmt_resources azure_mgmt_network hocon retries --no-ri --no-rdoc
The specific gem binary /opt/puppetlabs/puppet/bin/gem
is used to ensure the gems are installed to the puppet install directory and use puppet's bundled version of ruby.
Puppet's package resource has a gem provider but it will install using the system ruby.
How can I puppetize the gem install specific to puppet? I prefer not to use an exec
resource. Is there a resource for puppet-agent to install gems?