foreman_discovery 15.0.2 → 16.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/controllers/api/v2/discovery_rules_controller.rb +1 -1
- data/app/controllers/concerns/foreman/controller/discovered_extensions.rb +4 -0
- data/app/controllers/discovered_hosts_controller.rb +6 -3
- data/app/controllers/discovery_rules_controller.rb +1 -1
- data/app/models/discovery_rule.rb +1 -1
- data/app/models/host/discovered.rb +49 -31
- data/app/models/host/managed_extensions.rb +2 -2
- data/app/models/setting/discovered.rb +28 -33
- data/app/services/foreman_discovery/fact_parser.rb +1 -1
- data/app/services/foreman_discovery/host_converter.rb +38 -2
- data/app/services/foreman_discovery/host_fact_importer.rb +10 -0
- data/app/services/foreman_discovery/import_hooks/subnet_and_taxonomy.rb +6 -14
- data/app/services/foreman_discovery/node_api/node_resource.rb +1 -0
- data/app/services/foreman_discovery/subnet_suggestion.rb +26 -0
- data/app/views/foreman_discovery/debian_kexec.erb +3 -2
- data/app/views/foreman_discovery/redhat_kexec.erb +2 -1
- data/config/routes.rb +2 -0
- data/db/migrate/20150512150432_remove_old_discovery_reader_permissions.rb +1 -1
- data/db/migrate/20151023144501_regenerate_red_hat_kexec.rb +1 -1
- data/db/migrate/20180412124505_add_priority_score_to_discovery_rules.rb +1 -1
- data/extra/discover-host +34 -14
- data/lib/foreman_discovery/engine.rb +4 -4
- data/lib/foreman_discovery/version.rb +1 -1
- data/locale/ca/LC_MESSAGES/foreman_discovery.mo +0 -0
- data/locale/ca/foreman_discovery.edit.po +122 -93
- data/locale/ca/foreman_discovery.po +31 -8
- data/locale/de/LC_MESSAGES/foreman_discovery.mo +0 -0
- data/locale/de/foreman_discovery.edit.po +125 -96
- data/locale/de/foreman_discovery.po +34 -11
- data/locale/en/LC_MESSAGES/foreman_discovery.mo +0 -0
- data/locale/en/foreman_discovery.edit.po +118 -88
- data/locale/en/foreman_discovery.po +27 -4
- data/locale/en_GB/LC_MESSAGES/foreman_discovery.mo +0 -0
- data/locale/en_GB/foreman_discovery.edit.po +125 -96
- data/locale/en_GB/foreman_discovery.po +34 -11
- data/locale/es/LC_MESSAGES/foreman_discovery.mo +0 -0
- data/locale/es/foreman_discovery.edit.po +124 -95
- data/locale/es/foreman_discovery.po +33 -10
- data/locale/foreman_discovery.pot +119 -89
- data/locale/fr/LC_MESSAGES/foreman_discovery.mo +0 -0
- data/locale/fr/foreman_discovery.edit.po +122 -93
- data/locale/fr/foreman_discovery.po +31 -8
- data/locale/gl/LC_MESSAGES/foreman_discovery.mo +0 -0
- data/locale/gl/foreman_discovery.edit.po +120 -91
- data/locale/gl/foreman_discovery.po +29 -6
- data/locale/it/LC_MESSAGES/foreman_discovery.mo +0 -0
- data/locale/it/foreman_discovery.edit.po +120 -91
- data/locale/it/foreman_discovery.po +29 -6
- data/locale/ja/LC_MESSAGES/foreman_discovery.mo +0 -0
- data/locale/ja/foreman_discovery.edit.po +123 -94
- data/locale/ja/foreman_discovery.po +32 -9
- data/locale/ko/LC_MESSAGES/foreman_discovery.mo +0 -0
- data/locale/ko/foreman_discovery.edit.po +122 -93
- data/locale/ko/foreman_discovery.po +31 -8
- data/locale/pt_BR/LC_MESSAGES/foreman_discovery.mo +0 -0
- data/locale/pt_BR/foreman_discovery.edit.po +123 -94
- data/locale/pt_BR/foreman_discovery.po +32 -9
- data/locale/ru/LC_MESSAGES/foreman_discovery.mo +0 -0
- data/locale/ru/foreman_discovery.edit.po +123 -94
- data/locale/ru/foreman_discovery.po +32 -9
- data/locale/sv_SE/LC_MESSAGES/foreman_discovery.mo +0 -0
- data/locale/sv_SE/foreman_discovery.edit.po +121 -92
- data/locale/sv_SE/foreman_discovery.po +30 -7
- data/locale/zh_CN/LC_MESSAGES/foreman_discovery.mo +0 -0
- data/locale/zh_CN/foreman_discovery.edit.po +122 -93
- data/locale/zh_CN/foreman_discovery.po +31 -8
- data/locale/zh_TW/LC_MESSAGES/foreman_discovery.mo +0 -0
- data/locale/zh_TW/foreman_discovery.edit.po +120 -91
- data/locale/zh_TW/foreman_discovery.po +29 -6
- data/test/facts/bond0-eth0-eth1-active-passive.json +128 -0
- data/test/facts/facts_with_lldp_bond_candidate.json +2 -9
- data/test/facts/only-ipv6.json +205 -0
- data/test/facts/skylake-ipv6.json +223 -0
- data/test/functional/api/v2/discovered_hosts_controller_test.rb +1 -0
- data/test/functional/api/v2/settings_controller_test.rb +2 -2
- data/test/functional/discovered_hosts_controller_test.rb +15 -6
- data/test/integration/discovered_hosts_test.rb +6 -11
- data/test/test_helper_discovery.rb +12 -0
- data/test/unit/discovered_extensions_test.rb +54 -0
- data/test/unit/discovery_attribute_set_test.rb +13 -10
- data/test/unit/discovery_rule_test.rb +1 -0
- data/test/unit/host_discovered_test.rb +32 -29
- data/test/unit/managed_extensions_test.rb +2 -0
- metadata +39 -28
@@ -22,9 +22,10 @@ environments. The template must generate JSON format with the following items
|
|
22
22
|
"kernel", "initram", "append" and "extra". The kexec command is composed in
|
23
23
|
the following way:
|
24
24
|
|
25
|
-
kexec --force --
|
25
|
+
kexec --force --debug --append=$append --initrd=$initram $extra $kernel
|
26
26
|
|
27
27
|
Please read kexec(8) man page for more information about semantics.
|
28
|
+
Extra options like --reset-vga can be set via "extra" array.
|
28
29
|
-%>
|
29
30
|
<%
|
30
31
|
mac = @host.facts['discovery_bootif']
|
data/config/routes.rb
CHANGED
@@ -6,6 +6,8 @@ Rails.application.routes.draw do
|
|
6
6
|
post 'os_selected_discovered_hosts' => 'hosts#os_selected'
|
7
7
|
post 'medium_selected_discovered_hosts' => 'hosts#medium_selected'
|
8
8
|
|
9
|
+
get 'discovered_hosts/help', :action => :welcome, :controller => 'discovered_hosts'
|
10
|
+
|
9
11
|
constraints(:id => /[^\/]+/) do
|
10
12
|
resources :discovered_hosts, :except => [:new, :create] do
|
11
13
|
member do
|
@@ -1,7 +1,7 @@
|
|
1
1
|
class RemoveOldDiscoveryReaderPermissions < ActiveRecord::Migration[4.2]
|
2
2
|
def up
|
3
3
|
Permission.where("name like '%_discovery_rules' and resource_type is null").each do |permission|
|
4
|
-
permission.
|
4
|
+
permission.update(:resource_type => 'DiscoveryRule')
|
5
5
|
end
|
6
6
|
end
|
7
7
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
class RegenerateRedHatKexec < ActiveRecord::Migration[4.2]
|
2
2
|
def up
|
3
3
|
t = ProvisioningTemplate.find_by_name("Discovery Red Hat kexec")
|
4
|
-
t.
|
4
|
+
t.update(:template => t.template.sub(/rescue ''$/, 'if mac')) if t
|
5
5
|
end
|
6
6
|
|
7
7
|
def down
|
@@ -9,7 +9,7 @@
|
|
9
9
|
# and makes sure there are no two entities with the same priority.
|
10
10
|
DiscoveryRules.reset_column_information
|
11
11
|
DiscoveryRules.unscoped.reorder(:priority, :created_at).find_each do |rule|
|
12
|
-
rule.
|
12
|
+
rule.update!(:priority => score)
|
13
13
|
score += delta
|
14
14
|
end
|
15
15
|
change_column :discovery_rules, :priority, :integer, null: false
|
data/extra/discover-host
CHANGED
@@ -3,10 +3,12 @@ require 'optparse'
|
|
3
3
|
require 'json'
|
4
4
|
require 'rest-client'
|
5
5
|
|
6
|
-
def find_base name="default"
|
7
|
-
return name if File.
|
6
|
+
def find_base name = "default"
|
7
|
+
return name if File.exist?(name)
|
8
|
+
|
8
9
|
file = File.absolute_path(File.dirname(__FILE__) + "../../test/facts/#{name}.json")
|
9
|
-
raise "Unable to find file #{file}" unless File.
|
10
|
+
raise "Unable to find file #{file}" unless File.exist?(file)
|
11
|
+
|
10
12
|
file
|
11
13
|
end
|
12
14
|
|
@@ -14,6 +16,7 @@ base = find_base
|
|
14
16
|
version = "3.4.0"
|
15
17
|
interfaces = []
|
16
18
|
preserve_interfaces = false
|
19
|
+
use_facts_endpoint = false
|
17
20
|
primary = nil
|
18
21
|
bootif = nil
|
19
22
|
url = "http://admin:changeme@localhost:3000"
|
@@ -30,7 +33,7 @@ OptionParser.new do |opts|
|
|
30
33
|
version = v
|
31
34
|
end
|
32
35
|
|
33
|
-
opts.on("-iARRAY", "--interface=ARRAY", Array, "Comma separated array: name,
|
36
|
+
opts.on("-iARRAY", "--interface=ARRAY", Array, "Comma separated array: name,network/prefix,mac,ip (can be used multiple times, default: eth0,192.168.122.0/24") do |v|
|
34
37
|
interfaces << v
|
35
38
|
end
|
36
39
|
|
@@ -38,6 +41,10 @@ OptionParser.new do |opts|
|
|
38
41
|
preserve_interfaces = true
|
39
42
|
end
|
40
43
|
|
44
|
+
opts.on("-a", "--facts", "Use host facts endpoint") do |v|
|
45
|
+
use_facts_endpoint = true
|
46
|
+
end
|
47
|
+
|
41
48
|
opts.on("-pNAME", "--primary=NAME", "Interface to use as primary (defaults to the first one)") do |v|
|
42
49
|
primary = v
|
43
50
|
end
|
@@ -59,7 +66,7 @@ OptionParser.new do |opts|
|
|
59
66
|
end
|
60
67
|
end.parse!
|
61
68
|
|
62
|
-
interfaces << ["eth0", "122"] if interfaces.empty?
|
69
|
+
interfaces << ["eth0", "192.168.122.0/24"] if interfaces.empty?
|
63
70
|
primary ||= interfaces.first.first
|
64
71
|
bootif ||= interfaces.first.first
|
65
72
|
json = JSON.parse(File.read(base))
|
@@ -69,21 +76,34 @@ json["discovery_version"] = version
|
|
69
76
|
unless preserve_interfaces
|
70
77
|
json["interfaces"] = interfaces.map{|i| i.first}.join(',')
|
71
78
|
interfaces.each do |iface|
|
72
|
-
name, subnet,
|
73
|
-
mac
|
74
|
-
ipo = rand(1..253) unless ipo
|
75
|
-
ip = "192.168.#{subnet}.#{ipo}"
|
79
|
+
name, subnet, mac, explicit_ip = iface
|
80
|
+
mac ||= (["52"] + 5.times.map { '%02x' % rand(0..255) }).join(':')
|
76
81
|
json["macaddress_#{name}"] = mac
|
77
|
-
|
82
|
+
subnet_woprefix, prefix = subnet.split('/')
|
83
|
+
if subnet.include?('.')
|
84
|
+
random_ip = IPAddr.new(subnet, Socket::AF_INET) | IPAddr.new(rand(2**prefix.to_i), Socket::AF_INET)
|
85
|
+
fact_name = "ipaddress"
|
86
|
+
else
|
87
|
+
random_ip = IPAddr.new(subnet, Socket::AF_INET6) | IPAddr.new(rand(2**prefix.to_i), Socket::AF_INET6)
|
88
|
+
fact_name = "ipaddress6"
|
89
|
+
end
|
90
|
+
json["#{fact_name}_#{name}"] = explicit_ip ? explicit_ip : random_ip
|
78
91
|
if name == primary
|
79
|
-
json["macaddress"] =
|
80
|
-
json[
|
92
|
+
json["macaddress"] = json["macaddress_#{name}"]
|
93
|
+
json[fact_name] = json["#{fact_name}_#{name}"]
|
81
94
|
end
|
82
95
|
json["discovery_bootif"] = mac if name == bootif
|
83
96
|
end
|
84
97
|
end
|
85
98
|
puts JSON.pretty_generate(json)
|
86
|
-
|
87
|
-
|
99
|
+
if use_facts_endpoint
|
100
|
+
endpoint = url + "/api/v2/hosts/facts"
|
101
|
+
payload = {"facts" => json, "name" => json["hostname"] || json["networking"]["fqdn"]}
|
102
|
+
else
|
103
|
+
endpoint = url + "/api/v2/discovered_hosts/facts"
|
104
|
+
payload = {"facts" => json}
|
105
|
+
end
|
106
|
+
resource = RestClient::Resource.new(endpoint, verify_ssl: OpenSSL::SSL::VERIFY_NONE)
|
107
|
+
response = resource.post(payload.to_json, {content_type: :json, accept: :json})
|
88
108
|
puts response.code
|
89
109
|
puts response.body
|
@@ -43,12 +43,12 @@ module ForemanDiscovery
|
|
43
43
|
|
44
44
|
initializer 'foreman_discovery.register_plugin', :before => :finisher_hook do |app|
|
45
45
|
Foreman::Plugin.register :foreman_discovery do
|
46
|
-
requires_foreman '>=
|
46
|
+
requires_foreman '>= 2.2'
|
47
47
|
|
48
48
|
# discovered hosts permissions
|
49
49
|
security_block :discovery do
|
50
50
|
permission :view_discovered_hosts, {
|
51
|
-
:discovered_hosts => [:index, :show, :auto_complete_search],
|
51
|
+
:discovered_hosts => [:index, :show, :auto_complete_search, :welcome],
|
52
52
|
:"api/v2/discovered_hosts" => [:index, :show]
|
53
53
|
}, :resource_type => 'Host'
|
54
54
|
permission :submit_discovered_hosts, {
|
@@ -148,8 +148,8 @@ module ForemanDiscovery
|
|
148
148
|
:edit_discovery_rules,
|
149
149
|
:destroy_discovery_rules,
|
150
150
|
]
|
151
|
-
role "Discovery Reader", READER
|
152
|
-
role "Discovery Manager", MANAGER
|
151
|
+
role "Discovery Reader", READER, "Role granting permissions to view discovered hosts"
|
152
|
+
role "Discovery Manager", MANAGER, "Role granting permissions to perform provisioning of discovered hosts"
|
153
153
|
|
154
154
|
add_all_permissions_to_default_roles
|
155
155
|
|
Binary file
|
@@ -7,11 +7,10 @@
|
|
7
7
|
# Robert Antoni Buj Gelonch <rbuj@fedoraproject.org>, 2015-2016
|
8
8
|
msgid ""
|
9
9
|
msgstr ""
|
10
|
-
"Project-Id-Version: foreman_discovery
|
10
|
+
"Project-Id-Version: foreman_discovery 16.1.0\n"
|
11
11
|
"Report-Msgid-Bugs-To: \n"
|
12
|
-
"
|
13
|
-
"
|
14
|
-
"Last-Translator: Lukáš Zapletal\n"
|
12
|
+
"PO-Revision-Date: 2020-05-26 17:21+0000\n"
|
13
|
+
"Last-Translator: Transifex Bot <>\n"
|
15
14
|
"Language-Team: Catalan (http://www.transifex.com/foreman/foreman/language/ca/)"
|
16
15
|
"\n"
|
17
16
|
"MIME-Version: 1.0\n"
|
@@ -88,7 +87,7 @@ msgstr ""
|
|
88
87
|
msgid "Execute rules against a discovered host"
|
89
88
|
msgstr ""
|
90
89
|
|
91
|
-
#: ../app/controllers/api/v2/discovered_hosts_controller.rb:122 ../app/controllers/discovered_hosts_controller.rb:
|
90
|
+
#: ../app/controllers/api/v2/discovered_hosts_controller.rb:122 ../app/controllers/discovered_hosts_controller.rb:160
|
92
91
|
msgid "Host %{host} was provisioned with rule %{rule}"
|
93
92
|
msgstr "L'amfitrió %{host} va ser aprovisionat amb la regla %{rule}"
|
94
93
|
|
@@ -96,7 +95,7 @@ msgstr "L'amfitrió %{host} va ser aprovisionat amb la regla %{rule}"
|
|
96
95
|
msgid "Unable to provision %{host}: %{errors}"
|
97
96
|
msgstr "No es pot aprovisionar a %{host}: %{errors}"
|
98
97
|
|
99
|
-
#: ../app/controllers/api/v2/discovered_hosts_controller.rb:131 ../app/controllers/discovered_hosts_controller.rb:
|
98
|
+
#: ../app/controllers/api/v2/discovered_hosts_controller.rb:131 ../app/controllers/discovered_hosts_controller.rb:167
|
100
99
|
msgid "No rule found for host %s"
|
101
100
|
msgstr "No s'ha trobat cap regla per a l'amfitrió %s"
|
102
101
|
|
@@ -104,11 +103,11 @@ msgstr "No s'ha trobat cap regla per a l'amfitrió %s"
|
|
104
103
|
msgid "Execute rules against all currently discovered hosts"
|
105
104
|
msgstr "Executa les regles contra tots els amfitrions detectats actualment"
|
106
105
|
|
107
|
-
#: ../app/controllers/api/v2/discovered_hosts_controller.rb:142 ../app/controllers/discovered_hosts_controller.rb:
|
106
|
+
#: ../app/controllers/api/v2/discovered_hosts_controller.rb:142 ../app/controllers/discovered_hosts_controller.rb:173
|
108
107
|
msgid "Errors during auto provisioning: %s"
|
109
108
|
msgstr "Erros durant l'auto aprovisionament: %s"
|
110
109
|
|
111
|
-
#: ../app/controllers/api/v2/discovered_hosts_controller.rb:145 ../app/controllers/discovered_hosts_controller.rb:
|
110
|
+
#: ../app/controllers/api/v2/discovered_hosts_controller.rb:145 ../app/controllers/discovered_hosts_controller.rb:176
|
112
111
|
msgid "No discovered hosts to provision"
|
113
112
|
msgstr "Sense amfitrions descoberts per aprovisionar"
|
114
113
|
|
@@ -128,7 +127,7 @@ msgstr "S'està reiniciant un amfitrió descobert"
|
|
128
127
|
msgid "Rebooting all discovered hosts"
|
129
128
|
msgstr "S'estan reiniciant tots els amfitrions descoberts"
|
130
129
|
|
131
|
-
#: ../app/controllers/api/v2/discovered_hosts_controller.rb:207 ../app/controllers/discovered_hosts_controller.rb:
|
130
|
+
#: ../app/controllers/api/v2/discovered_hosts_controller.rb:207 ../app/controllers/discovered_hosts_controller.rb:129
|
132
131
|
msgid "Discovered hosts are rebooting now"
|
133
132
|
msgstr "Ara s'estan reiniciant els amfitrions descoberts"
|
134
133
|
|
@@ -200,11 +199,11 @@ msgstr ""
|
|
200
199
|
msgid "No hostgroup associated with rule '%s'"
|
201
200
|
msgstr ""
|
202
201
|
|
203
|
-
#: ../app/controllers/concerns/foreman/controller/discovered_extensions.rb:
|
202
|
+
#: ../app/controllers/concerns/foreman/controller/discovered_extensions.rb:73
|
204
203
|
msgid "Errors during reboot: %s"
|
205
204
|
msgstr "Errors durant el reinici: %s"
|
206
205
|
|
207
|
-
#: ../app/controllers/concerns/foreman/controller/discovered_extensions.rb:
|
206
|
+
#: ../app/controllers/concerns/foreman/controller/discovered_extensions.rb:91
|
208
207
|
msgid "No discovered hosts to reboot"
|
209
208
|
msgstr ""
|
210
209
|
|
@@ -212,91 +211,91 @@ msgstr ""
|
|
212
211
|
msgid "Successfully provisioned %s"
|
213
212
|
msgstr ""
|
214
213
|
|
215
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
214
|
+
#: ../app/controllers/discovered_hosts_controller.rb:97
|
216
215
|
msgid "Facts refreshed for %s"
|
217
216
|
msgstr "Els objectes d'interès que s'han refrescat per a %s"
|
218
217
|
|
219
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
218
|
+
#: ../app/controllers/discovered_hosts_controller.rb:99
|
220
219
|
msgid "Failed to refresh facts for %s"
|
221
220
|
msgstr "No s'ha pogut refrescar els objectes d'interès per a %s"
|
222
221
|
|
223
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
222
|
+
#: ../app/controllers/discovered_hosts_controller.rb:102
|
224
223
|
msgid "Failed to refresh facts for %{hostname} with error %{error_message}"
|
225
224
|
msgstr ""
|
226
225
|
|
227
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
226
|
+
#: ../app/controllers/discovered_hosts_controller.rb:109
|
228
227
|
msgid "Host of type %s can not be rebooted"
|
229
228
|
msgstr ""
|
230
229
|
|
231
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
230
|
+
#: ../app/controllers/discovered_hosts_controller.rb:113
|
232
231
|
msgid "Rebooting host %s"
|
233
232
|
msgstr "S'està reiniciant l'amfitrió %s"
|
234
233
|
|
235
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
234
|
+
#: ../app/controllers/discovered_hosts_controller.rb:115
|
236
235
|
msgid "Failed to reboot host %s"
|
237
236
|
msgstr "No s'ha pogut reiniciar l'amfitrió %s."
|
238
237
|
|
239
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
238
|
+
#: ../app/controllers/discovered_hosts_controller.rb:118
|
240
239
|
msgid "Failed to reboot host %{hostname} with error %{error_message}"
|
241
240
|
msgstr ""
|
242
241
|
|
243
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
242
|
+
#: ../app/controllers/discovered_hosts_controller.rb:132
|
244
243
|
msgid "Failed to reboot hosts with error %s"
|
245
244
|
msgstr ""
|
246
245
|
|
247
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
246
|
+
#: ../app/controllers/discovered_hosts_controller.rb:150
|
248
247
|
msgid "Destroyed selected hosts"
|
249
248
|
msgstr "S'han destruït els amfitrions seleccionats"
|
250
249
|
|
251
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
250
|
+
#: ../app/controllers/discovered_hosts_controller.rb:152
|
252
251
|
msgid "The following hosts were not deleted: %s"
|
253
252
|
msgstr ""
|
254
253
|
|
255
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
254
|
+
#: ../app/controllers/discovered_hosts_controller.rb:164
|
256
255
|
msgid "Failed to auto provision host %s: %s"
|
257
256
|
msgstr "No s'ha pogut auto aprovisionar l'amfitrió %s: %s"
|
258
257
|
|
259
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
258
|
+
#: ../app/controllers/discovered_hosts_controller.rb:192
|
260
259
|
msgid "Discovered hosts are provisioning now"
|
261
260
|
msgstr "Els amfitrions descoberts ara tenen aprovisionament"
|
262
261
|
|
263
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
262
|
+
#: ../app/controllers/discovered_hosts_controller.rb:226
|
264
263
|
msgid "Highlights"
|
265
264
|
msgstr ""
|
266
265
|
|
267
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
266
|
+
#: ../app/controllers/discovered_hosts_controller.rb:226
|
268
267
|
msgid "Storage"
|
269
268
|
msgstr ""
|
270
269
|
|
271
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
270
|
+
#: ../app/controllers/discovered_hosts_controller.rb:226
|
272
271
|
msgid "Hardware"
|
273
272
|
msgstr ""
|
274
273
|
|
275
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
274
|
+
#: ../app/controllers/discovered_hosts_controller.rb:226
|
276
275
|
msgid "Network"
|
277
276
|
msgstr ""
|
278
277
|
|
279
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
278
|
+
#: ../app/controllers/discovered_hosts_controller.rb:226
|
280
279
|
msgid "Software"
|
281
280
|
msgstr ""
|
282
281
|
|
283
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
282
|
+
#: ../app/controllers/discovered_hosts_controller.rb:226
|
284
283
|
msgid "IPMI"
|
285
284
|
msgstr ""
|
286
285
|
|
287
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
286
|
+
#: ../app/controllers/discovered_hosts_controller.rb:226
|
288
287
|
msgid "Miscellaneous"
|
289
288
|
msgstr ""
|
290
289
|
|
291
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
290
|
+
#: ../app/controllers/discovered_hosts_controller.rb:304
|
292
291
|
msgid "No hosts were found with that id or name"
|
293
292
|
msgstr "No s'ha trobat cap amfitrió amb aquest ID o nom"
|
294
293
|
|
295
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
294
|
+
#: ../app/controllers/discovered_hosts_controller.rb:308
|
296
295
|
msgid "No hosts selected"
|
297
296
|
msgstr "Cap amfitrió seleccionat"
|
298
297
|
|
299
|
-
#: ../app/controllers/discovered_hosts_controller.rb:
|
298
|
+
#: ../app/controllers/discovered_hosts_controller.rb:314
|
300
299
|
msgid "Something went wrong while selecting hosts - %s"
|
301
300
|
msgstr "Alguna cosa va anar malament mentre se seleccionaven els amfitrions - %s"
|
302
301
|
|
@@ -320,7 +319,7 @@ msgstr "Auto aprovisiona"
|
|
320
319
|
msgid "Refresh facts"
|
321
320
|
msgstr "Refresca els objectes d'interès"
|
322
321
|
|
323
|
-
#: ../app/helpers/discovered_hosts_helper.rb:16 ../app/helpers/discovered_hosts_helper.rb:30 ../app/models/setting/discovered.rb:
|
322
|
+
#: ../app/helpers/discovered_hosts_helper.rb:16 ../app/helpers/discovered_hosts_helper.rb:30 ../app/models/setting/discovered.rb:24 ../app/views/discovered_hosts/_discovered_hosts_list.html.erb:39
|
324
323
|
msgid "Reboot"
|
325
324
|
msgstr "Reinicia"
|
326
325
|
|
@@ -444,35 +443,39 @@ msgstr ""
|
|
444
443
|
msgid "MAC-based name"
|
445
444
|
msgstr ""
|
446
445
|
|
447
|
-
#: ../app/models/host/discovered.rb:
|
446
|
+
#: ../app/models/host/discovered.rb:55
|
448
447
|
msgid "Invalid facts, must be a Hash"
|
449
448
|
msgstr "Objectes d'interès no vàlids, han de tenir un Hash"
|
450
449
|
|
451
|
-
#: ../app/models/host/discovered.rb:
|
450
|
+
#: ../app/models/host/discovered.rb:60
|
452
451
|
msgid "Expected discovery_fact '%s' is missing, unable to detect primary interface and set hostname"
|
453
452
|
msgstr ""
|
454
453
|
|
455
|
-
#: ../app/models/host/discovered.rb:
|
454
|
+
#: ../app/models/host/discovered.rb:73
|
456
455
|
msgid "Invalid facts: hash does not contain a valid value for any of the facts in the discovery_hostname setting: %s"
|
457
456
|
msgstr ""
|
458
457
|
|
459
|
-
#: ../app/models/host/discovered.rb:
|
458
|
+
#: ../app/models/host/discovered.rb:100
|
460
459
|
msgid "Facts could not be imported"
|
461
460
|
msgstr ""
|
462
461
|
|
463
|
-
#: ../app/models/host/discovered.rb:
|
462
|
+
#: ../app/models/host/discovered.rb:146
|
464
463
|
msgid "Could not get facts from proxy %{url}: %{error}"
|
465
464
|
msgstr "No s'han pogut obtenir els objectes d'interès del servidor intermediari %{url}: %{error}"
|
466
465
|
|
467
|
-
#: ../app/models/host/discovered.rb:
|
468
|
-
msgid "Unable to reboot %{name}
|
469
|
-
msgstr "
|
466
|
+
#: ../app/models/host/discovered.rb:160
|
467
|
+
msgid "Unable to perform reboot on %{name} (%{url}): %{msg}"
|
468
|
+
msgstr ""
|
469
|
+
|
470
|
+
#: ../app/models/host/discovered.rb:164 ../app/models/host/discovered.rb:183
|
471
|
+
msgid "Unable to perform %{action} on %{ips}"
|
472
|
+
msgstr ""
|
470
473
|
|
471
|
-
#: ../app/models/host/discovered.rb:
|
472
|
-
msgid "Unable to perform kexec on %{name}
|
473
|
-
msgstr "
|
474
|
+
#: ../app/models/host/discovered.rb:179
|
475
|
+
msgid "Unable to perform kexec on %{name} (%{url}): %{msg}"
|
476
|
+
msgstr ""
|
474
477
|
|
475
|
-
#: ../app/models/host/discovered.rb:
|
478
|
+
#: ../app/models/host/discovered.rb:203
|
476
479
|
msgid "Invalid hostname: Could not normalize the hostname"
|
477
480
|
msgstr ""
|
478
481
|
|
@@ -500,183 +503,183 @@ msgstr ""
|
|
500
503
|
msgid "Rebuild DNS for %s"
|
501
504
|
msgstr ""
|
502
505
|
|
503
|
-
#: ../app/models/setting/discovered.rb:
|
506
|
+
#: ../app/models/setting/discovered.rb:17
|
504
507
|
msgid "The default location to place discovered hosts in"
|
505
508
|
msgstr ""
|
506
509
|
|
507
|
-
#: ../app/models/setting/discovered.rb:
|
510
|
+
#: ../app/models/setting/discovered.rb:17
|
508
511
|
msgid "Discovery location"
|
509
512
|
msgstr ""
|
510
513
|
|
511
|
-
#: ../app/models/setting/discovered.rb:
|
514
|
+
#: ../app/models/setting/discovered.rb:18
|
512
515
|
msgid "The default organization to place discovered hosts in"
|
513
516
|
msgstr ""
|
514
517
|
|
515
|
-
#: ../app/models/setting/discovered.rb:
|
518
|
+
#: ../app/models/setting/discovered.rb:18
|
516
519
|
msgid "Discovery organization"
|
517
520
|
msgstr ""
|
518
521
|
|
519
|
-
#: ../app/models/setting/discovered.rb:
|
522
|
+
#: ../app/models/setting/discovered.rb:19
|
520
523
|
msgid "Fact name to use for primary interface detection"
|
521
524
|
msgstr ""
|
522
525
|
|
523
|
-
#: ../app/models/setting/discovered.rb:
|
526
|
+
#: ../app/models/setting/discovered.rb:19
|
524
527
|
msgid "Interface fact"
|
525
528
|
msgstr ""
|
526
529
|
|
527
|
-
#: ../app/models/setting/discovered.rb:
|
530
|
+
#: ../app/models/setting/discovered.rb:20
|
528
531
|
msgid "Automatic bond interface (if another interface is detected on the same VLAN via LLDP)"
|
529
532
|
msgstr ""
|
530
533
|
|
531
|
-
#: ../app/models/setting/discovered.rb:
|
534
|
+
#: ../app/models/setting/discovered.rb:20
|
532
535
|
msgid "Create bond interfaces"
|
533
536
|
msgstr ""
|
534
537
|
|
535
|
-
#: ../app/models/setting/discovered.rb:
|
538
|
+
#: ../app/models/setting/discovered.rb:21
|
536
539
|
msgid "Clean all reported facts during provisioning (except discovery facts)"
|
537
540
|
msgstr ""
|
538
541
|
|
539
|
-
#: ../app/models/setting/discovered.rb:
|
542
|
+
#: ../app/models/setting/discovered.rb:21
|
540
543
|
msgid "Clean all facts"
|
541
544
|
msgstr ""
|
542
545
|
|
543
|
-
#: ../app/models/setting/discovered.rb:
|
546
|
+
#: ../app/models/setting/discovered.rb:22
|
544
547
|
msgid "List of facts to use for the hostname (separated by comma, first wins)"
|
545
548
|
msgstr ""
|
546
549
|
|
547
|
-
#: ../app/models/setting/discovered.rb:
|
550
|
+
#: ../app/models/setting/discovered.rb:22
|
548
551
|
msgid "Hostname facts"
|
549
552
|
msgstr ""
|
550
553
|
|
551
|
-
#: ../app/models/setting/discovered.rb:
|
554
|
+
#: ../app/models/setting/discovered.rb:23
|
552
555
|
msgid "Automatically provision newly discovered hosts, according to the provisioning rules"
|
553
556
|
msgstr ""
|
554
557
|
|
555
|
-
#: ../app/models/setting/discovered.rb:
|
558
|
+
#: ../app/models/setting/discovered.rb:23
|
556
559
|
msgid "Auto provisioning"
|
557
560
|
msgstr ""
|
558
561
|
|
559
|
-
#: ../app/models/setting/discovered.rb:
|
562
|
+
#: ../app/models/setting/discovered.rb:24
|
560
563
|
msgid "Automatically reboot or kexec discovered host during provisioning"
|
561
564
|
msgstr ""
|
562
565
|
|
563
|
-
#: ../app/models/setting/discovered.rb:
|
566
|
+
#: ../app/models/setting/discovered.rb:25
|
564
567
|
msgid "The default prefix to use for the host name, must start with a letter"
|
565
568
|
msgstr ""
|
566
569
|
|
567
|
-
#: ../app/models/setting/discovered.rb:
|
570
|
+
#: ../app/models/setting/discovered.rb:25
|
568
571
|
msgid "Hostname prefix"
|
569
572
|
msgstr ""
|
570
573
|
|
571
|
-
#: ../app/models/setting/discovered.rb:
|
574
|
+
#: ../app/models/setting/discovered.rb:26
|
572
575
|
msgid "Extra facter columns to show in host lists (separate by comma)"
|
573
576
|
msgstr ""
|
574
577
|
|
575
|
-
#: ../app/models/setting/discovered.rb:
|
578
|
+
#: ../app/models/setting/discovered.rb:26
|
576
579
|
msgid "Fact columns"
|
577
580
|
msgstr ""
|
578
581
|
|
579
|
-
#: ../app/models/setting/discovered.rb:
|
582
|
+
#: ../app/models/setting/discovered.rb:27
|
580
583
|
msgid "Regex to organize facts for highlights section - e.g. ^(abc|cde)$"
|
581
584
|
msgstr ""
|
582
585
|
|
583
|
-
#: ../app/models/setting/discovered.rb:
|
586
|
+
#: ../app/models/setting/discovered.rb:27
|
584
587
|
msgid "Highlighted facts"
|
585
588
|
msgstr ""
|
586
589
|
|
587
|
-
#: ../app/models/setting/discovered.rb:
|
590
|
+
#: ../app/models/setting/discovered.rb:28
|
588
591
|
msgid "Regex to organize facts for storage section"
|
589
592
|
msgstr "Expressió regular per a organitzar els objectes d'interès per a la secció d'emmagatzematge"
|
590
593
|
|
591
|
-
#: ../app/models/setting/discovered.rb:
|
594
|
+
#: ../app/models/setting/discovered.rb:28
|
592
595
|
msgid "Storage facts"
|
593
596
|
msgstr ""
|
594
597
|
|
595
|
-
#: ../app/models/setting/discovered.rb:
|
598
|
+
#: ../app/models/setting/discovered.rb:29
|
596
599
|
msgid "Regex to organize facts for software section"
|
597
600
|
msgstr "Expressió regular per a organitzar els objectes d'interès per a la secció de programari"
|
598
601
|
|
599
|
-
#: ../app/models/setting/discovered.rb:
|
602
|
+
#: ../app/models/setting/discovered.rb:29
|
600
603
|
msgid "Software facts"
|
601
604
|
msgstr ""
|
602
605
|
|
603
|
-
#: ../app/models/setting/discovered.rb:
|
606
|
+
#: ../app/models/setting/discovered.rb:30
|
604
607
|
msgid "Regex to organize facts for hardware section"
|
605
608
|
msgstr "Expressió regular per a organitzar els objectes d'interès per a la secció de programari"
|
606
609
|
|
607
|
-
#: ../app/models/setting/discovered.rb:
|
610
|
+
#: ../app/models/setting/discovered.rb:30
|
608
611
|
msgid "Hardware facts"
|
609
612
|
msgstr ""
|
610
613
|
|
611
|
-
#: ../app/models/setting/discovered.rb:
|
614
|
+
#: ../app/models/setting/discovered.rb:31
|
612
615
|
msgid "Regex to organize facts for network section"
|
613
616
|
msgstr "Expressió regular per a organitzar els objectes d'interès per a la secció de xarxa"
|
614
617
|
|
615
|
-
#: ../app/models/setting/discovered.rb:
|
618
|
+
#: ../app/models/setting/discovered.rb:31
|
616
619
|
msgid "Network facts"
|
617
620
|
msgstr ""
|
618
621
|
|
619
|
-
#: ../app/models/setting/discovered.rb:
|
622
|
+
#: ../app/models/setting/discovered.rb:32
|
620
623
|
msgid "Regex to organize facts for ipmi section"
|
621
624
|
msgstr "Expressió regular per a organitzar els objectes d'interès per a la secció ipmi"
|
622
625
|
|
623
|
-
#: ../app/models/setting/discovered.rb:
|
626
|
+
#: ../app/models/setting/discovered.rb:32
|
624
627
|
msgid "IPMI facts"
|
625
628
|
msgstr ""
|
626
629
|
|
627
|
-
#: ../app/models/setting/discovered.rb:
|
630
|
+
#: ../app/models/setting/discovered.rb:33
|
628
631
|
msgid "Automatically generate PXE configuration to pin a newly discovered host to discovery"
|
629
632
|
msgstr ""
|
630
633
|
|
631
|
-
#: ../app/models/setting/discovered.rb:
|
634
|
+
#: ../app/models/setting/discovered.rb:33
|
632
635
|
msgid "Lock PXE"
|
633
636
|
msgstr ""
|
634
637
|
|
635
|
-
#: ../app/models/setting/discovered.rb:
|
638
|
+
#: ../app/models/setting/discovered.rb:34
|
636
639
|
msgid "PXELinux template to be used when pinning a host to discovery"
|
637
640
|
msgstr ""
|
638
641
|
|
639
|
-
#: ../app/models/setting/discovered.rb:
|
642
|
+
#: ../app/models/setting/discovered.rb:34
|
640
643
|
msgid "Locked PXELinux template name"
|
641
644
|
msgstr ""
|
642
645
|
|
643
|
-
#: ../app/models/setting/discovered.rb:
|
646
|
+
#: ../app/models/setting/discovered.rb:35
|
644
647
|
msgid "PXEGrub template to be used when pinning a host to discovery"
|
645
648
|
msgstr ""
|
646
649
|
|
647
|
-
#: ../app/models/setting/discovered.rb:
|
650
|
+
#: ../app/models/setting/discovered.rb:35
|
648
651
|
msgid "Locked PXEGrub template name"
|
649
652
|
msgstr ""
|
650
653
|
|
651
|
-
#: ../app/models/setting/discovered.rb:
|
654
|
+
#: ../app/models/setting/discovered.rb:36
|
652
655
|
msgid "PXEGrub2 template to be used when pinning a host to discovery"
|
653
656
|
msgstr ""
|
654
657
|
|
655
|
-
#: ../app/models/setting/discovered.rb:
|
658
|
+
#: ../app/models/setting/discovered.rb:36
|
656
659
|
msgid "Locked PXEGrub2 template name"
|
657
660
|
msgstr ""
|
658
661
|
|
659
|
-
#: ../app/models/setting/discovered.rb:
|
662
|
+
#: ../app/models/setting/discovered.rb:37
|
660
663
|
msgid "Force DNS entries creation when provisioning discovered host"
|
661
664
|
msgstr ""
|
662
665
|
|
663
|
-
#: ../app/models/setting/discovered.rb:
|
666
|
+
#: ../app/models/setting/discovered.rb:37
|
664
667
|
msgid "Force DNS"
|
665
668
|
msgstr ""
|
666
669
|
|
667
|
-
#: ../app/models/setting/discovered.rb:
|
670
|
+
#: ../app/models/setting/discovered.rb:38
|
668
671
|
msgid "Do not allow to discover existing managed host matching MAC of a provisioning NIC (errors out early)"
|
669
672
|
msgstr ""
|
670
673
|
|
671
|
-
#: ../app/models/setting/discovered.rb:
|
674
|
+
#: ../app/models/setting/discovered.rb:38
|
672
675
|
msgid "Error on existing NIC"
|
673
676
|
msgstr ""
|
674
677
|
|
675
|
-
#: ../app/models/setting/discovered.rb:
|
678
|
+
#: ../app/models/setting/discovered.rb:39
|
676
679
|
msgid "Discovery hostname naming pattern"
|
677
680
|
msgstr ""
|
678
681
|
|
679
|
-
#: ../app/models/setting/discovered.rb:
|
682
|
+
#: ../app/models/setting/discovered.rb:39
|
680
683
|
msgid "Type of name generator"
|
681
684
|
msgstr ""
|
682
685
|
|
@@ -692,14 +695,24 @@ msgstr ""
|
|
692
695
|
msgid "Unable to find primary NIC with %{mac} specified via '%{fact}', NIC filter: %{filter}"
|
693
696
|
msgstr ""
|
694
697
|
|
695
|
-
#: ../app/services/foreman_discovery/
|
698
|
+
#: ../app/services/foreman_discovery/host_converter.rb:47
|
699
|
+
msgid "IPAM must be configured for subnet '%s'"
|
700
|
+
msgstr ""
|
701
|
+
|
702
|
+
#: ../app/services/foreman_discovery/node_api/node_resource.rb:76
|
696
703
|
msgid "Image API returned HTTP/%{code} with '%{body}"
|
697
704
|
msgstr ""
|
698
705
|
|
699
|
-
#: ../app/services/foreman_discovery/node_api/node_resource.rb:
|
706
|
+
#: ../app/services/foreman_discovery/node_api/node_resource.rb:79
|
700
707
|
msgid "Image API processing error: %{msg} (HTTP/%{code}, body: %{body})"
|
701
708
|
msgstr ""
|
702
709
|
|
710
|
+
#: ../app/views/dashboard/_discovery_widget.html.erb:5
|
711
|
+
msgid "Discovered Host"
|
712
|
+
msgid_plural "Discovered Hosts"
|
713
|
+
msgstr[0] ""
|
714
|
+
msgstr[1] ""
|
715
|
+
|
703
716
|
#: ../app/views/dashboard/_discovery_widget.html.erb:9
|
704
717
|
msgid "No discovered hosts available"
|
705
718
|
msgstr ""
|
@@ -1003,3 +1016,19 @@ msgstr ""
|
|
1003
1016
|
#: ../lib/foreman_discovery/engine.rb:190
|
1004
1017
|
msgid "ID of Discovery Proxy to use within this subnet for managing connection to discovered hosts"
|
1005
1018
|
msgstr ""
|
1019
|
+
|
1020
|
+
#: action_names.rb:2
|
1021
|
+
msgid "Remote action:"
|
1022
|
+
msgstr ""
|
1023
|
+
|
1024
|
+
#: action_names.rb:3
|
1025
|
+
msgid "Import Puppet classes"
|
1026
|
+
msgstr ""
|
1027
|
+
|
1028
|
+
#: action_names.rb:4
|
1029
|
+
msgid "Import facts"
|
1030
|
+
msgstr ""
|
1031
|
+
|
1032
|
+
#: action_names.rb:5
|
1033
|
+
msgid "Action with sub plans"
|
1034
|
+
msgstr ""
|