milkode 0.6.3 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Gemfile +3 -4
 - data/HISTORY.ja.rdoc +21 -0
 - data/HISTORY.rdoc +14 -0
 - data/Rakefile +1 -7
 - data/VERSION +1 -1
 - data/bin/gmilk +1 -1
 - data/bin/milk +3 -3
 - data/lib/milkode/cdstk/cdstk.rb +68 -23
 - data/lib/milkode/cdweb/app.rb +1 -1
 - data/lib/milkode/cdweb/lib/database.rb +8 -1
 - data/lib/milkode/cdweb/views/layout.haml +1 -1
 - data/lib/milkode/cli.rb +249 -0
 - data/lib/milkode/grep/cli_grep.rb +2 -2
 - data/milkode.gemspec +22 -16
 - data/test/milkode_test_work.rb +1 -1
 - data/test/test_cdstk.rb +1 -1
 - data/test/{test_cli_cdstk.rb → test_cli.rb} +41 -28
 - data/test/test_yaml_file_wrapper.rb +6 -4
 - metadata +82 -45
 - data/Gemfile.lock +0 -18
 - data/lib/milkode/cdstk/cli_cdstk.rb +0 -149
 - data/lib/milkode/cdstk/cli_cdstksub.rb +0 -184
 - data/test/test_bin_exec.rb +0 -28
 
    
        data/Gemfile.lock
    DELETED
    
    | 
         @@ -1,18 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            GEM
         
     | 
| 
       2 
     | 
    
         
            -
              remote: http://rubygems.org/
         
     | 
| 
       3 
     | 
    
         
            -
              specs:
         
     | 
| 
       4 
     | 
    
         
            -
                git (1.2.5)
         
     | 
| 
       5 
     | 
    
         
            -
                jeweler (1.5.2)
         
     | 
| 
       6 
     | 
    
         
            -
                  bundler (~> 1.0.0)
         
     | 
| 
       7 
     | 
    
         
            -
                  git (>= 1.2.5)
         
     | 
| 
       8 
     | 
    
         
            -
                  rake
         
     | 
| 
       9 
     | 
    
         
            -
                rake (0.8.7)
         
     | 
| 
       10 
     | 
    
         
            -
                rcov (0.9.9)
         
     | 
| 
       11 
     | 
    
         
            -
             
     | 
| 
       12 
     | 
    
         
            -
            PLATFORMS
         
     | 
| 
       13 
     | 
    
         
            -
              ruby
         
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
            DEPENDENCIES
         
     | 
| 
       16 
     | 
    
         
            -
              bundler (~> 1.0.0)
         
     | 
| 
       17 
     | 
    
         
            -
              jeweler (~> 1.5.2)
         
     | 
| 
       18 
     | 
    
         
            -
              rcov
         
     | 
| 
         @@ -1,149 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # -*- coding: utf-8 -*-
         
     | 
| 
       2 
     | 
    
         
            -
            require 'optparse'
         
     | 
| 
       3 
     | 
    
         
            -
            require 'milkode/cdstk/cli_cdstksub'
         
     | 
| 
       4 
     | 
    
         
            -
            require 'milkode/cdstk/cdstk'
         
     | 
| 
       5 
     | 
    
         
            -
            require 'milkode/common/dbdir.rb'
         
     | 
| 
       6 
     | 
    
         
            -
            require 'milkode/cdweb/cli_cdweb'
         
     | 
| 
       7 
     | 
    
         
            -
            require 'milkode/grep/cli_grep'
         
     | 
| 
       8 
     | 
    
         
            -
            include Milkode
         
     | 
| 
       9 
     | 
    
         
            -
             
     | 
| 
       10 
     | 
    
         
            -
            module Milkode
         
     | 
| 
       11 
     | 
    
         
            -
              class CLI_Cdstk
         
     | 
| 
       12 
     | 
    
         
            -
                def self.execute(stdout, arguments=[])
         
     | 
| 
       13 
     | 
    
         
            -
                  opt = OptionParser.new <<EOF
         
     | 
| 
       14 
     | 
    
         
            -
            #{File.basename($0)} COMMAND [ARGS]
         
     | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
       16 
     | 
    
         
            -
            The most commonly used #{File.basename($0)} are:
         
     | 
| 
       17 
     | 
    
         
            -
              add         Add packages.
         
     | 
| 
       18 
     | 
    
         
            -
              cleanup     Cleanup garbage records.
         
     | 
| 
       19 
     | 
    
         
            -
              dir         Disp package dir.
         
     | 
| 
       20 
     | 
    
         
            -
              dump        Dump records.
         
     | 
| 
       21 
     | 
    
         
            -
              grep        Print lines matching a pattern
         
     | 
