Sha256: 0c1b85cb7db4f0e0e2a8ec979963d5262b2e8147003609453e6842175da99c56

Contents?: true

Size: 898 Bytes

Versions: 13

Compression:

Stored size: 898 Bytes

Contents

# frozen_string_literal: true

# Released under the MIT License.
# Copyright, 2024, by Samuel Williams.

module Falcon
	module Environment
		# This module provides a common interface for configuring the Falcon application.
		# @todo Reuse this for proxy and redirect services.
		module Configured
			# All the falcon application configuration paths.
			# @returns [Array(String)] Paths to the falcon application configuration files.
			def configuration_paths
				["/srv/http/*/falcon.rb"]
			end
			
			# All the falcon application configuration paths, with wildcards expanded.
			def resolved_configuration_paths
				if configuration_paths = self.configuration_paths
					configuration_paths.flat_map do |path|
						Dir.glob(path)
					end.uniq
				else
					[]
				end
			end
			
			def configuration
				::Async::Service::Configuration.load(resolved_configuration_paths)
			end
		end
	end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
falcon-0.50.0 lib/falcon/environment/configured.rb
falcon-0.49.0 lib/falcon/environment/configured.rb
falcon-0.48.6 lib/falcon/environment/configured.rb
falcon-0.48.5 lib/falcon/environment/configured.rb
falcon-0.48.4 lib/falcon/environment/configured.rb
falcon-0.48.3 lib/falcon/environment/configured.rb
falcon-0.48.2 lib/falcon/environment/configured.rb
falcon-0.48.1 lib/falcon/environment/configured.rb
falcon-0.48.0 lib/falcon/environment/configured.rb
falcon-0.47.10 lib/falcon/environment/configured.rb
falcon-0.47.9 lib/falcon/environment/configured.rb
falcon-0.47.8 lib/falcon/environment/configured.rb
falcon-0.47.7 lib/falcon/environment/configured.rb