Class: OsCtld::Commands::Repository::Add
- Defined in:
- lib/osctld/commands/repository/add.rb
Instance Attribute Summary
Attributes inherited from Base
#client, #client_handler, #id, #opts
Instance Method Summary collapse
Methods inherited from Logged
Methods inherited from Base
#base_execute, #call_cmd, #call_cmd!, #error, #error!, handle, #handled, #indirect?, #initialize, #manipulate, #manipulation_holder, #ok, #progress, #request_stop, run, run!
Constructor Details
This class inherits a constructor from OsCtld::Commands::Base
Instance Method Details
#execute(pool) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/osctld/commands/repository/add.rb', line 22 def execute(pool) DB::Repositories.sync do if DB::Repositories.find(opts[:name], pool) next error('repository already exists') end repo = Repository.new(pool, opts[:name], load: false) repo.configure(opts[:url]) Dir.mkdir(repo.cache_path, 0o700) File.chown(Repository::UID, 0, repo.cache_path) DB::Repositories.add(repo) ok end end |