perplect-gemerator 0.0.1 → 0.0.2

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/Manifest CHANGED
@@ -1,15 +1,17 @@
1
- lib/generators/gem/templates/fresh_rakefile.erb
2
- lib/generators/gem/templates/gitignore.erb
3
- lib/generators/gem/templates/gemerated.erb
4
- lib/generators/gem/templates/lib/module.rb.erb
5
- lib/generators/gem/templates/bin/binary.erb
6
- lib/generators/gem/templates/test/module_test.rb.erb
7
- lib/generators/gem/templates/README.rdoc.erb
8
- lib/generators/gem.rb
9
1
  lib/gemerator.rb
10
- lib/generator.rb
2
+ lib/gemerator/generators/gem/templates/fresh_rakefile.erb
3
+ lib/gemerator/generators/gem/templates/gitignore.erb
4
+ lib/gemerator/generators/gem/templates/gemerated.erb
5
+ lib/gemerator/generators/gem/templates/lib/module.rb.erb
6
+ lib/gemerator/generators/gem/templates/bin/binary.erb
7
+ lib/gemerator/generators/gem/templates/test/module_test.rb.erb
8
+ lib/gemerator/generators/gem/templates/README.rdoc.erb
9
+ lib/gemerator/generators/gem.rb
10
+ lib/gemerator/github.rb
11
+ lib/gemerator/generator.rb
11
12
  README.rdoc
12
13
  init.rb
13
14
  bin/gemerate
14
15
  Rakefile
16
+ gemerator.gemspec
15
17
  Manifest
data/Rakefile CHANGED
@@ -1,7 +1,7 @@
1
1
  require 'rubygems'
2
2
  require 'echoe'
3
3
 
4
- Echoe.new('gemerator', '0.0.1') do |p|
4
+ Echoe.new('gemerator', '0.0.2') do |p|
5
5
  p.description = 'Quickly generate the basic structure of a GitHub-hosted RubyGem'
6
6
  p.url = 'http://github.com/perplect/gemerator/tree/master'
7
7
  p.author = 'David Knorr'
data/gemerator.gemspec CHANGED
@@ -2,17 +2,17 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{gemerator}
5
- s.version = "0.0.1"
5
+ s.version = "0.0.2"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["David Knorr"]
9
- s.date = %q{2009-05-18}
9
+ s.date = %q{2009-05-23}
10
10
  s.default_executable = %q{gemerate}
11
11
  s.description = %q{Quickly generate the basic structure of a GitHub-hosted RubyGem}
12
12
  s.email = %q{perplect@gmail.com}
13
13
  s.executables = ["gemerate"]
14
- s.extra_rdoc_files = ["lib/generators/gem/templates/fresh_rakefile.erb", "lib/generators/gem/templates/gitignore.erb", "lib/generators/gem/templates/gemerated.erb", "lib/generators/gem/templates/lib/module.rb.erb", "lib/generators/gem/templates/bin/binary.erb", "lib/generators/gem/templates/test/module_test.rb.erb", "lib/generators/gem/templates/README.rdoc.erb", "lib/generators/gem.rb", "lib/gemerator.rb", "lib/generator.rb", "README.rdoc", "bin/gemerate"]
15
- s.files = ["lib/generators/gem/templates/fresh_rakefile.erb", "lib/generators/gem/templates/gitignore.erb", "lib/generators/gem/templates/gemerated.erb", "lib/generators/gem/templates/lib/module.rb.erb", "lib/generators/gem/templates/bin/binary.erb", "lib/generators/gem/templates/test/module_test.rb.erb", "lib/generators/gem/templates/README.rdoc.erb", "lib/generators/gem.rb", "lib/gemerator.rb", "lib/generator.rb", "README.rdoc", "init.rb", "bin/gemerate", "Rakefile", "Manifest", "gemerator.gemspec"]
14
+ s.extra_rdoc_files = ["lib/gemerator.rb", "lib/gemerator/generators/gem/templates/fresh_rakefile.erb", "lib/gemerator/generators/gem/templates/gitignore.erb", "lib/gemerator/generators/gem/templates/gemerated.erb", "lib/gemerator/generators/gem/templates/lib/module.rb.erb", "lib/gemerator/generators/gem/templates/bin/binary.erb", "lib/gemerator/generators/gem/templates/test/module_test.rb.erb", "lib/gemerator/generators/gem/templates/README.rdoc.erb", "lib/gemerator/generators/gem.rb", "lib/gemerator/github.rb", "lib/gemerator/generator.rb", "README.rdoc", "bin/gemerate"]
15
+ s.files = ["lib/gemerator.rb", "lib/gemerator/generators/gem/templates/fresh_rakefile.erb", "lib/gemerator/generators/gem/templates/gitignore.erb", "lib/gemerator/generators/gem/templates/gemerated.erb", "lib/gemerator/generators/gem/templates/lib/module.rb.erb", "lib/gemerator/generators/gem/templates/bin/binary.erb", "lib/gemerator/generators/gem/templates/test/module_test.rb.erb", "lib/gemerator/generators/gem/templates/README.rdoc.erb", "lib/gemerator/generators/gem.rb", "lib/gemerator/github.rb", "lib/gemerator/generator.rb", "README.rdoc", "init.rb", "bin/gemerate", "Rakefile", "Manifest", "gemerator.gemspec"]
16
16
  s.has_rdoc = true