| 
       22 
     | 
    
         
            -
              ignore      Ignore setting.
         
     | 
| 
       23 
     | 
    
         
            -
              info        Disp information.
         
     | 
| 
       24 
     | 
    
         
            -
              init        Init db.
         
     | 
| 
       25 
     | 
    
         
            -
              list        List packages. 
         
     | 
| 
       26 
     | 
    
         
            -
              mcd         Print 'mcd' command.
         
     | 
| 
       27 
     | 
    
         
            -
              pwd         Disp current db.
         
     | 
| 
       28 
     | 
    
         
            -
              rebuild     Rebuild db.
         
     | 
| 
       29 
     | 
    
         
            -
              remove      Remove packages.
         
     | 
| 
       30 
     | 
    
         
            -
              setdb       Set default db. 
         
     | 
| 
       31 
     | 
    
         
            -
              update      Update packages.
         
     | 
| 
       32 
     | 
    
         
            -
              web         Run web-app.
         
     | 
| 
       33 
     | 
    
         
            -
            EOF
         
     | 
| 
       34 
     | 
    
         
            -
             
     | 
| 
       35 
     | 
    
         
            -
                  opt.order!(arguments)
         
     | 
| 
       36 
     | 
    
         
            -
                  subcommand = arguments.shift
         
     | 
| 
       37 
     | 
    
         
            -
                  
         
     | 
| 
       38 
     | 
    
         
            -
                  case subcommand
         
     | 
| 
       39 
     | 
    
         
            -
                  when 'grep'
         
     | 
| 
       40 
     | 
    
         
            -
                    Milkode::CLI_Grep.execute(stdout, arguments)
         
     | 
| 
       41 
     | 
    
         
            -
                  else
         
     | 
| 
       42 
     | 
    
         
            -
                    subcommand_default(stdout, opt, subcommand, arguments)
         
     | 
| 
       43 
     | 
    
         
            -
                  end
         
     | 
| 
       44 
     | 
    
         
            -
                end
         
     | 
| 
       45 
     | 
    
         
            -
             
     | 
| 
       46 
     | 
    
         
            -
                private
         
     | 
| 
       47 
     | 
    
         
            -
             
     | 
| 
       48 
     | 
    
         
            -
                def self.subcommand_default(stdout, opt, subcommand, arguments)
         
     | 
| 
       49 
     | 
    
         
            -
                  subopt = Hash.new
         
     | 
| 
       50 
     | 
    
         
            -
                  suboptions = Hash.new
         
     | 
| 
       51 
     | 
    
         
            -
                  
         
     | 
| 
       52 
     | 
    
         
            -
                  subopt['init'], suboptions['init'] = CLI_Cdstksub.setup_init
         
     | 
| 
       53 
     | 
    
         
            -
                  subopt['add'], suboptions['add'] = CLI_Cdstksub.setup_add
         
     | 
| 
       54 
     | 
    
         
            -
                  subopt['update'], suboptions['update'] = CLI_Cdstksub.setup_update
         
     | 
| 
       55 
     | 
    
         
            -
                  subopt['remove'], suboptions['remove'] = CLI_Cdstksub.setup_remove
         
     | 
| 
       56 
     | 
    
         
            -
                  subopt['list'], suboptions['list'] = CLI_Cdstksub.setup_list
         
     | 
| 
       57 
     | 
    
         
            -
                  subopt['pwd'], suboptions['pwd'] = CLI_Cdstksub.setup_pwd
         
     | 
| 
       58 
     | 
    
         
            -
                  subopt['cleanup'], suboptions['cleanup'] = CLI_Cdstksub.setup_cleanup
         
     | 
| 
       59 
     | 
    
         
            -
                  subopt['rebuild'], suboptions['rebuild'] = CLI_Cdstksub.setup_rebuild
         
     | 
| 
       60 
     | 
    
         
            -
                  subopt['dump'] = OptionParser.new("#{File.basename($0)} dump")
         
     | 
| 
       61 
     | 
    
         
            -
                  subopt['web'], suboptions['web'] = CLI_Cdstksub.setup_web
         
     | 
| 
       62 
     | 
    
         
            -
                  subopt['dir'], suboptions['dir'] = CLI_Cdstksub.setup_dir
         
     | 
| 
       63 
     | 
    
         
            -
                  subopt['setdb'], suboptions['setdb'] = CLI_Cdstksub.setup_setdb
         
     | 
| 
       64 
     | 
    
         
            -
                  subopt['mcd'], suboptions['mcd'] = CLI_Cdstksub.setup_mcd
         
     | 
