lib/semvergen/shell.rb in semvergen-1.7.1 vs lib/semvergen/shell.rb in semvergen-1.9.1
- old
+ new
@@ -24,15 +24,18 @@
def git_up_to_date?
`git rev-list HEAD..@{u} --count`.strip.to_i == 0
end
- def commit(version_path, new_version, commit_subject, features)
- commit_body = COMMIT_MESSAGE % [new_version, commit_subject, features.join("\n")]
+ def commit(version_path, node_version_path, new_version, commit_subject, features)
+ commit_body = commit_message(new_version, commit_subject, features.join("\n"))
execute "git add CHANGELOG.md"
execute "git add #{version_path}"
+ if node_version_path
+ execute "git add #{node_version_path}"
+ end
execute %Q[git commit -m "#{commit_body}"]
execute %Q[git tag #{new_version} -a -m "Version: #{new_version} - #{commit_subject}"]
end
def push(new_version, remote_name="origin", branch_name=current_branch)
@@ -42,33 +45,47 @@
def build_gem(gem_name)
execute "gem build #{gem_name}.gemspec --force"
end
def publish(gem_name, version, gem_server)
- execute "gem inabox #{gem_name}-#{version}.gem --host #{gem_server}"
+ if gem_server == "rubygems.org"
+ publish_to_rubygems(gem_name, version)
+ else
+ publish_to_gemserver(gem_name, version, gem_server)
+ end
end
+ def publish_node_module
+ execute "npm publish" rescue nil
+ end
+
def cleanup(gem_name, version)
execute "rm #{gem_name}-#{version}.gem"
end
private
+ def publish_to_gemserver(gem_name, version, gem_server)
+ execute "gem inabox #{gem_name}-#{version}.gem --host #{gem_server}"
+ end
+
+ def publish_to_rubygems(gem_name, version)
+ execute "gem push #{gem_name}-#{version}.gem"
+ end
+
def execute(command)
@execute_function[command]
end
def system_exec(command)
result = `#{command}`
raise if $?.exitstatus > 0
result
end
- COMMIT_MESSAGE = <<-STR
-Version %s: %s
+ def commit_message(new_version, commit_subject, features)
+ "Version #{new_version}: #{commit_subject}\n\n#{features}"
+ end
-%s
- STR
-
end
-end
\ No newline at end of file
+end