17
17
  s.homepage = %q{http://github.com/perplect/gemerator/tree/master}
18
18
  s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Gemerator", "--main", "README.rdoc"]
data/init.rb CHANGED
@@ -2,11 +2,13 @@ require 'fileutils'
2
2
  require 'highline'
3
3
  require 'erb'
4
4
  require 'activesupport'
5
+ require 'httparty'
5
6
 
6
7
  require 'gemerator'
7
- require 'generator'
8
+ require 'gemerator/generator'
9
+ require 'gemerator/github'
8
10
 
9
- Dir[File.join(File.dirname(__FILE__), 'lib', 'generators', '**', '*.rb')].each do |file|
11
+ Dir[File.join(File.dirname(__FILE__), 'lib', 'gemerator', 'generators', '**', '*.rb')].each do |file|
10
12
  require file
11
13
  end
12
14
 
@@ -1,6 +1,7 @@
1
1
  module Gemerator
2
2
  class Generator
3
3
  include FileUtils
4
+ HighLine.track_eof = false
4
5
 
5
6
  def initialize
6
7
  @highline = HighLine.new
@@ -5,9 +5,10 @@ module Gemerator
5
5
  super
6
6
  @gem_name = ARGV.first
7
7
  @gem_description = ask('Gem description?')
8
- @github_username = ask('GitHub username?')
9
- @author_name = `git config --global user.name`.chomp
10
- @author_email = `git config --global user.email`.chomp
8
+ @github_username = git_config('github.user')
9
+ @github_token = git_config('github.token')
10
+ @author_name = git_config('user.name')
11
+ @author_email = git_config('user.email')
11
12
 
12
13
  if yes? 'Create binary?'
13
14
  binary_name = ask('Name of binary? (Default is gem name)')
@@ -16,6 +17,7 @@ module Gemerator
16
17
  end
17
18
 
18
19
  def run!
20
+ create_github_repository
19
21
  create_gem_directory
20
22
  initialize_git_repository
21
23
  add_git_remote
@@ -50,6 +52,10 @@ module Gemerator
50
52
 
51
53
  private
52
54
 
55
+ def create_github_repository
56
+ GitHub.new(@github_username, @github_token).create_repository(@gem_name, @gem_description)
57
+ end
58
+
53
59
  def create_gem_directory
54
60
  create_directory @gem_name
55
61
  end
@@ -105,6 +111,10 @@ module Gemerator
105
111
  :gitignore => ['gitignore', '.gitignore']
106
112
  }
107
113
  end
114
+
115
+ def git_config(key)
116
+ `git config --global #{key}`.chomp
117
+ end
108
118
  end
109
119
  end
110
120
  end
