Class: ForemanAnsible::UiRolesImporter
Overview
imports ansible roles through UI
Instance Attribute Summary
#ansible_proxy
Instance Method Summary
collapse
#detect_changes, #fetch_role_names, #import_role_names, #import_roles, #initialize
Instance Method Details
#create_new_roles(changes) ⇒ Object
14
15
16
17
18
|
# File 'app/services/foreman_ansible/ui_roles_importer.rb', line 14
def create_new_roles(changes)
changes.each_pair do |_, new_role|
::AnsibleRole.create(JSON.parse(new_role))
end
end
|
#delete_old_roles(changes) ⇒ Object
20
21
22
23
24
|
# File 'app/services/foreman_ansible/ui_roles_importer.rb', line 20
def delete_old_roles(changes)
changes.each_pair do |_, old_role|
::AnsibleRole.find(JSON.parse(old_role)['id']).destroy
end
end
|
#finish_import(changes) ⇒ Object
8
9
10
11
12
|
# File 'app/services/foreman_ansible/ui_roles_importer.rb', line 8
def finish_import(changes)
return if changes.blank?
create_new_roles changes['new'] if changes['new']
delete_old_roles changes['obsolete'] if changes['obsolete']
end
|
#import! ⇒ Object
4
5
6
|
# File 'app/services/foreman_ansible/ui_roles_importer.rb', line 4
def import!
import_role_names
end
|