class PullRequestBuilder::OSC

Attributes

apiurl[RW]
logger[RW]

Public Instance Methods

add_remove(file_path) click to toggle source
# File lib/pull_request_builder/osc.rb, line 21
def add_remove(file_path)
  execute(['ar', file_path])
end
build_result(package) click to toggle source
# File lib/pull_request_builder/osc.rb, line 37
def build_result(package)
  execute(['api', File.join('build', package.obs_project_pr_name, '_result')])
end
checkout(project, dir) click to toggle source
# File lib/pull_request_builder/osc.rb, line 9
def checkout(project, dir)
  execute(['co', project, '--output-dir', dir])
end
commit(file_path, message = 'ok') click to toggle source
# File lib/pull_request_builder/osc.rb, line 33
def commit(file_path, message = 'ok')
  execute(['commit', file_path, '-m', message])
end
delete_project(project) click to toggle source
# File lib/pull_request_builder/osc.rb, line 13
def delete_project(project)
  execute(['api', '-X', 'DELETE', project])
end
get_history(project) click to toggle source
# File lib/pull_request_builder/osc.rb, line 17
def get_history(project)
  execute(['api', "/source/#{project}/_history"])
end
meta_pkg(project, package, meta_file) click to toggle source
# File lib/pull_request_builder/osc.rb, line 25
def meta_pkg(project, package, meta_file)
  meta(operation: :pkg, project: project, package: package, meta_file: meta_file)
end
meta_prj(project, meta_file) click to toggle source
# File lib/pull_request_builder/osc.rb, line 29
def meta_prj(project, meta_file)
  meta(operation: :prj, project: project, meta_file: meta_file)
end
search_project(name_prefix) click to toggle source
# File lib/pull_request_builder/osc.rb, line 41
def search_project(name_prefix)
  search_string = "search/project?match=starts-with(@name,'#{name_prefix}')"
  execute(['api', search_string])
end

Private Instance Methods

execute(args) click to toggle source
# File lib/pull_request_builder/osc.rb, line 63
def execute(args)
  ::Cheetah.run('osc', '-A', apiurl, *args, logger: logger, stdout: :capture)
end
meta(params = {}) click to toggle source
# File lib/pull_request_builder/osc.rb, line 52
def meta(params = {})
  case params[:operation]
  when :prj
    execute(['meta', 'prj', params[:project], '--file', params[:meta_file]])
  when :pkg
    execute(['meta', 'pkg', params[:project], params[:package], '--file', params[:meta_file]])
  else
    raise ArgumentError, "#{operation} not vaild"
  end
end