Class: Bueller
- Inherits:
-
Object
- Object
- Bueller
- Defined in:
- lib/bueller.rb,
lib/bueller/errors.rb,
lib/bueller/commands.rb,
lib/bueller/generator.rb,
lib/bueller/gemspec_helper.rb,
lib/bueller/version_helper.rb,
lib/bueller/rubyforge_tasks.rb,
lib/bueller/generator/options.rb,
lib/bueller/commands/build_gem.rb,
lib/bueller/commands/install_gem.rb,
lib/bueller/generator/rdoc_mixin.rb,
lib/bueller/generator/riot_mixin.rb,
lib/bueller/generator/yard_mixin.rb,
lib/bueller/commands/version/base.rb,
lib/bueller/generator/application.rb,
lib/bueller/generator/bacon_mixin.rb,
lib/bueller/generator/rspec_mixin.rb,
lib/bueller/commands/version/write.rb,
lib/bueller/commands/write_gemspec.rb,
lib/bueller/generator/github_mixin.rb,
lib/bueller/generator/shindo_mixin.rb,
lib/bueller/generator/shoulda_mixin.rb,
lib/bueller/commands/git_tag_release.rb,
lib/bueller/generator/minitest_mixin.rb,
lib/bueller/generator/testspec_mixin.rb,
lib/bueller/generator/testunit_mixin.rb,
lib/bueller/generator/micronaut_mixin.rb,
lib/bueller/commands/release_to_github.rb,
lib/bueller/commands/version/bump_major.rb,
lib/bueller/commands/version/bump_minor.rb,
lib/bueller/commands/version/bump_patch.rb,
lib/bueller/commands/release_to_rubygems.rb,
lib/bueller/tasks.rb
Overview
Bueller helps you craft the perfect Rubygem. Give him a gemspec, and he takes care of the rest.
See Bueller::Tasks for examples of how to get started. Additionally, resources are available on the wiki:
Defined Under Namespace
Modules: Commands Classes: FileInTheWay, GemSpecHelper, GemspecError, Generator, GitInitFailed, NoGitHubRepoNameGiven, NoGitHubToken, NoGitHubUser, NoGitUserEmail, NoGitUserName, RubyforgeTasks, Tasks, VersionHelper, VersionYmlError
Instance Attribute Summary collapse
-
#base_dir ⇒ Object
Returns the value of attribute base_dir.
-
#commit ⇒ Object
Returns the value of attribute commit.
-
#gemspec_helper ⇒ Object
Returns the value of attribute gemspec_helper.
-
#output ⇒ Object
Returns the value of attribute output.
-
#repo ⇒ Object
Returns the value of attribute repo.
-
#version_helper ⇒ Object
Returns the value of attribute version_helper.
Instance Method Summary collapse
-
#build_gem ⇒ Object
Build a gem using the project’s latest Gem::Specification.
-
#bump_major_version ⇒ Object
Bumps the major version.
-
#bump_minor_version ⇒ Object
Bumps the minor version.
-
#bump_patch_version ⇒ Object
Bumps the patch version.
- #git_base_dir(base_dir = nil) ⇒ Object
- #git_tag_release ⇒ Object
- #in_git_repo? ⇒ Boolean
-
#initialize(base_dir = '.') ⇒ Bueller
constructor
A new instance of Bueller.
-
#install_gem ⇒ Object
Install a previously built gem.
-
#major_version ⇒ Object
Major version, as defined by the gemspec’s Version module.
-
#minor_version ⇒ Object
Minor version, as defined by the gemspec’s Version module.
-
#patch_version ⇒ Object
Patch version, as defined by the gemspec’s Version module.
- #release_gem_to_github ⇒ Object
- #release_gem_to_rubygems ⇒ Object
-
#version ⇒ Object
Human readable version, which is used in the gemspec.
-
#write_gemspec ⇒ Object
Writes out the gemspec.
-
#write_version(major, minor, patch, build) ⇒ Object
Bumps the version, to the specific major/minor/patch version, writing out the appropriate version.rb, and then reloads it.
Constructor Details
#initialize(base_dir = '.') ⇒ Bueller
Returns a new instance of Bueller.
25 26 27 |
# File 'lib/bueller.rb', line 25 def initialize(base_dir = '.') self.base_dir = base_dir end |
Instance Attribute Details
#base_dir ⇒ Object
Returns the value of attribute base_dir.
23 24 25 |
# File 'lib/bueller.rb', line 23 def base_dir @base_dir end |
#commit ⇒ Object
Returns the value of attribute commit.
23 24 25 |
# File 'lib/bueller.rb', line 23 def commit @commit end |
#gemspec_helper ⇒ Object
Returns the value of attribute gemspec_helper.
23 24 25 |
# File 'lib/bueller.rb', line 23 def gemspec_helper @gemspec_helper end |
#output ⇒ Object
Returns the value of attribute output.
23 24 25 |
# File 'lib/bueller.rb', line 23 def output @output end |
#repo ⇒ Object
Returns the value of attribute repo.
23 24 25 |
# File 'lib/bueller.rb', line 23 def repo @repo end |
#version_helper ⇒ Object
Returns the value of attribute version_helper.
23 24 25 |
# File 'lib/bueller.rb', line 23 def version_helper @version_helper end |
Instance Method Details
#build_gem ⇒ Object
Build a gem using the project’s latest Gem::Specification
78 79 80 |
# File 'lib/bueller.rb', line 78 def build_gem Bueller::Commands::BuildGem.run_for self end |
#bump_major_version ⇒ Object
Bumps the major version.
1.5.1 -> 2.0.0
104 105 106 |
# File 'lib/bueller.rb', line 104 def bump_major_version Bueller::Commands::Version::BumpMajor.run_for self end |
#bump_minor_version ⇒ Object
Bumps the minor version.
1.5.1 -> 1.6.0
97 98 99 |
# File 'lib/bueller.rb', line 97 def bump_minor_version Bueller::Commands::Version::BumpMinor.run_for self end |
#bump_patch_version ⇒ Object
Bumps the patch version.
1.5.1 -> 1.5.2
90 91 92 |
# File 'lib/bueller.rb', line 90 def bump_patch_version Bueller::Commands::Version::BumpPatch.run_for self end |
#git_base_dir(base_dir = nil) ⇒ Object
125 126 127 128 129 130 131 132 133 134 |
# File 'lib/bueller.rb', line 125 def git_base_dir(base_dir = nil) if base_dir base_dir = File.dirname(base_dir) else base_dir = File.(self.base_dir || ".") end return nil if base_dir==File.dirname("/") return base_dir if File.exists?(File.join(base_dir, '.git')) git_base_dir(base_dir) end |
#git_tag_release ⇒ Object
117 118 119 |
# File 'lib/bueller.rb', line 117 def git_tag_release Bueller::Commands::GitTagRelease.run_for self end |
#in_git_repo? ⇒ Boolean
136 137 138 |
# File 'lib/bueller.rb', line 136 def in_git_repo? !git_base_dir.nil? end |
#install_gem ⇒ Object
Install a previously built gem
83 84 85 |
# File 'lib/bueller.rb', line 83 def install_gem Bueller::Commands::InstallGem.run_for self end |
#major_version ⇒ Object
Major version, as defined by the gemspec’s Version module. For 1.5.3, this would return 1.
51 52 53 |
# File 'lib/bueller.rb', line 51 def major_version @version_helper.major end |
#minor_version ⇒ Object
Minor version, as defined by the gemspec’s Version module. For 1.5.3, this would return 5.
57 58 59 |
# File 'lib/bueller.rb', line 57 def minor_version @version_helper.minor end |
#patch_version ⇒ Object
Patch version, as defined by the gemspec’s Version module. For 1.5.3, this would return 5.
63 64 65 |
# File 'lib/bueller.rb', line 63 def patch_version @version_helper.patch end |
#release_gem_to_github ⇒ Object
113 114 115 |
# File 'lib/bueller.rb', line 113 def release_gem_to_github Bueller::Commands::ReleaseToGithub.run_for self end |
#release_gem_to_rubygems ⇒ Object
121 122 123 |
# File 'lib/bueller.rb', line 121 def release_gem_to_rubygems Bueller::Commands::ReleaseToRubygems.run_for self end |
#version ⇒ Object
Human readable version, which is used in the gemspec.
68 69 70 |
# File 'lib/bueller.rb', line 68 def version gemspec_helper.version || @version_helper.to_s end |
#write_gemspec ⇒ Object
Writes out the gemspec
73 74 75 |
# File 'lib/bueller.rb', line 73 def write_gemspec Bueller::Commands::WriteGemspec.run_for self end |
#write_version(major, minor, patch, build) ⇒ Object
Bumps the version, to the specific major/minor/patch version, writing out the appropriate version.rb, and then reloads it.
109 110 111 |
# File 'lib/bueller.rb', line 109 def write_version(major, minor, patch, build) Bueller::Commands::Version::Write.run_for self, major, minor, patch, build end |