Default API endpoint
Default User Agent header string
The name of the Chef API client. This is the equivalent of
client_name
in Chef terminology. In most cases, this is your
Chef username.
@return [String, nil]
# File lib/chef-api/defaults.rb, line 88 def client ENV['CHEF_API_CLIENT'] || config['CHEF_API_CLIENT'] end
The Chef API configuration
@return [Hash]
# File lib/chef-api/defaults.rb, line 26 def config path = File.expand_path(ENV['CHEF_API_CONFIG'] || '~/.chef-api') @config ||= File.exist?(path) ? JSON.parse(File.read(path)) : {} end
The endpoint where the Chef Server lives. This is equivalent to the
chef_server_url
in Chef terminology. If you are using
Enterprise Hosted Chef or Enterprise Chef on premise, this endpoint should
include your organization name. For example:
https://api.opscode.com/organizations/bacon
If you are running Open Source Chef Server or Chef Zero, this is the full URL to your Chef Server instance, including the server port and FQDN.
https://chef.server.local:4567/
@return [String] (default: +api.opscode.com/+)
# File lib/chef-api/defaults.rb, line 47 def endpoint ENV['CHEF_API_ENDPOINT'] || config['CHEF_API_ENDPOINT'] || ENDPOINT end
The flavor of the target Chef Server. There are two possible values:
- enterprise - open_source
“Enterprise” covers both Hosted Chef and Enterprise Chef. “Open Source” covers both Chef Zero and Open Source Chef Server.
@return [true, false]
# File lib/chef-api/defaults.rb, line 62 def flavor if ENV['CHEF_API_FLAVOR'] ENV['CHEF_API_FLAVOR'].to_sym elsif config['CHEF_API_FLAVOR'] config['CHEF_API_FLAVOR'] else endpoint.include?('/organizations') ? :enterprise : :open_source end end
The private key to authentication against the Chef Server. This is
equivalent to the client_key
in Chef terminology. This value
can be the client key in plain text or a path to the key on disk.
@return [String, nil]
# File lib/chef-api/defaults.rb, line 99 def key ENV['CHEF_API_KEY'] || config['CHEF_API_KEY'] end
The list of calculated default options for the configuration.
@return [Hash]
# File lib/chef-api/defaults.rb, line 18 def options Hash[Configurable.keys.map { |key| [key, send(key)] }] end
The HTTP Proxy server address as a string
@return [String, nil]
# File lib/chef-api/defaults.rb, line 107 def proxy_address ENV['CHEF_API_PROXY_ADDRESS'] || config['CHEF_API_PROXY_ADDRESS'] end
The HTTP Proxy user password as a string
@return [String, nil]
# File lib/chef-api/defaults.rb, line 116 def proxy_password ENV['CHEF_API_PROXY_PASSWORD'] || config['CHEF_API_PROXY_PASSWORD'] end
The HTTP Proxy server port as a string
@return [String, nil]
# File lib/chef-api/defaults.rb, line 125 def proxy_port ENV['CHEF_API_PROXY_PORT'] || config['CHEF_API_PROXY_PORT'] end
The HTTP Proxy server username as a string
@return [String, nil]
# File lib/chef-api/defaults.rb, line 134 def proxy_username ENV['CHEF_API_PROXY_USERNAME'] || config['CHEF_API_PROXY_USERNAME'] end
The path to a pem file on disk for use with a custom SSL verification
@return [String, nil]
# File lib/chef-api/defaults.rb, line 143 def ssl_pem_file ENV['CHEF_API_SSL_PEM_FILE'] || config['CHEF_API_SSL_PEM_FILE'] end
Verify SSL requests (default: true)
@return [true, false]
# File lib/chef-api/defaults.rb, line 152 def ssl_verify if ENV['CHEF_API_SSL_VERIFY'].nil? && config['CHEF_API_SSL_VERIFY'].nil? true else %w[t y].include?(ENV['CHEF_API_SSL_VERIFY'].downcase[0]) || config['CHEF_API_SSL_VERIFY'] end end
The User Agent header to send along.
@return [String]
# File lib/chef-api/defaults.rb, line 77 def user_agent ENV['CHEF_API_USER_AGENT'] || config['CHEF_API_USER_AGENT'] || USER_AGENT end