Sha256: 79bd797bbafe7e2a62d471fcfa43a4600dd5a9e842e314d5d524143e6bac8587

Contents?: true

Size: 1.14 KB

Versions: 6

Compression:

Stored size: 1.14 KB

Contents

module Proxy
  module ContainerGateway
    class NotFound < RuntimeError; end

    class Plugin < ::Proxy::Plugin
      plugin 'container_gateway', Proxy::ContainerGateway::VERSION

      default_settings :pulp_endpoint => "https://#{`hostname`.strip}",
                       :katello_registry_path => '/v2/',
                       :sqlite_db_path => '/var/lib/foreman-proxy/smart_proxy_container_gateway.db'

      # Load defaults that copy values from SETTINGS. This is done as
      # programmable settings since SETTINGS isn't initialized during plugin
      # loading.
      load_programmable_settings do |settings|
        settings[:pulp_client_ssl_ca] ||= SETTINGS.foreman_ssl_ca
        settings[:pulp_client_ssl_cert] ||= SETTINGS.foreman_ssl_cert
        settings[:pulp_client_ssl_key] ||= SETTINGS.foreman_ssl_key
      end

      # TODO: sqlite_db_path should able be readable or creatable. There's no
      # test for creatable
      validate_readable :pulp_client_ssl_ca, :pulp_client_ssl_cert, :pulp_client_ssl_key
      validate :pulp_endpoint, url: true

      rackup_path File.join(__dir__, 'container_gateway_http_config.ru')
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
smart_proxy_container_gateway-1.0.8 lib/smart_proxy_container_gateway/container_gateway.rb
smart_proxy_container_gateway-1.0.7 lib/smart_proxy_container_gateway/container_gateway.rb
smart_proxy_container_gateway-1.0.6 lib/smart_proxy_container_gateway/container_gateway.rb
smart_proxy_container_gateway-1.0.5 lib/smart_proxy_container_gateway/container_gateway.rb
smart_proxy_container_gateway-1.0.4 lib/smart_proxy_container_gateway/container_gateway.rb
smart_proxy_container_gateway-1.0.3 lib/smart_proxy_container_gateway/container_gateway.rb