#907: add action for removing archive after destroy tag

This commit is contained in:
Vokhmin Alexey V 2013-02-14 17:53:26 +04:00
parent 9b483d0ec2
commit 28d4f278b9
2 changed files with 9 additions and 2 deletions

View File

@ -216,9 +216,8 @@ class Project < ActiveRecord::Base
system "curl --user #{token}: -POST -F 'file_store[file]=@#{archive[:path]};filename=#{name}-#{tag.name}.#{tag_file_format(format)}' #{APP_CONFIG['file_store_url']}/api/v1/upload" system "curl --user #{token}: -POST -F 'file_store[file]=@#{archive[:path]};filename=#{name}-#{tag.name}.#{tag_file_format(format)}' #{APP_CONFIG['file_store_url']}/api/v1/upload"
end end
if project_tag if project_tag
old_sha1 = project_tag.sha1 project_tag.remove_archive_from_file_store(project_tag.sha1)
project_tag.update_attributes(:sha1 => sha1) project_tag.update_attributes(:sha1 => sha1)
system "curl --user #{token}: -X DELETE #{APP_CONFIG['file_store_url']}/api/v1/file_stores/#{old_sha1}.json"
else else
project_tags.create( project_tags.create(
:tag_name => tag.name, :tag_name => tag.name,

View File

@ -16,4 +16,12 @@ class ProjectTag < ActiveRecord::Base
:tag_name, :tag_name,
:format_id :format_id
after_destroy :remove_archive_from_file_store
def remove_archive_from_file_store(sha = sha1)
token = User.find_by_uname('rosa_system').authentication_token
system "curl --user #{token}: -X DELETE #{APP_CONFIG['file_store_url']}/api/v1/file_stores/#{sha}.json"
end
later :remove_archive_from_file_store, :queue => :clone_build
end end