31 lines
994 B
Ruby
31 lines
994 B
Ruby
namespace :remove_branch do
|
|
desc "Remove branch for group projects"
|
|
task group: :environment do
|
|
branch = ENV['BRANCH']
|
|
group = ENV['GROUP']
|
|
say "START remove branch #{branch} from #{group} group"
|
|
Group.find_by(uname: group).projects.find_each do |p|
|
|
next if p.repo.branches.map(&:name).exclude?(branch)
|
|
say "===== Process #{p.name} project"
|
|
p.repo.git.native(:branch, {}, '-D', branch)
|
|
end
|
|
say 'DONE'
|
|
end
|
|
|
|
desc "Remove branch for platform projects"
|
|
task platform: :environment do
|
|
branch = ENV['BRANCH']
|
|
platform = ENV['PLATFORM']
|
|
say "START remove branch #{branch} from #{platform} platform"
|
|
Platform.find_by(name: platform).repositories.each do |r|
|
|
say "=== Process #{r.name} repo"
|
|
r.projects.find_each do |p|
|
|
next if p.repo.branches.map(&:name).exclude?(branch)
|
|
say "===== Process #{p.name} project"
|
|
p.repo.git.native(:branch, {}, '-D', branch)
|
|
end
|
|
end
|
|
say 'DONE'
|
|
end
|
|
end
|