| 
       65 
     | 
    
         
            -
                  subopt['info'], suboptions['info'] = CLI_Cdstksub.setup_info
         
     | 
| 
       66 
     | 
    
         
            -
                  subopt['ignore'], suboptions['ignore'] = CLI_Cdstksub.setup_ignore
         
     | 
| 
       67 
     | 
    
         
            -
                  
         
     | 
| 
       68 
     | 
    
         
            -
                  if (subopt[subcommand])
         
     | 
| 
       69 
     | 
    
         
            -
                    subopt[subcommand].parse!(arguments) unless arguments.empty?
         
     | 
| 
       70 
     | 
    
         
            -
                    init_default = suboptions['init'][:init_default]
         
     | 
| 
       71 
     | 
    
         
            -
             
     | 
| 
       72 
     | 
    
         
            -
                    db_dir = select_dbdir(subcommand, init_default, arguments)
         
     | 
| 
       73 
     | 
    
         
            -
                    obj = Cdstk.new(stdout, db_dir)
         
     | 
| 
       74 
     | 
    
         
            -
             
     | 
| 
       75 
     | 
    
         
            -
                    case subcommand
         
     | 
| 
       76 
     | 
    
         
            -
                    when 'init'
         
     | 
| 
       77 
     | 
    
         
            -
                      if (arguments.size <= 1)
         
     | 
| 
       78 
     | 
    
         
            -
                        FileUtils.mkdir_p db_dir if (init_default || init_specify_dbddir?(arguments))
         
     | 
| 
       79 
     | 
    
         
            -
                        obj.init(suboptions[subcommand])
         
     | 
| 
       80 
     | 
    
         
            -
                      else
         
     | 
| 
       81 
     | 
    
         
            -
                        $stderr.puts "milk init [db_dir] (Cannot specify two 'db_dir')"
         
     | 
| 
       82 
     | 
    
         
            -
                      end
         
     | 
| 
       83 
     | 
    
         
            -
                    when 'update'
         
     | 
| 
       84 
     | 
    
         
            -
                      obj.update(arguments, suboptions[subcommand])
         
     | 
| 
       85 
     | 
    
         
            -
                    when 'add'
         
     | 
| 
       86 
     | 
    
         
            -
                      obj.add(arguments, suboptions[subcommand])
         
     | 
| 
       87 
     | 
    
         
            -
                    when 'remove'
         
     | 
| 
       88 
     | 
    
         
            -
                      obj.remove(arguments, suboptions[subcommand])
         
     | 
| 
       89 
     | 
    
         
            -
                    when 'list'
         
     | 
| 
       90 
     | 
    
         
            -
                      obj.list(arguments, suboptions[subcommand])
         
     | 
| 
       91 
     | 
    
         
            -
                    when 'pwd'
         
     | 
| 
       92 
     | 
    
         
            -
                      obj.pwd(suboptions[subcommand])
         
     | 
| 
       93 
     | 
    
         
            -
                    when 'cleanup'
         
     | 
| 
       94 
     | 
    
         
            -
                      obj.cleanup(suboptions[subcommand])
         
     | 
| 
       95 
     | 
    
         
            -
                    when 'rebuild'
         
     | 
| 
       96 
     | 
    
         
            -
                      obj.rebuild(arguments, suboptions[subcommand])
         
     | 
| 
       97 
     | 
    
         
            -
                    when 'dump'
         
     | 
| 
       98 
     | 
    
         
            -
                      obj.dump
         
     | 
| 
       99 
     | 
    
         
            -
                    when 'web'
         
     | 
| 
       100 
     | 
    
         
            -
                      obj.compatible?
         
     | 
| 
       101 
     | 
    
         
            -
                      Milkode::CLI_Cdweb.execute_with_options(stdout, suboptions[subcommand])
         
     | 
| 
       102 
     | 
    
         
            -
                    when 'dir'
         
     | 
| 
       103 
     | 
    
         
            -
                      obj.dir(arguments, suboptions[subcommand])
         
     | 
| 
       104 
     | 
    
         
            -
                    when 'setdb'
         
     | 
| 
       105 
     | 
    
         
            -
                      obj.setdb(arguments, suboptions[subcommand])
         
     | 
| 
       106 
     | 
    
         
            -
                    when 'mcd'
         
     | 
| 
       107 
     | 
    
         
            -
                      obj.mcd(arguments, suboptions[subcommand])
         
     | 
| 
       108 
     | 
    
         
            -
                    when 'info'
         
     | 
| 
       109 
     | 
    
         
            -
                      obj.info(arguments, suboptions[subcommand])
         
     | 
| 
       110 
     | 
    
         
            -
                    when 'ignore'
         
     | 
