gem-git-install 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 301bb898627a0370fc69f43db27c681f99ada077
4
+ data.tar.gz: b20336f6be2693bce16248419e5aeb458f50e8bf
5
+ SHA512:
6
+ metadata.gz: f9bc4b84ea8e5fa7bb7c400fa3c5758163aa2f2a4609b79e4cfa7f436d7774da59da34200c1adcef5c8125203d175170cb099de30bb4606b61b4fb8c33975bc8
7
+ data.tar.gz: e9d0a854920b2f0457873c2ce9a786f6af513da75578ce69d0d304058bc744cea84ec504f3b719107b615c7affb29e9e86d868cee1b8fc4cc7e09554b566ff97
@@ -0,0 +1,9 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /Gemfile.lock
4
+ /_yardoc/
5
+ /coverage/
6
+ /doc/
7
+ /pkg/
8
+ /spec/reports/
9
+ /tmp/
@@ -0,0 +1,19 @@
1
+ # Gem::Git::Install
2
+
3
+ This is a simple rubygems plugin that allows you to install a gem from any git repo
4
+
5
+ ## Installation
6
+
7
+ $ gem install gem-git-install
8
+
9
+ ## Usage
10
+
11
+ $ gem gitinstall your_git_repo
12
+
13
+ ## Contributing
14
+
15
+ 1. Fork it ( https://github.com/[my-github-username]/gem-git-install/fork )
16
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
17
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
18
+ 4. Push to the branch (`git push origin my-new-feature`)
19
+ 5. Create a new Pull Request
@@ -0,0 +1,19 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+
4
+ Gem::Specification.new do |spec|
5
+ spec.name = "gem-git-install"
6
+ spec.version = "1.0.0"
7
+ spec.authors = ["Cristian Bica"]
8
+ spec.email = ["cristian.bica@gmail.com"]
9
+
10
+ spec.summary = %q{Install gem from a git repo}
11
+ spec.description = %q{Install gem from a git repository. This gem clones the given repo, build the gem and installs it.}
12
+ spec.homepage = "https://github.com/cristianbica/gem-git-install"
13
+
14
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
15
+ spec.require_paths = ["lib"]
16
+
17
+ spec.add_development_dependency "bundler", "~> 1.9"
18
+ spec.add_development_dependency "rake", "~> 10.0"
19
+ end
@@ -0,0 +1,47 @@
1
+ require 'rubygems/command'
2
+ require 'tmpdir'
3
+
4
+ class Gem::Commands::GitinstallCommand < Gem::Command
5
+ def initialize
6
+ super 'gitinstall', "Install gem from a git repo"
7
+ add_option '--force', 'skip validation of the gemspec' do |value, options|
8
+ options[:force] = true
9
+ end
10
+ end
11
+
12
+ def execute
13
+ url = get_one_gem_name
14
+ Dir.mktmpdir "gemgitinstall" do |dir|
15
+ clone_repo(url, dir)
16
+ build_gem(dir)
17
+ install_gem(dir)
18
+ end
19
+ end
20
+
21
+ def clone_repo(url, dir)
22
+ run "git clone #{url} #{dir}"
23
+ end
24
+
25
+ def build_gem(dir)
26
+ force = options[:force] ? " --force" : ""
27
+ run "cd #{dir} && rm -rf *.gem"
28
+ run "cd #{dir} && gem build *.gemspec#{force}"
29
+ end
30
+
31
+ def install_gem(dir)
32
+ run "cd #{dir} && gem install *.gem"
33
+ end
34
+
35
+ def run(cmd)
36
+ puts "Executing: #{cmd}"
37
+ system cmd
38
+ end
39
+
40
+ def arguments # :nodoc:
41
+ "GEMNAME name of gem to install"
42
+ end
43
+
44
+ def usage # :nodoc:
45
+ "#{program_name} GEMNAME"
46
+ end
47
+ end
@@ -0,0 +1,3 @@
1
+ require 'rubygems/command_manager'
2
+
3
+ Gem::CommandManager.instance.register_command :gitinstall
metadata ADDED
@@ -0,0 +1,78 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: gem-git-install
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Cristian Bica
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-07-02 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.9'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.9'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.0'
41
+ description: Install gem from a git repository. This gem clones the given repo, build
42
+ the gem and installs it.
43
+ email:
44
+ - cristian.bica@gmail.com
45
+ executables: []
46
+ extensions: []
47
+ extra_rdoc_files: []
48
+ files:
49
+ - ".gitignore"
50
+ - README.md
51
+ - gem-git-install.gemspec
52
+ - lib/rubygems/commands/gitinstall_command.rb
53
+ - lib/rubygems_plugin.rb
54
+ homepage: https://github.com/cristianbica/gem-git-install
55
+ licenses: []
56
+ metadata: {}
57
+ post_install_message:
58
+ rdoc_options: []
59
+ require_paths:
60
+ - lib
61
+ required_ruby_version: !ruby/object:Gem::Requirement
62
+ requirements:
63
+ - - ">="
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ required_rubygems_version: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ version: '0'
71
+ requirements: []
72
+ rubyforge_project:
73
+ rubygems_version: 2.4.5
74
+ signing_key:
75
+ specification_version: 4
76
+ summary: Install gem from a git repo
77
+ test_files: []
78
+ has_rdoc: