module BowerVendor class Setup < Base def execute create_bowerrc create_bower_json end def create_bower_json data = { name: 'autogenerated', dependencies: { }, resolutions: { }, } vendors.each do |vendor_key, vendor| version = vendor['version'] tag_version = version git = vendor['git'] tag = vendor['tag'] if git tag_version = tag ? "#{git}##{tag}" : git end data[:dependencies][vendor_key] = tag_version data[:resolutions][vendor_key] = tag_version end target_file = "#{work_dir}/bower.json" File.write(target_file, JSON.pretty_generate(data)) puts "Wrote: #{target_file}" end def create_bowerrc data = { directory: "bower_components" } target_file = "#{work_dir}/.bowerrc" File.write(target_file, JSON.pretty_generate(data)) puts "Wrote: #{target_file}" end end end