| 
       111 
     | 
    
         
            -
                      begin
         
     | 
| 
       112 
     | 
    
         
            -
                        obj.ignore(arguments, suboptions[subcommand])
         
     | 
| 
       113 
     | 
    
         
            -
                      rescue IgnoreError => e
         
     | 
| 
       114 
     | 
    
         
            -
                        stdout.puts e.message
         
     | 
| 
       115 
     | 
    
         
            -
                      end
         
     | 
| 
       116 
     | 
    
         
            -
                    end
         
     | 
| 
       117 
     | 
    
         
            -
                  else
         
     | 
| 
       118 
     | 
    
         
            -
                    if subcommand
         
     | 
| 
       119 
     | 
    
         
            -
                      $stderr.puts "#{File.basename($0)}: '#{subcommand}' is not a #{File.basename($0)} command. See '#{File.basename($0)} --help'"
         
     | 
| 
       120 
     | 
    
         
            -
                    else
         
     | 
| 
       121 
     | 
    
         
            -
                      stdout.puts opt.help
         
     | 
| 
       122 
     | 
    
         
            -
                    end
         
     | 
| 
       123 
     | 
    
         
            -
                  end
         
     | 
| 
       124 
     | 
    
         
            -
                end
         
     | 
| 
       125 
     | 
    
         
            -
             
     | 
| 
       126 
     | 
    
         
            -
                def self.select_dbdir(subcommand, init_default, arguments)
         
     | 
| 
       127 
     | 
    
         
            -
                  if (subcommand == 'init')
         
     | 
| 
       128 
     | 
    
         
            -
                    if (init_specify_dbddir?(arguments))
         
     | 
| 
       129 
     | 
    
         
            -
                      arguments[0]
         
     | 
| 
       130 
     | 
    
         
            -
                    elsif (init_default)
         
     | 
| 
       131 
     | 
    
         
            -
                      Dbdir.default_dir
         
     | 
| 
       132 
     | 
    
         
            -
                    else
         
     | 
| 
       133 
     | 
    
         
            -
                      '.'
         
     | 
| 
       134 
     | 
    
         
            -
                    end
         
     | 
| 
       135 
     | 
    
         
            -
                  else
         
     | 
| 
       136 
     | 
    
         
            -
                    if (Dbdir.dbdir?('.') || !Dbdir.dbdir?(Dbdir.default_dir))
         
     | 
| 
       137 
     | 
    
         
            -
                      '.'
         
     | 
| 
       138 
     | 
    
         
            -
                    else
         
     | 
| 
       139 
     | 
    
         
            -
                      Dbdir.default_dir
         
     | 
| 
       140 
     | 
    
         
            -
                    end
         
     | 
| 
       141 
     | 
    
         
            -
                  end
         
     | 
| 
       142 
     | 
    
         
            -
                end
         
     | 
| 
       143 
     | 
    
         
            -
             
     | 
| 
       144 
     | 
    
         
            -
                def self.init_specify_dbddir?(arguments)
         
     | 
| 
       145 
     | 
    
         
            -
                  arguments.size == 1
         
     | 
| 
       146 
     | 
    
         
            -
                end
         
     | 
| 
       147 
     | 
    
         
            -
             
         
     | 
| 
       148 
     | 
    
         
            -
              end
         
     | 
| 
       149 
     | 
    
         
            -
            end
         
     | 
| 
         @@ -1,184 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # -*- coding: utf-8 -*-
         
     | 
| 
       2 
     | 
    
         
            -
            require 'optparse'
         
     | 
| 
       3 
     | 
    
         
            -
            require 'milkode/cdstk/cdstk'
         
     | 
| 
       4 
     | 
    
         
            -
            require 'milkode/common/dbdir.rb'
         
     | 
| 
       5 
     | 
    
         
            -
            require 'milkode/cdweb/cli_cdweb'
         
     | 
| 
       6 
     | 
    
         
            -
            include Milkode
         
     | 
| 
       7 
     | 
    
         
            -
             
     | 
| 
       8 
     | 
    
         
            -
            module Milkode
         
     | 
| 
       9 
     | 
    
         
            -
              class CLI_Cdstksub
         
     | 
| 
       10 
     | 
    
         
            -
                def self.setup_init
         
     | 
| 
       11 
     | 
    
         
            -
                  options = {:init_default => false}
         
     | 
| 
       12 
     | 
    
         
            -
                  
         
     | 
| 
       13 
     | 
    
         
            -
                  opt = OptionParser.new("#{File.basename($0)} init [db_dir]")
         
     | 
| 
       14 
     | 
    
         
            -
                  opt.on('--default', 'Init default db, ENV[\'MILKODE_DEFAULT_DIR\'] or ~/.milkode.') { options[:init_default] = true }
         
     | 
