Link Search Menu Expand Document
Table of contents
  1. Projects
    1. Create Project
    2. Delete Project
    3. Search Project
    4. Update project key.
    5. Update project visibility.
    6. Bulk delete projects.

Projects

Create Project

project = Sonarqube.project_create('new_project')
# => <Sonarqube::ObjectifiedHash:46200 {hash: {"project"=>{"key"=>"new_project", "name"=>"new_project", "qualifier"=>"TRK", "visibility"=>"public"}}}
project.project.key
# => "new_project"
project.to_hash
# => {"project"=>{"key"=>"new_project", "name"=>"new_project", "qualifier"=>"TRK", "visibility"=>"public"}}

Delete Project

project = Sonarqube.project_delete('test')
# => #<Sonarqube::ObjectifiedHash:46220 {hash: {}}
project.to_hash.empty?
# => true

Search Project

projects = Sonarqube.project_search()
# => #<Sonarqube::ObjectifiedHash:46240 {hash: {"paging"=>{"pageIndex"=>1, "pageSize"=>100, "total"=>2}, "components"=>[{"organization"=>"default-organization", "key"=>"old_key", "name"=>"new_proyect", "qualifier"=>"TRK", "visibility"=>"private"}, {"organization"=>"default-organization", "key"=>"test", "name"=>"test", "qualifier"=>"TRK", "visibility"=>"public"}]}}
projects.components.each do | project |
  puts "name: #{project.name}"
  puts "key: #{project.key}"
end
# name: new_proyect
# key: old_key
# name: test
# key: test

Update project key.

Sonarqube.project_update_key('key_ori', 'key_new')
# => #<Sonarqube::ObjectifiedHash:46220 {hash: {}}
project.to_hash.empty?
# => true

Update project visibility.

Sonarqube.project_update_visibility('sonarqube', 'public')
# => #<Sonarqube::ObjectifiedHash:46220 {hash: {}}
project.to_hash.empty?
# => true

Bulk delete projects.

projects = Sonarqube.projects_bulk_delete({projects: 'new_proyect'})
# => #<Sonarqube::ObjectifiedHash:46220 {hash: {}}
project.to_hash.empty?
# => true