2023-03-03 10:26:53 +08:00
|
|
|
namespace :batch_forked_project do
|
|
|
|
|
desc "batch forked project"
|
|
|
|
|
task done: :environment do
|
|
|
|
|
project_id = ENV['project_id']
|
|
|
|
|
puts "project_id=================#{project_id}"
|
|
|
|
|
next if project_id.blank?
|
2023-03-09 14:27:01 +08:00
|
|
|
project = Project.find project_id
|
2023-03-03 10:26:53 +08:00
|
|
|
user_logins = ['p89346015','p25371846','p69217483','p69805714','p78920563','p54261380','p18934275','p41273960','p76281309','p97134028','p89450236','p28097461','p60437152','p16925078','p13420986','p02315697','p73950468','p72348916','p65874312','p94723568','p35407816','p61830975','p48127056','p17832064','p06472319','p59827036','p49583267','p36120475','p63428509','p51029748','p98071642','p17580394','p96175348','p41672830','p68109573','p23185094','p62105398','p78052941','p39784256','p31704586','p25768904','p30916782','p97142530','p25706341','p90421386','p30547691','p12598607','p34096851','p56902314','p95014723','p57810362','p27049618','p21035879','p47560312','p45902861','p28534760','p95064217','p06819345','p24786109','p47862359','p67201548','p38275619','p02713685','p20516978','p92801564','p12894530','p38146059','p36259710','p65298073','p45926780','p65849120','p19425386','p41038257','p64871093','p49017526','p76438951','p09842165','p07546132','p74189326','p20819356','p79041358','p68315204','p23671945','p75086429','p75246983','p86719302','p57046318','p36402875','p29370514','p39284567','p84973510','p70912653','p87013296','p45801397','p75632498','p15097863','p37298104','p26813470','p80596471','p50234679','p94836501','p97481306','p03826457','p64398250','p06728315','p95802743','p10893624','p32197506','p60475139','p86321945','p26708531','p40531786','p43216578','p81793025','p65974130','p86049152','p68735142','p98625074','p08619275','p48179362','p81507936','p48719350','p79346812','p35027486','p60329715','p60539481','p76059481','p32659470','p73492805','p05214867','p83527960','p57284961','p84921730','p78614302','p58043692','p83795012','p72490365','p74031526','p19072458','p78305942','p79210548','p04273869','p20894137','p38905462','p46109723','p17250849','p79863042','p86354072','p70381452','p70852634','p01439876','p85409726','p13072985','p06975321','p42786905','p84576012','p63541897','p92760841','p83741256','p53029167','p80254167','p57062419','p52071649','p38649571','p54687012','p35487621','p90182463','p40937281','p56809147','p19543078','p69304857','p68457901','p63190852','p86140357','p57491630','p32801694','p16539028','p35182647','p81065927','p98142307','p57806943','p13286457','p61349702','p35168907','p59713608','p61397402','p42673859','p49085271','p31790624','p86451732','p31682759','p29108563','p64157932','p24086573','p50786231','p41237908','p58712463','p02635481','p63289457','p29836504','p42591076','p37620514','p58016429','p91068472','p21489537','p42068571','p09413782','p27456893','p30871956','p14983026','p09567821','p15038967','p34802159','p89234176','p97038246','p60173295','p02418537','p16423790','p71034629','p10284537','p08539174','p26359018','p32981056','p94538276','p92354178','p46271580','p46150238','p97850142','p81604759','p91084637','p04637589','p73852460','p52189704','p19084632','p14763208','p32746591','p47620913','p47068915','p02596781','p48530276','p28309164','p38564297','p14728506','p09413785','p56127938','p24085137','p60517892','p48261730','p45012768','p95741268','p97205463','p32816504','p93410257','p24736950','p07946812','p37408162','p97062183','p02763814','p37142856','p72063459','p36921540','p97583401','p95183074','p90816354','p20768431','p45763201','p07549382','p67502814','p79641052','p09471635','p56234879','p35214687','p25708641','p06452378','p05843697','p89562143','p76435829','p32574608','p24780615','p16408279','p48051237','p70695184','p01297543','p19647583','p41297630','p45163207','p08362159','p20853741','p52436710','p98243601','p97240356','p45980172','p91287634','p65903241','p16543708','p32968140','p72054981','p25904731','p42137095','p32480967','p81739025','p43590716','p04152936','p78094351','p24719605','p35078941','p26875103','p39617540','p32046579','p38614905','p37904815','p04637219','p16072398','p14509327','p64915802','p86901372','p23689415','p13627904','p07649125','p63974102','p90372815','p76839152','p70621953','p62783154','p69127034','p35762149','p46718029','p49038615','p13625784','p74835920','p71894530','p67253149','p95476182','p85632907','p64315790','p38150427','p98024156','p70684592','p39427165','p096825
|
2023-03-09 09:40:24 +08:00
|
|
|
if ENV['count'].present?
|
|
|
|
|
user_logins = user_logins.sample(ENV['count'].to_i)
|
|
|
|
|
end
|
|
|
|
|
puts "user_count===#{user_logins.size}"
|
2023-03-03 10:26:53 +08:00
|
|
|
user_logins.each do |username|
|
|
|
|
|
begin
|
|
|
|
|
user = User.find_by(login: username)
|
|
|
|
|
next if user.blank?
|
|
|
|
|
next if Project.exists?(user_id: user.id, identifier: project.identifier)
|
2023-06-07 10:54:36 +08:00
|
|
|
new_project = Projects::ForkService.new(user, project, nil, nil, nil).call
|
2023-03-10 11:19:10 +08:00
|
|
|
random_num = rand(5..20)
|
2023-03-03 10:26:53 +08:00
|
|
|
members = user_logins.sample(random_num)
|
|
|
|
|
members.each do |m|
|
|
|
|
|
m_user = User.find_by(login: m)
|
|
|
|
|
next if m_user.blank?
|
2023-03-03 14:29:04 +08:00
|
|
|
Projects::AddMemberInteractor.call(new_project.owner, new_project, m_user)
|
2023-03-03 10:26:53 +08:00
|
|
|
end
|
|
|
|
|
new_date = project.created_on + rand(5..60).day + rand(5..30).hour
|
|
|
|
|
new_project.update_columns(created_on: new_date, updated_on: new_date)
|
|
|
|
|
ForkUser.where(fork_project_id: new_project.id).where(user_id: user.id).update_all(created_at: new_date, updated_at: new_date)
|
|
|
|
|
puts "forked project success username: #{username}"
|
|
|
|
|
rescue Exception => e
|
|
|
|
|
puts "forked project error username: #{username}"
|
|
|
|
|
end
|
|
|
|
|
end
|
2023-03-09 14:18:25 +08:00
|
|
|
# 点赞
|
|
|
|
|
like_members = user_logins.sample(rand(5..50))
|
|
|
|
|
like_members.each do |u|
|
|
|
|
|
like_user = User.find_by(login: u)
|
|
|
|
|
next if like_user.liked?(project)
|
|
|
|
|
like_user.like!(project)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
task zan: :environment do
|
|
|
|
|
project_id = ENV['project_id']
|
|
|
|
|
puts "project_id=================#{project_id}"
|
|
|
|
|
next if project_id.blank?
|
2023-03-09 14:20:00 +08:00
|
|
|
project = Project.find project_id
|
2023-03-09 14:18:25 +08:00
|
|
|
user_logins = ['p89346015','p25371846','p69217483','p69805714','p78920563','p54261380','p18934275','p41273960','p76281309','p97134028','p89450236','p28097461','p60437152','p16925078','p13420986','p02315697','p73950468','p72348916','p65874312','p94723568','p35407816','p61830975','p48127056','p17832064','p06472319','p59827036','p49583267','p36120475','p63428509','p51029748','p98071642','p17580394','p96175348','p41672830','p68109573','p23185094','p62105398','p78052941','p39784256','p31704586','p25768904','p30916782','p97142530','p25706341','p90421386','p30547691','p12598607','p34096851','p56902314','p95014723','p57810362','p27049618','p21035879','p47560312','p45902861','p28534760','p95064217','p06819345','p24786109','p47862359','p67201548','p38275619','p02713685','p20516978','p92801564','p12894530','p38146059','p36259710','p65298073','p45926780','p65849120','p19425386','p41038257','p64871093','p49017526','p76438951','p09842165','p07546132','p74189326','p20819356','p79041358','p68315204','p23671945','p75086429','p75246983','p86719302','p57046318','p36402875','p29370514','p39284567','p84973510','p70912653','p87013296','p45801397','p75632498','p15097863','p37298104','p26813470','p80596471','p50234679','p94836501','p97481306','p03826457','p64398250','p06728315','p95802743','p10893624','p32197506','p60475139','p86321945','p26708531','p40531786','p43216578','p81793025','p65974130','p86049152','p68735142','p98625074','p08619275','p48179362','p81507936','p48719350','p79346812','p35027486','p60329715','p60539481','p76059481','p32659470','p73492805','p05214867','p83527960','p57284961','p84921730','p78614302','p58043692','p83795012','p72490365','p74031526','p19072458','p78305942','p79210548','p04273869','p20894137','p38905462','p46109723','p17250849','p79863042','p86354072','p70381452','p70852634','p01439876','p85409726','p13072985','p06975321','p42786905','p84576012','p63541897','p92760841','p83741256','p53029167','p80254167','p57062419','p52071649','p38649571','p54687012','p35487621','p90182463','p40937281','p56809147','p19543078','p69304857','p68457901','p63190852','p86140357','p57491630','p32801694','p16539028','p35182647','p81065927','p98142307','p57806943','p13286457','p61349702','p35168907','p59713608','p61397402','p42673859','p49085271','p31790624','p86451732','p31682759','p29108563','p64157932','p24086573','p50786231','p41237908','p58712463','p02635481','p63289457','p29836504','p42591076','p37620514','p58016429','p91068472','p21489537','p42068571','p09413782','p27456893','p30871956','p14983026','p09567821','p15038967','p34802159','p89234176','p97038246','p60173295','p02418537','p16423790','p71034629','p10284537','p08539174','p26359018','p32981056','p94538276','p92354178','p46271580','p46150238','p97850142','p81604759','p91084637','p04637589','p73852460','p52189704','p19084632','p14763208','p32746591','p47620913','p47068915','p02596781','p48530276','p28309164','p38564297','p14728506','p09413785','p56127938','p24085137','p60517892','p48261730','p45012768','p95741268','p97205463','p32816504','p93410257','p24736950','p07946812','p37408162','p97062183','p02763814','p37142856','p72063459','p36921540','p97583401','p95183074','p90816354','p20768431','p45763201','p07549382','p67502814','p79641052','p09471635','p56234879','p35214687','p25708641','p06452378','p05843697','p89562143','p76435829','p32574608','p24780615','p16408279','p48051237','p70695184','p01297543','p19647583','p41297630','p45163207','p08362159','p20853741','p52436710','p98243601','p97240356','p45980172','p91287634','p65903241','p16543708','p32968140','p72054981','p25904731','p42137095','p32480967','p81739025','p43590716','p04152936','p78094351','p24719605','p35078941','p26875103','p39617540','p32046579','p38614905','p37904815','p04637219','p16072398','p14509327','p64915802','p86901372','p23689415','p13627904','p07649125','p63974102','p90372815','p76839152','p70621953','p62783154','p69127034','p35762149','p46718029','p49038615','p13625784','p74835920','p71894530','p67253149','p95476182','p85632907','p64315790','p38150427','p98024156','p70684592','p39427165','p096825
|
|
|
|
|
if ENV['count'].present?
|
|
|
|
|
user_logins = user_logins.sample(ENV['count'].to_i)
|
|
|
|
|
else
|
|
|
|
|
user_logins = user_logins.sample(rand(5..50))
|
|
|
|
|
end
|
|
|
|
|
puts "user_count===#{user_logins.size}"
|
|
|
|
|
# 点赞
|
|
|
|
|
user_logins.each do |u|
|
|
|
|
|
like_user = User.find_by(login: u)
|
|
|
|
|
next if like_user.liked?(project)
|
|
|
|
|
like_user.like!(project)
|
|
|
|
|
end
|
2023-03-03 10:26:53 +08:00
|
|
|
end
|
|
|
|
|
end
|