| 
       15 
     | 
    
         
            -
                  opt.on('-s', '--setdb', 'With setdb.') { options[:setdb] = true }
         
     | 
| 
       16 
     | 
    
         
            -
             
     | 
| 
       17 
     | 
    
         
            -
                  return opt, options
         
     | 
| 
       18 
     | 
    
         
            -
                end
         
     | 
| 
       19 
     | 
    
         
            -
             
     | 
| 
       20 
     | 
    
         
            -
                def self.setup_add
         
     | 
| 
       21 
     | 
    
         
            -
                  bin = File.basename($0)
         
     | 
| 
       22 
     | 
    
         
            -
                  
         
     | 
| 
       23 
     | 
    
         
            -
                  options = {:ignore => []}
         
     | 
| 
       24 
     | 
    
         
            -
             
     | 
| 
       25 
     | 
    
         
            -
                  opt = OptionParser.new(<<EOF)
         
     | 
| 
       26 
     | 
    
         
            -
            #{bin} add dir1 [dir2 ...]
         
     | 
| 
       27 
     | 
    
         
            -
            usage:
         
     | 
| 
       28 
     | 
    
         
            -
              #{bin} add /path/to/dir1
         
     | 
| 
       29 
     | 
    
         
            -
              #{bin} add /path/to/dir2 /path/to/dir3
         
     | 
| 
       30 
     | 
    
         
            -
              #{bin} add /path/is/*
         
     | 
| 
       31 
     | 
    
         
            -
              #{bin} add /path/to/zipfile.zip
         
     | 
| 
       32 
     | 
    
         
            -
              #{bin} add /path/to/addon.xpi
         
     | 
| 
       33 
     | 
    
         
            -
              #{bin} add http://example.com/urlfile.zip
         
     | 
| 
       34 
     | 
    
         
            -
             
     | 
| 
       35 
     | 
    
         
            -
            option:
         
     | 
| 
       36 
     | 
    
         
            -
            EOF
         
     | 
| 
       37 
     | 
    
         
            -
                  # opt.on('-n NAME', '--name NAME', 'Specify name (default: File.basename(dir))') {|v| options[:name] = v }
         
     | 
| 
       38 
     | 
    
         
            -
                  opt.on('-i PATH', '--ignore PATH', 'Ignore path.') {|v| options[:ignore] << v }
         
     | 
| 
       39 
     | 
    
         
            -
                  opt.on('--no-auto-ignore', 'Disable auto ignore (.gitignore)') { options[:no_auto_ignore] = true }
         
     | 
| 
       40 
     | 
    
         
            -
                  opt.on('-v', '--verbose', 'Be verbose.')   { options[:verbose] = true }
         
     | 
| 
       41 
     | 
    
         
            -
             
     | 
| 
       42 
     | 
    
         
            -
                  return opt, options
         
     | 
| 
       43 
     | 
    
         
            -
                end
         
     | 
| 
       44 
     | 
    
         
            -
             
     | 
| 
       45 
     | 
    
         
            -
                def self.setup_update
         
     | 
| 
       46 
     | 
    
         
            -
                  options = {:force => false}
         
     | 
| 
       47 
     | 
    
         
            -
             
     | 
| 
       48 
     | 
    
         
            -
                  opt = OptionParser.new("#{File.basename($0)} update [keyword1 keyword2 ...]")
         
     | 
| 
       49 
     | 
    
         
            -
                  opt.on('--all', 'Update all.') { options[:all] = true }
         
     | 
| 
       50 
     | 
    
         
            -
                  opt.on('-v', '--verbose', 'Be verbose.') { options[:verbose] = true }
         
     | 
| 
       51 
     | 
    
         
            -
             
     | 
| 
       52 
     | 
    
         
            -
                  return opt, options
         
     | 
| 
       53 
     | 
    
         
            -
                end
         
     | 
| 
       54 
     | 
    
         
            -
             
     | 
| 
       55 
     | 
    
         
            -
                def self.setup_remove
         
     | 
| 
       56 
     | 
    
         
            -
                  options = {:force => false}
         
     | 
| 
       57 
     | 
    
         
            -
             
     | 
| 
       58 
     | 
    
         
            -
                  opt = OptionParser.new("#{File.basename($0)} remove keyword1 [keyword2 ...]")
         
     | 
| 
       59 
     | 
    
         
            -
                  opt.on('--all', 'Update all.') { options[:all] = true }
         
     | 
| 
       60 
     | 
    
         
            -
                  opt.on('-f', '--force',   'Force remove.') { options[:force] = true }
         
     | 
