Problem:
Trying to install the smart_proxy_dns_route53
plugin, however, I’m getting presented with a stack trace.
Expected outcome:
Plugin installs successfully with no errors
Foreman and Proxy versions:
Foreman Smart Proxy: 1.20.1
Foreman and Proxy plugin versions:
foreman-tasks | The goal of this plugin is to unify the way of showing task statuses across the Foreman instance. It defines Task model for keeping the information about the tasks and Lock for assigning the tasks to resources. The locking allows dealing with preventing multiple colliding tasks to be run on the same resource. It also optionally provides Dynflow infrastructure for using it for managing the tasks. | Ivan Nečas | 0.14.3 |
---|---|---|---|
foreman_ansible | Ansible integration with Foreman | Daniel Lobato Garcia | 2.2.11 |
foreman_cockpit | This plugin adds a tab to see your host’s Cockpit components, such as console, journal, and networking if the host has Cockpit installed. | Daniel Lobato Garcia | 2.0.3 |
foreman_column_view | Displays an additional column in the Foreman Hosts view and/or additional entries in the Host show page | Greg Sutcliffe | 0.4.0 |
foreman_hooks | Plugin engine for Foreman that enables running custom hook scripts on Foreman events | Dominic Cleal | 0.3.15 |
foreman_memcache | Adds memcache support to foreman | Ohad Levy | 0.1.1 |
foreman_remote_execution | A plugin bringing remote execution to the Foreman, completing the config management functionality with remote management functionality. | Foreman Remote Execution team | 1.6.5 |
foreman_slack | Sends events (like host built) from Foreman to Slack. | Shlomi Zadok | 0.0.3 |
Other relevant data:
[e.g. logs from Foreman and/or the Proxy, modified templates, commands issued, etc]
Installed using the following steps:
- Installed the following gems and added them to /usr/share/foreman/bundler.d/Gemfile.local.rb:
- smart_proxy_dns_route53
- gem route53
- gem ruby-hmac
- Updated /etc/foreman-proxy/settings.d/dns.yml:
---
# DNS management
:enabled: true
# valid providers:
# dns_dnscmd (Microsoft Windows native implementation)
# dns_nsupdate
# dns_nsupdate_gss (for GSS-TSIG support)
# dns_libvirt (dnsmasq via libvirt)
:use_provider: dns_route53
# use this setting if you want to override default TTL setting (86400)
:dns_ttl: 86400
- Updated _/etc/foreman-proxy/settings.d/_dns_route53.yml:
---
#
# Configuration file for 'dns_route53' DNS provider
#
## Set the following keys for the AWS credentials in use:
:aws_access_key: "<REDACTED>"
:aws_secret_key: "<REDACTED>"
- Restarted foreman and httpd service (the former doesn’t seem to do anything,however, the latter does).
I’m then shown the error messages below (truncated).
(for logs, surround with three back-ticks to get proper formatting, e.g.)
uninitialized constant Proxy::Provider (NameError)
/opt/theforeman/tfm/root/usr/share/gems/gems/foreman_hooks-0.3.15/lib/foreman_hooks/as_dependencies_hook.rb:4:in `load_missing_constant'
/opt/rh/rh-ruby25/root/usr/local/share/gems/gems/smart_proxy_dns_route53-3.0.1/lib/smart_proxy_dns_route53/dns_route53_plugin.rb:5:in `<module:Route53>'
/opt/rh/rh-ruby25/root/usr/local/share/gems/gems/smart_proxy_dns_route53-3.0.1/lib/smart_proxy_dns_route53/dns_route53_plugin.rb:4:in `<top (required)>'
/opt/rh/rh-ruby25/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:59:in `require'
/opt/rh/rh-ruby25/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:59:in `require'
/opt/theforeman/tfm/root/usr/share/gems/gems/polyglot-0.3.5/lib/polyglot.rb:65:in `require'
/opt/rh/rh-ruby25/root/usr/local/share/gems/gems/smart_proxy_dns_route53-3.0.1/lib/smart_proxy_dns_route53.rb:1:in `<top (required)>'
/opt/rh/rh-ruby25/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:135:in `require'
/opt/rh/rh-ruby25/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:135:in `rescue in require'
/opt/rh/rh-ruby25/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:39:in `require'
/opt/theforeman/tfm/root/usr/share/gems/gems/polyglot-0.3.5/lib/polyglot.rb:65:in `require'
/opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext/runtime.rb:41:in `block in system_require'
/opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext/runtime.rb:37:in `each'
/opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext/runtime.rb:37:in `system_require'
/opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext.rb:19:in `block in system_require'
/opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext.rb:14:in `each'
/opt/theforeman/tfm/root/usr/share/gems/gems/bundler_ext-0.4.1/lib/bundler_ext.rb:14:in `system_require'
/usr/share/foreman/config/application.rb:17:in `<top (required)>'
/opt/rh/rh-ruby25/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:59:in `require'
/opt/rh/rh-ruby25/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:59:in `require'
/usr/share/foreman/config/environment.rb:2:in `<top (required)>'
/opt/rh/rh-ruby25/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:59:in `require'
/opt/rh/rh-ruby25/root/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:59:in `require'
config.ru:5:in `block in <main>'
/opt/theforeman/tfm-ror52/root/usr/share/gems/gems/rack-2.0.5/lib/rack/builder.rb:55:in `instance_eval'
/opt/theforeman/tfm-ror52/root/usr/share/gems/gems/rack-2.0.5/lib/rack/builder.rb:55:in `initialize'
config.ru:1:in `new'
config.ru:1:in `<main>'
/usr/share/passenger/helper-scripts/rack-preloader.rb:112:in `eval'
/usr/share/passenger/helper-scripts/rack-preloader.rb:112:in `preload_app'
/usr/share/passenger/helper-scripts/rack-preloader.rb:158:in `<module:App>'
/usr/share/passenger/helper-scripts/rack-preloader.rb:29:in `<module:PhusionPassenger>'
/usr/share/passenger/helper-scripts/rack-preloader.rb:28:in `<main>'