geminstaller 0.2.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/COPYING +1 -0
- data/History.txt +4 -0
- data/LICENSE +21 -0
- data/Manifest.txt +62 -0
- data/README.txt +60 -0
- data/Rakefile +92 -0
- data/TODO.txt +88 -0
- data/bin/geminstaller +30 -0
- data/geminstaller.yml +34 -0
- data/lib/geminstaller/application.rb +105 -0
- data/lib/geminstaller/arg_parser.rb +162 -0
- data/lib/geminstaller/autogem.rb +43 -0
- data/lib/geminstaller/config.rb +69 -0
- data/lib/geminstaller/config_builder.rb +40 -0
- data/lib/geminstaller/dependency_injector.rb +129 -0
- data/lib/geminstaller/enhanced_stream_ui.rb +57 -0
- data/lib/geminstaller/exact_match_list_command.rb +16 -0
- data/lib/geminstaller/file_reader.rb +31 -0
- data/lib/geminstaller/gem_arg_processor.rb +44 -0
- data/lib/geminstaller/gem_command_line_proxy.rb +32 -0
- data/lib/geminstaller/gem_command_manager.rb +62 -0
- data/lib/geminstaller/gem_interaction_handler.rb +30 -0
- data/lib/geminstaller/gem_list_checker.rb +55 -0
- data/lib/geminstaller/gem_runner_proxy.rb +43 -0
- data/lib/geminstaller/gem_source_index_proxy.rb +21 -0
- data/lib/geminstaller/gem_spec_manager.rb +42 -0
- data/lib/geminstaller/geminstaller_error.rb +13 -0
- data/lib/geminstaller/hoe_extensions.rb +5 -0
- data/lib/geminstaller/install_processor.rb +56 -0
- data/lib/geminstaller/missing_dependency_finder.rb +41 -0
- data/lib/geminstaller/missing_file_error.rb +4 -0
- data/lib/geminstaller/noninteractive_chooser.rb +107 -0
- data/lib/geminstaller/output_filter.rb +49 -0
- data/lib/geminstaller/output_listener.rb +33 -0
- data/lib/geminstaller/output_observer.rb +32 -0
- data/lib/geminstaller/output_proxy.rb +36 -0
- data/lib/geminstaller/requires.rb +59 -0
- data/lib/geminstaller/rogue_gem_finder.rb +195 -0
- data/lib/geminstaller/ruby_gem.rb +44 -0
- data/lib/geminstaller/rubygems_exit.rb +5 -0
- data/lib/geminstaller/rubygems_extensions.rb +5 -0
- data/lib/geminstaller/unauthorized_dependency_prompt_error.rb +4 -0
- data/lib/geminstaller/unexpected_prompt_error.rb +4 -0
- data/lib/geminstaller/valid_platform_selector.rb +44 -0
- data/lib/geminstaller/version_specifier.rb +24 -0
- data/lib/geminstaller/yaml_loader.rb +22 -0
- data/lib/geminstaller.rb +102 -0
- data/start_local_gem_server.sh +1 -0
- data/test/test_all.rb +31 -0
- data/website/config.yaml +2 -0
- data/website/metainfo.yaml +72 -0
- data/website/src/code/index.page +25 -0
- data/website/src/community/index.page +14 -0
- data/website/src/community/links.page +9 -0
- data/website/src/default.css +168 -0
- data/website/src/default.template +41 -0
- data/website/src/documentation/documentation.page +417 -0
- data/website/src/documentation/index.page +88 -0
- data/website/src/documentation/tutorials.page +94 -0
- data/website/src/download.page +12 -0
- data/website/src/faq.page +7 -0
- data/website/src/index.page +38 -0
- metadata +107 -0
@@ -0,0 +1,38 @@
|
|
1
|
+
---
|
2
|
+
title: Overview
|
3
|
+
---
|
4
|
+
h1. Overview
|
5
|
+
|
6
|
+
h2. What is GemInstaller?
|
7
|
+
|
8
|
+
GemInstaller provides automated management of RubyGems. It uses a simple YAML config file to:
|
9
|
+
|
10
|
+
* Automatically install the correct versions of all required gems wherever your app runs.
|
11
|
+
* Automatically ensure installed gems and versions are consistent across multiple applications, machines, platforms, and environments
|
12
|
+
* Automatically add correct versions of gems to the ruby load path when your app runs ('require_gem'/'gem')
|
13
|
+
* Automatically reinstall missing dependency gems
|
14
|
+
* Automatically guess at correct platform to install for multi-platform gems
|
15
|
+
* Print YAML for "rogue gems" which are not specified in the current config, to easily bootstrap your config file, or find gems that were manually installed without GemInstaller.
|
16
|
+
* Allow for common configs to be reused across projects or environments by supporting multiple config files and defaults with overrides.
|
17
|
+
* Avoid the "works on demo, breaks on production" syndrome
|
18
|
+
|
19
|
+
GemInstaller can be used from the command line, or embedded to run automatically on startup for a Rails app or any other Ruby program.
|
20
|
+
|
21
|
+
It has been tested on all major platforms (mac, linux, windows), and recent versions of RubyGems (0.8.x through 0.9.x).
|
22
|
+
|
23
|
+
h2. How do I get it?
|
24
|
+
|
25
|
+
GemInstaller can be "downloaded":http://rubyforge.org/frs/?group_id=1902 from RubyForge.
|
26
|
+
|
27
|
+
h2. How do I use it?
|
28
|
+
|
29
|
+
See the "Quick Start Guide":documentation/index.html, "Tutorials":documentation/tutorials.html, or the "Detailed Documentation":documentation/documentation.html.
|
30
|
+
|
31
|
+
h2. Who is responsible for GemInstaller?
|
32
|
+
|
33
|
+
GemInstaller was created by "Chad Woolley":http://www.thewoolleyweb.com.
|
34
|
+
|
35
|
+
h2. Known Bugs
|
36
|
+
|
37
|
+
Currently (as of version 0.0.2), the only _major_ known bug is related to auto-installing the Rails or Mongrel gems via boot.rb during startup of Mongrel or Webrick. The simple workaround is to run GemInstaller manually or just restart Rails anytime GemInstaller auto-installs a Rails/Mongrel gem upgrade during app startup. For Rails and other deployable apps, you can also "run GemInstaller from Capistrano":documentation/tutorials.html#running_geminstaller_from_capistrano to avoid this problem in demo/production environments. Researching and fixing this problem is a top priority. I bet there's another bug or twoo, so please "report them if you find them":http://rubyforge.org/tracker/?group_id=1902!
|
38
|
+
|
metadata
ADDED
@@ -0,0 +1,107 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
rubygems_version: 0.9.2
|
3
|
+
specification_version: 1
|
4
|
+
name: geminstaller
|
5
|
+
version: !ruby/object:Gem::Version
|
6
|
+
version: 0.2.0
|
7
|
+
date: 2007-05-13 00:00:00 -07:00
|
8
|
+
summary: GemInstaller provides automated management of RubyGems.
|
9
|
+
require_paths:
|
10
|
+
- lib
|
11
|
+
email: ryand-ruby@zenspider.com
|
12
|
+
homepage: " by Chad Woolley"
|
13
|
+
rubyforge_project: geminstaller
|
14
|
+
description: "== FEATURES: GemInstaller provides automated management of RubyGems. It uses a simple YAML config file to: * Automatically install the correct versions of all required gems wherever your app runs. * Automatically ensure installed gems and versions are consistent across multiple applications, machines, platforms, and environments * Automatically add correct versions of gems to the ruby load path when your app runs ('require_gem'/'gem') * Automatically reinstall missing dependency gems * Automatically guess at correct platform to install for multi-platform gems * Print YAML for \"rogue gems\" which are not specified in the current config, to easily bootstrap your config file, or find gems that were manually installed without GemInstaller. * Avoid the \"works on demo, broken on production\" syndrome == SYNOPSYS: GemInstaller provides automated management of RubyGems."
|
15
|
+
autorequire:
|
16
|
+
default_executable:
|
17
|
+
bindir: bin
|
18
|
+
has_rdoc: true
|
19
|
+
required_ruby_version: !ruby/object:Gem::Version::Requirement
|
20
|
+
requirements:
|
21
|
+
- - ">"
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 0.0.0
|
24
|
+
version:
|
25
|
+
platform: ruby
|
26
|
+
signing_key:
|
27
|
+
cert_chain:
|
28
|
+
post_install_message:
|
29
|
+
authors:
|
30
|
+
- Chad Woolley
|
31
|
+
files:
|
32
|
+
- COPYING
|
33
|
+
- History.txt
|
34
|
+
- LICENSE
|
35
|
+
- Manifest.txt
|
36
|
+
- README.txt
|
37
|
+
- Rakefile
|
38
|
+
- TODO.txt
|
39
|
+
- bin/geminstaller
|
40
|
+
- geminstaller.yml
|
41
|
+
- lib/geminstaller.rb
|
42
|
+
- lib/geminstaller/application.rb
|
43
|
+
- lib/geminstaller/arg_parser.rb
|
44
|
+
- lib/geminstaller/autogem.rb
|
45
|
+
- lib/geminstaller/config.rb
|
46
|
+
- lib/geminstaller/config_builder.rb
|
47
|
+
- lib/geminstaller/dependency_injector.rb
|
48
|
+
- lib/geminstaller/enhanced_stream_ui.rb
|
49
|
+
- lib/geminstaller/exact_match_list_command.rb
|
50
|
+
- lib/geminstaller/file_reader.rb
|
51
|
+
- lib/geminstaller/gem_arg_processor.rb
|
52
|
+
- lib/geminstaller/gem_command_line_proxy.rb
|
53
|
+
- lib/geminstaller/gem_command_manager.rb
|
54
|
+
- lib/geminstaller/gem_interaction_handler.rb
|
55
|
+
- lib/geminstaller/gem_list_checker.rb
|
56
|
+
- lib/geminstaller/gem_runner_proxy.rb
|
57
|
+
- lib/geminstaller/gem_source_index_proxy.rb
|
58
|
+
- lib/geminstaller/gem_spec_manager.rb
|
59
|
+
- lib/geminstaller/geminstaller_error.rb
|
60
|
+
- lib/geminstaller/hoe_extensions.rb
|
61
|
+
- lib/geminstaller/install_processor.rb
|
62
|
+
- lib/geminstaller/missing_dependency_finder.rb
|
63
|
+
- lib/geminstaller/missing_file_error.rb
|
64
|
+
- lib/geminstaller/noninteractive_chooser.rb
|
65
|
+
- lib/geminstaller/output_filter.rb
|
66
|
+
- lib/geminstaller/output_listener.rb
|
67
|
+
- lib/geminstaller/output_observer.rb
|
68
|
+
- lib/geminstaller/output_proxy.rb
|
69
|
+
- lib/geminstaller/requires.rb
|
70
|
+
- lib/geminstaller/rogue_gem_finder.rb
|
71
|
+
- lib/geminstaller/ruby_gem.rb
|
72
|
+
- lib/geminstaller/rubygems_exit.rb
|
73
|
+
- lib/geminstaller/rubygems_extensions.rb
|
74
|
+
- lib/geminstaller/unauthorized_dependency_prompt_error.rb
|
75
|
+
- lib/geminstaller/unexpected_prompt_error.rb
|
76
|
+
- lib/geminstaller/valid_platform_selector.rb
|
77
|
+
- lib/geminstaller/version_specifier.rb
|
78
|
+
- lib/geminstaller/yaml_loader.rb
|
79
|
+
- start_local_gem_server.sh
|
80
|
+
- test/test_all.rb
|
81
|
+
- website/config.yaml
|
82
|
+
- website/metainfo.yaml
|
83
|
+
- website/src/code/index.page
|
84
|
+
- website/src/community/index.page
|
85
|
+
- website/src/community/links.page
|
86
|
+
- website/src/default.css
|
87
|
+
- website/src/default.template
|
88
|
+
- website/src/documentation/documentation.page
|
89
|
+
- website/src/documentation/index.page
|
90
|
+
- website/src/documentation/tutorials.page
|
91
|
+
- website/src/download.page
|
92
|
+
- website/src/faq.page
|
93
|
+
- website/src/index.page
|
94
|
+
test_files:
|
95
|
+
- test/test_all.rb
|
96
|
+
rdoc_options: []
|
97
|
+
|
98
|
+
extra_rdoc_files: []
|
99
|
+
|
100
|
+
executables:
|
101
|
+
- geminstaller
|
102
|
+
extensions: []
|
103
|
+
|
104
|
+
requirements: []
|
105
|
+
|
106
|
+
dependencies: []
|
107
|
+
|