| 
       61 
     | 
    
         
            -
                  opt.on('-v', '--verbose', 'Be verbose.')   { options[:verbose] = true }
         
     | 
| 
       62 
     | 
    
         
            -
             
     | 
| 
       63 
     | 
    
         
            -
                  return opt, options
         
     | 
| 
       64 
     | 
    
         
            -
                end
         
     | 
| 
       65 
     | 
    
         
            -
             
     | 
| 
       66 
     | 
    
         
            -
                def self.setup_list
         
     | 
| 
       67 
     | 
    
         
            -
                  options = {:verbose => false}
         
     | 
| 
       68 
     | 
    
         
            -
             
     | 
| 
       69 
     | 
    
         
            -
                  opt = OptionParser.new("#{File.basename($0)} list package1 [package2 ...]") # @todo コメント修正
         
     | 
| 
       70 
     | 
    
         
            -
                  opt.on('-v', '--verbose', 'Be verbose.') { options[:verbose] = true }
         
     | 
| 
       71 
     | 
    
         
            -
             
     | 
| 
       72 
     | 
    
         
            -
                  return opt, options
         
     | 
| 
       73 
     | 
    
         
            -
                end
         
     | 
| 
       74 
     | 
    
         
            -
             
     | 
| 
       75 
     | 
    
         
            -
                def self.setup_pwd
         
     | 
| 
       76 
     | 
    
         
            -
                  options = {:default => false}
         
     | 
| 
       77 
     | 
    
         
            -
             
     | 
| 
       78 
     | 
    
         
            -
                  opt = OptionParser.new("#{File.basename($0)} pwd package1 [package2 ...]")
         
     | 
| 
       79 
     | 
    
         
            -
                  opt.on('--default', 'Show default db, ENV[\'MILKODE_DEFAULT_DIR\'] or ~/.milkode.') { options[:default] = true }
         
     | 
| 
       80 
     | 
    
         
            -
             
     | 
| 
       81 
     | 
    
         
            -
                  return opt, options
         
     | 
| 
       82 
     | 
    
         
            -
                end
         
     | 
| 
       83 
     | 
    
         
            -
             
     | 
| 
       84 
     | 
    
         
            -
                def self.setup_cleanup
         
     | 
| 
       85 
     | 
    
         
            -
                  options = {:verbose => false, :force => false}
         
     | 
| 
       86 
     | 
    
         
            -
                  
         
     | 
| 
       87 
     | 
    
         
            -
                  opt = OptionParser.new("#{File.basename($0)} cleanup")
         
     | 
| 
       88 
     | 
    
         
            -
                  opt.on('-f', '--force', 'Force cleanup.') { options[:force] = true }
         
     | 
| 
       89 
     | 
    
         
            -
             
     | 
| 
       90 
     | 
    
         
            -
                  return opt, options
         
     | 
| 
       91 
     | 
    
         
            -
                end
         
     | 
| 
       92 
     | 
    
         
            -
             
     | 
| 
       93 
     | 
    
         
            -
                def self.setup_rebuild
         
     | 
| 
       94 
     | 
    
         
            -
                  options = {}
         
     | 
| 
       95 
     | 
    
         
            -
                  
         
     | 
| 
       96 
     | 
    
         
            -
                  opt = OptionParser.new("#{File.basename($0)} keyword1 [keyword2 ...]")
         
     | 
| 
       97 
     | 
    
         
            -
                  opt.on('--all', 'Rebuild all.') { options[:all] = true}
         
     | 
| 
       98 
     | 
    
         
            -
                  opt.on('-v', '--verbose', 'Be verbose.') { options[:verbose] = true }
         
     | 
| 
       99 
     | 
    
         
            -
             
     | 
| 
       100 
     | 
    
         
            -
                  return opt, options
         
     | 
| 
       101 
     | 
    
         
            -
                end
         
     | 
| 
       102 
     | 
    
         
            -
             
     | 
| 
       103 
     | 
    
         
            -
                def self.setup_web
         
     | 
| 
       104 
     | 
    
         
            -
                  options = {
         
     | 
| 
       105 
     | 
    
         
            -
                    :environment => ENV['RACK_ENV'] || "development",
         
     | 
| 
       106 
     | 
    
         
            -
                    :pid         => nil,
         
     | 
| 
       107 
     | 
    
         
            -
                    :Port        => 9292,
         
     | 
| 
       108 
     | 
    
         
            -
                    :Host        => "127.0.0.1",
         
     | 
| 
       109 
     | 
    
         
            -
                    :AccessLog   => [],
         
     | 
| 
       110 
     | 
    
         
            -
                    :config      => "config.ru",
         
     | 
| 
       111 
     | 
    
         
            -
                    # ----------------------------
         
     | 
| 
       112 
     | 
    
         
            -
                    :server      => "thin",
         
     | 
| 
       113 
     | 
    
         
            -
                    :LaunchBrowser => true,
         
     | 
| 
       114 
     | 
    
         
            -
                    :DbDir => Milkode::CLI_Cdweb::select_dbdir,
         
     | 
| 
       115 
     | 
    
         
            -
                  }
         
     | 
| 
       116 
     | 
    
         
            -
                  
         
     | 
| 
       117 
     | 
    
         
            -
                  opts = OptionParser.new("#{File.basename($0)} web")
         
     | 
| 
       118 
     | 
    
         
            -
                  opts.on('--db DB_DIR', 'Database dir (default : current_dir)') {|v| options[:DbDir] = v }
         
     | 
| 
       119 
     | 
    
         
            -
                  opts.on("-o", "--host HOST", "listen on HOST (default: 127.0.0.1)") {|host| options[:Host] = host }
         
     | 
| 
       120 
     | 
    
         
            -
                  opts.on('-p', '--port PORT', 'use PORT (default: 9292)') {|v| options[:Port] = v }
         
     | 
| 
       121 
     | 
    
         
            -
                  opts.on("-s", "--server SERVER", "serve using SERVER (default : thin)") {|s| options[:server] = s }
         
     | 
| 
       122 
     | 
    
         
            -
                  opts.on('-n', '--no-browser', 'No launch browser.') {|v| options[:LaunchBrowser] = false }
         
     | 
| 
       123 
     | 
    
         
            -
                  opts.on('--customize', 'Create customize file.') {|v| options[:customize] = true }
         
     | 
| 
       124 
     | 
    
         
            -
                  
         
     | 
| 
       125 
     | 
    
         
            -
                  # --hostが'-h'を上書きするので、'-h'を再定義してあげる
         
     | 
| 
       126 
     | 
    
         
            -
                  opts.on_tail("-h", "-?", "--help", "Show this message") do
         
     | 
| 
       127 
     | 
    
         
            -
                    puts opts
         
     | 
| 
       128 
     | 
    
         
            -
                    exit
         
     | 
| 
       129 
     | 
    
         
            -
                  end
         
     | 
| 
       130 
     | 
    
         
            -
                  
         
     | 
| 
       131 
     | 
    
         
            -
                  return opts, options
         
     | 
| 
       132 
     | 
    
         
            -
                end
         
     | 
| 
       133 
     | 
    
         
            -
             
     | 
| 
       134 
     | 
    
         
            -
                def self.setup_dir
         
     | 
| 
       135 
     | 
    
         
            -
                  options = {}
         
     | 
| 
       136 
     | 
    
         
            -
                  
         
     | 
| 
       137 
     | 
    
         
            -
                  opt = OptionParser.new("#{File.basename($0)} dir")
         
     | 
| 
       138 
     | 
    
         
            -
                  opt.on('--top', 'XXX') {|v| options[:top] = true }
         
     | 
| 
       139 
     | 
    
         
            -
             
     | 
| 
       140 
     | 
    
         
            -
                  return opt, options
         
     | 
| 
       141 
     | 
    
         
            -
                end
         
     | 
| 
       142 
     | 
    
         
            -
             
     | 
| 
       143 
     | 
    
         
            -
                def self.setup_setdb
         
     | 
| 
       144 
     | 
    
         
            -
                  options = {}
         
     | 
| 
       145 
     | 
    
         
            -
                  
         
     | 
| 
       146 
     | 
    
         
            -
                  opt = OptionParser.new("#{File.basename($0)} setdb")
         
     | 
| 
       147 
     | 
    
         
            -
                  opt.on('--default', '--reset', 'Reset default db.') {|v| options[:reset] = true }
         
     | 
| 
       148 
     | 
    
         
            -
             
     | 
| 
       149 
     | 
    
         
            -
                  return opt, options
         
     | 
| 
       150 
     | 
    
         
            -
                end
         
     | 
| 
       151 
     | 
    
         
            -
             
     | 
| 
       152 
     | 
    
         
            -
                def self.setup_mcd
         
     | 
| 
       153 
     | 
    
         
            -
                  options = {}
         
     | 
| 
       154 
     | 
    
         
            -
                  
         
     | 
| 
       155 
     | 
    
         
            -
                  opt = OptionParser.new("#{File.basename($0)} mcd")
         
     | 
| 
       156 
     | 
    
         
            -
             
     | 
| 
       157 
     | 
    
         
            -
                  return opt, options
         
     | 
| 
       158 
     | 
    
         
            -
                end
         
     | 
