Sha256: fd2f7fa2e65f2131675f758e4075884d9bd19142115962db2e82dd190c93fb6f
Contents?: true
Size: 1.31 KB
Versions: 4
Compression:
Stored size: 1.31 KB
Contents
require 'tempfile' require 'yaml' module Govuk module Lint class ConfigFile CONFIG_PATH = File.expand_path("../../../../configs", __FILE__) BASE_CONFIG_FILE = File.join(CONFIG_PATH, "rubocop/all.yml") def config_file_path return BASE_CONFIG_FILE unless File.exist?(local_config_file_path) tempfile_for_configs.path end private def merged_global_and_local_configs config = load_global_config config['inherit_from'] = absolutize_paths(config) config['inherit_from'] << local_config_file_path config end def load_global_config YAML.load_file(BASE_CONFIG_FILE) end def absolutize_paths(config) config['inherit_from'].map do |filename| File.join(CONFIG_PATH, "rubocop/#{filename}") end end def local_config_file_path @local_config_file_path ||= File.join(Dir.pwd, ".rubocop.yml") end def tempfile_for_configs @tempfile_for_configs ||= begin file = Tempfile.new('tmp-rubocop-all.yml') file.write(merged_global_and_local_configs.to_yaml) file.close file end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems