desc ‘pluto -=- setup/update feed subscriptions’ task :setup => :environment do
## check if PLANET key passed in if ENV['PLANET'].present? key = ENV['PLANET'] puts "setup planet for key >#{key}<" else puts 'no PLANET=key passed along; try defaults' # try pluto.yml or planet.yml if exist if File.exists?( './pluto.ini' ) # check if pluto.ini exists, if yes add/use it key ='pluto' elsif File.exists?( './planet.ini' ) # check if planet.ini exists, if yes add/use it key = 'planet' else puts '*** error: no arg passed in; no pluto.ini or planet.ini found in working folder' exit 1 end end config_path = "./#{key}.ini" if File.exists?( config_path ) config = INI.load_file( config_path ) puts "dump planet setup settings:" pp config # note: allow multiple planets (sites) for a single install Pluto::Model::Site.deep_create_or_update_from_hash!( key, config ) else ## try download shortcut index list and fetch planet config Pluto.setup_planet( key ) end puts 'Done.'
end