| 
       159 
     | 
    
         
            -
             
     | 
| 
       160 
     | 
    
         
            -
                def self.setup_info
         
     | 
| 
       161 
     | 
    
         
            -
                  options = {}
         
     | 
| 
       162 
     | 
    
         
            -
                  
         
     | 
| 
       163 
     | 
    
         
            -
                  opt = OptionParser.new("#{File.basename($0)} info")
         
     | 
| 
       164 
     | 
    
         
            -
             
     | 
| 
       165 
     | 
    
         
            -
                  return opt, options
         
     | 
| 
       166 
     | 
    
         
            -
                end
         
     | 
| 
       167 
     | 
    
         
            -
             
     | 
| 
       168 
     | 
    
         
            -
                def self.setup_ignore
         
     | 
| 
       169 
     | 
    
         
            -
                  bin = File.basename($0)
         
     | 
| 
       170 
     | 
    
         
            -
                  
         
     | 
| 
       171 
     | 
    
         
            -
                  options = {}
         
     | 
| 
       172 
     | 
    
         
            -
             
     | 
| 
       173 
     | 
    
         
            -
                  opt = OptionParser.new("#{File.basename($0)} ignore [path ...]")
         
     | 
| 
       174 
     | 
    
         
            -
                  opt.on('-p PACKAGE', '--package PACKAGE', 'Specify ignore package.') {|v| options[:package] = v }
         
     | 
| 
       175 
     | 
    
         
            -
                  opt.on('-d', '--delete', 'Delete ignore') { options[:delete] = true }
         
     | 
| 
       176 
     | 
    
         
            -
                  opt.on('--delete-all', 'Delete all') { options[:delete_all] = true }
         
     | 
| 
       177 
     | 
    
         
            -
                  opt.on('--test', 'Ignore test, Display complete list') { options[:test] = true }
         
     | 
| 
       178 
     | 
    
         
            -
             
     | 
| 
       179 
     | 
    
         
            -
                  return opt, options
         
     | 
| 
       180 
     | 
    
         
            -
                end
         
     | 
| 
       181 
     | 
    
         
            -
             
     | 
| 
       182 
     | 
    
         
            -
             
     | 
| 
       183 
     | 
    
         
            -
              end
         
     | 
| 
       184 
     | 
    
         
            -
            end
         
     | 
    
        data/test/test_bin_exec.rb
    DELETED
    
    | 
         @@ -1,28 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # -*- coding: utf-8 -*-
         
     | 
| 
       2 
     | 
    
         
            -
            #
         
     | 
| 
       3 
     | 
    
         
            -
            # @file 
         
     | 
| 
       4 
     | 
    
         
            -
            # @brief
         
     | 
| 
       5 
     | 
    
         
            -
            # @author ongaeshi
         
     | 
| 
       6 
     | 
    
         
            -
            # @date   2011/03/08
         
     | 
| 
       7 
     | 
    
         
            -
             
     | 
| 
       8 
     | 
    
         
            -
            require 'rubygems'
         
     | 
| 
       9 
     | 
    
         
            -
            require 'test/unit'
         
     | 
| 
       10 
     | 
    
         
            -
            require 'milkode/cdstk/cli_cdstk'
         
     | 
| 
       11 
     | 
    
         
            -
             
     | 
| 
       12 
     | 
    
         
            -
            class TestBinExec < Test::Unit::TestCase
         
     | 
| 
       13 
     | 
    
         
            -
              def test_bin_exec
         
     | 
| 
       14 
     | 
    
         
            -
                io = StringIO.new
         
     | 
| 
       15 
     | 
    
         
            -
                
         
     | 
| 
       16 
     | 
    
         
            -
                # milk
         
     | 
| 
       17 
     | 
    
         
            -
                Milkode::CLI_Cdstk.execute(io)
         
     | 
| 
       18 
     | 
    
         
            -
                
         
     | 
| 
       19 
     | 
    
         
            -
                # 一定時間だけ起動するような仕組みは無いものか
         
     | 
| 
       20 
     | 
    
         
            -
                # Milkode::CLI_Cdweb.execute(io, "--no-browser -p 5555".split)
         
     | 
| 
       21 
     | 
    
         
            -
                
         
     | 
| 
       22 
     | 
    
         
            -
                # puts io.string
         
     | 
| 
       23 
     | 
    
         
            -
              end
         
     | 
| 
       24 
     | 
    
         
            -
            end
         
     | 
| 
       25 
     | 
    
         
            -
             
     | 
| 
       26 
     | 
    
         
            -
             
     | 
| 
       27 
     | 
    
         
            -
             
     | 
| 
       28 
     | 
    
         
            -
             
     |