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