Websites/app/logical/storage_manager/git.rb

29 lines
597 B
Ruby
Raw Normal View History

# frozen_string_literal: true
module StorageManager
class Git < StorageManager::Local
def delete(path)
return unless exists?(path)
super
system!("git add #{base_path}#{path}")
system!("git commit -m \"Remove #{path[1..]}\"")
system!("git push")
end
def put(path, io)
super
if exists?(path)
system!("git add #{base_path}#{path}")
system!("git commit -m \"Add #{path[1..]}\"")
system!("git push")
end
end
private
def system!(*)
system(*, exception: true, chdir: base_path)
end
end
end