PageRenderTime 43ms CodeModel.GetById 19ms RepoModel.GetById 0ms app.codeStats 0ms

/bin/otr

https://bitbucket.org/stephenmcd/otr
Ruby | 48 lines | 35 code | 11 blank | 2 comment | 4 complexity | 152c60c38e9b9b8b15e8cf5b74c0dd26 MD5 | raw file
Possible License(s): BSD-2-Clause
  1. #!/usr/bin/env ruby
  2. require "rubygems"
  3. require "optparse"
  4. require "lib/otr"
  5. options = {}
  6. option_parser = OptionParser.new do |opts|
  7. opts.banner = "\nUsage: otr [options]\n\n"
  8. opts.on("-u", "--username NAME", String,
  9. "Combined GitHub / Bitbucket username") do |v|
  10. options[:username] = v
  11. end
  12. opts.on("-g", "--github-username NAME", String,
  13. "GitHub username if different from Bitbucket username (required without -u)") do |v|
  14. options[:github_username] = v
  15. end
  16. opts.on("-b", "--bitbucket-username NAME", String,
  17. "Bitbucket username if different from GitHub username (required without -u)") do |v|
  18. options[:bitbucket_username] = v
  19. end
  20. opts.on("-h", "--help", "Show this message") do
  21. puts opts
  22. exit
  23. end
  24. opts.on("-v", "--version", "Show version") do
  25. puts OTR::VERSION
  26. exit
  27. end
  28. end
  29. begin
  30. option_parser.parse!
  31. raise OptionParser::ParseError if options.size == 0
  32. rescue OptionParser::ParseError
  33. # Display all options if anything goes wrong.
  34. puts option_parser
  35. exit
  36. end
  37. puts OTR.get(options).to_json