Sha256: 47712db72fc9b63a2177dc6292d7a0b12b247fb71a8289d0785227b07f8f5ae5
Contents?: true
Size: 1.22 KB
Versions: 1
Compression:
Stored size: 1.22 KB
Contents
require 'thor' require 'natives/app' require 'natives/gemfile_viewer' module Natives class Cli < Thor default_task :install desc 'install [ENTRY1 ENTRY2 ..]', 'install native packages required by the catalog entries' method_option :catalog, default: 'rubygems', aliases: '-c', desc: 'use this catalog' method_option :gemfile, default: 'Gemfile', desc: 'use gems in the gemfile as the catalog entries' method_option :"update-provider", type: 'boolean', default: false, aliases: '-u', desc: "update package provider's repo (eg. apt-get update)" def install(*packages) catalog = options[:catalog] configs = { update_provider: options['update-provider'] } if catalog == 'rubygems' && packages.empty? packages = packages_in_gemfile(options[:gemfile]) end puts "catalog: #{catalog.inspect}" puts "entries: #{packages.inspect}" puts "configs: #{configs}" puts "" Natives::App.new.install(catalog, packages, configs) rescue => ex $stderr.puts ex.message end protected def packages_in_gemfile(gemfile_path) Natives::GemfileViewer.new(gemfile_path).packages end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
natives-0.4.0 | lib/natives/cli.rb |