@@ -0,0 +1,3 @@
1
+ module <%= @gem_name.camelize %>
2
+ end
3
+
@@ -1,6 +1,6 @@
1
1
  require 'test/unit'
2
2
 
3
- class <%= @gem_name.classify %>Test < Test::Unit::TestCase
3
+ class <%= @gem_name.camelize %>Test < Test::Unit::TestCase
4
4
  def test_truth
5
5
  assert true
6
6
  end
@@ -0,0 +1,15 @@
1
+ module Gemerator
2
+ class GitHub
3
+ include HTTParty
4
+ base_uri 'https://github.com/api/v2/json'
5
+
6
+ def initialize(login, token)
7
+ self.class.default_params :login => login, :token => token
8
+ end
9
+
10
+ def create_repository(name, description)
11
+ self.class.post('/repos/create', :body => {:name => name, :description => description})
12
+ end
13
+ end
14
+ end
15
+
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: perplect-gemerator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Knorr
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-05-18 00:00:00 -07:00
12
+ date: 2009-05-23 00:00:00 -07:00
13
13
  default_executable: gemerate
14
14
  dependencies: []
15
15
 
@@ -20,29 +20,31 @@ executables:
20
20
  extensions: []
21
21
 
22
22
  extra_rdoc_files:
23
- - lib/generators/gem/templates/fresh_rakefile.erb
24
- - lib/generators/gem/templates/gitignore.erb
25
- - lib/generators/gem/templates/gemerated.erb
26
- - lib/generators/gem/templates/lib/module.rb.erb
27
- - lib/generators/gem/templates/bin/binary.erb
28
- - lib/generators/gem/templates/test/module_test.rb.erb
29
- - lib/generators/gem/templates/README.rdoc.erb
30
- - lib/generators/gem.rb
31
23
  - lib/gemerator.rb
32
- - lib/generator.rb
24
+ - lib/gemerator/generators/gem/templates/fresh_rakefile.erb
25
+ - lib/gemerator/generators/gem/templates/gitignore.erb
26
+ - lib/gemerator/generators/gem/templates/gemerated.erb
27
+ - lib/gemerator/generators/gem/templates/lib/module.rb.erb
28
+ - lib/gemerator/generators/gem/templates/bin/binary.erb
29
+ - lib/gemerator/generators/gem/templates/test/module_test.rb.erb
30
+ - lib/gemerator/generators/gem/templates/README.rdoc.erb
31
+ - lib/gemerator/generators/gem.rb
32
+ - lib/gemerator/github.rb
33
+ - lib/gemerator/generator.rb
33
34
  - README.rdoc
34
35
  - bin/gemerate
35
36
  files:
36
- - lib/generators/gem/templates/fresh_rakefile.erb
37
- - lib/generators/gem/templates/gitignore.erb
38
- - lib/generators/gem/templates/gemerated.erb
39
- - lib/generators/gem/templates/lib/module.rb.erb
40
- - lib/generators/gem/templates/bin/binary.erb
41
- - lib/generators/gem/templates/test/module_test.rb.erb
42
- - lib/generators/gem/templates/README.rdoc.erb
43
- - lib/generators/gem.rb
44
37
  - lib/gemerator.rb
45
- - lib/generator.rb
38
+ - lib/gemerator/generators/gem/templates/fresh_rakefile.erb
39
+ - lib/gemerator/generators/gem/templates/gitignore.erb
40
+ - lib/gemerator/generators/gem/templates/gemerated.erb
41
+ - lib/gemerator/generators/gem/templates/lib/module.rb.erb
42
+ - lib/gemerator/generators/gem/templates/bin/binary.erb
43
+ - lib/gemerator/generators/gem/templates/test/module_test.rb.erb
44
+ - lib/gemerator/generators/gem/templates/README.rdoc.erb
45
+ - lib/gemerator/generators/gem.rb
46
+ - lib/gemerator/github.rb
47
+ - lib/gemerator/generator.rb
46
48
  - README.rdoc
47
49
  - init.rb
48
50
  - bin/gemerate
@@ -1,3 +0,0 @@
1
- module <%= @gem_name.classify %>
2
- end
3
-