class GemHadar
def version_push_task
The tasks utilize the git_remotes method to determine which remotes are
tag to all remotes.
individual remote push tasks, enabling a single command to push the version
- It also defines a top-level :version:push task that depends on all the
Git remote, allowing individual pushes to specific remotes.
- It creates subtasks in the :version:push namespace for each configured
namespace:
This method sets up a hierarchical task structure under the :version
Git remotes.
The version_push_task method defines Rake tasks for pushing version tags to
def version_push_task namespace :version do git_remotes.each do |gr| namespace gr.to_sym do desc "Push version #{version} to git remote #{gr}" task :push do sh "git push #{gr} v#{version}" end end end desc "Push version #{version} to all git remotes: #{git_remotes * ' '}" task :push => git_remotes.map { |gr| :"version:#{gr}:push" } end end