foreman_snapshot_management 1.5.1 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +200 -2
  3. data/Rakefile +9 -2
  4. data/app/controllers/api/v2/snapshots_controller.rb +39 -7
  5. data/app/controllers/concerns/foreman/controller/parameters/snapshot.rb +2 -0
  6. data/app/controllers/foreman_snapshot_management/snapshots_controller.rb +10 -7
  7. data/app/helpers/concerns/foreman_snapshot_management/hosts_helper_extension.rb +2 -0
  8. data/app/helpers/foreman_snapshot_management/snapshot_helper.rb +2 -0
  9. data/app/models/concerns/fog_extensions/proxmox/snapshots/mock.rb +24 -0
  10. data/app/models/concerns/fog_extensions/vsphere/snapshots/mock.rb +2 -0
  11. data/app/models/concerns/fog_extensions/vsphere/snapshots/real.rb +4 -2
  12. data/app/models/foreman_snapshot_management/proxmox_extensions.rb +101 -0
  13. data/app/models/foreman_snapshot_management/snapshot.rb +36 -30
  14. data/app/models/foreman_snapshot_management/vmware_extensions.rb +42 -13
  15. data/app/views/api/v2/snapshots/base.json.rabl +4 -0
  16. data/app/views/api/v2/snapshots/create.json.rabl +2 -0
  17. data/app/views/api/v2/snapshots/destroy.json.rabl +2 -0
  18. data/app/views/api/v2/snapshots/index.json.rabl +2 -0
  19. data/app/views/api/v2/snapshots/main.json.rabl +4 -2
  20. data/app/views/api/v2/snapshots/revert.json.rabl +2 -0
  21. data/app/views/api/v2/snapshots/show.json.rabl +2 -0
  22. data/app/views/api/v2/snapshots/update.json.rabl +2 -0
  23. data/app/views/foreman_snapshot_management/snapshots/_index.html.erb +12 -74
  24. data/app/views/{foreman_snapshot_management/hosts/_snapshots_tab_content.html.erb → hosts/_snapshots_tab.html.erb} +8 -0
  25. data/config/routes.rb +2 -0
  26. data/lib/foreman_snapshot_management.rb +2 -0
  27. data/lib/foreman_snapshot_management/engine.rb +56 -17
  28. data/lib/foreman_snapshot_management/version.rb +3 -1
  29. data/lib/tasks/foreman_snapshot_management_tasks.rake +31 -10
  30. data/locale/de/LC_MESSAGES/foreman_snapshot_management.mo +0 -0
  31. data/locale/de/foreman_snapshot_management.po +195 -0
  32. data/locale/en/LC_MESSAGES/foreman_snapshot_management.mo +0 -0
  33. data/locale/en/foreman_snapshot_management.edit.po +0 -0
  34. data/locale/en/foreman_snapshot_management.po +179 -11
  35. data/locale/foreman_snapshot_management.pot +259 -8
  36. data/locale/gemspec.rb +3 -1
  37. data/package.json +46 -0
  38. data/test/controllers/api/v2/snapshots_test.rb +252 -39
  39. data/test/controllers/foreman_snapshot_management/snapshots_controller_test.rb +63 -9
  40. data/test/factories/proxmox_factory.rb +18 -0
  41. data/test/test_plugin_helper.rb +5 -0
  42. data/webpack/components/SnapshotManagement/SnapshotManagement.js +84 -0
  43. data/webpack/components/SnapshotManagement/SnapshotManagementActions.js +212 -0
  44. data/webpack/components/SnapshotManagement/SnapshotManagementConstants.js +9 -0
  45. data/webpack/components/SnapshotManagement/SnapshotManagementReducer.js +100 -0
  46. data/webpack/components/SnapshotManagement/SnapshotManagementSelectors.js +8 -0
  47. data/webpack/components/SnapshotManagement/__tests__/SnapshotManagementActions.test.js +123 -0
  48. data/webpack/components/SnapshotManagement/__tests__/SnapshotManagementReducer.test.js +157 -0
  49. data/webpack/components/SnapshotManagement/__tests__/__snapshots__/SnapshotManagementActions.test.js.snap +314 -0
  50. data/webpack/components/SnapshotManagement/__tests__/__snapshots__/SnapshotManagementReducer.test.js.snap +214 -0
  51. data/webpack/components/SnapshotManagement/components/SnapshotForm/SnapshotForm.js +118 -0
  52. data/webpack/components/SnapshotManagement/components/SnapshotForm/SnapshotFormConstants.js +5 -0
  53. data/webpack/components/SnapshotManagement/components/SnapshotForm/__tests__/SnapshotForm.test.js +26 -0
  54. data/webpack/components/SnapshotManagement/components/SnapshotForm/__tests__/__snapshots__/SnapshotForm.test.js.snap +476 -0
  55. data/webpack/components/SnapshotManagement/components/SnapshotForm/index.js +19 -0
  56. data/webpack/components/SnapshotManagement/components/SnapshotForm/snapshotForm.scss +3 -0
  57. data/webpack/components/SnapshotManagement/components/SnapshotFormModal/SnapshotFormModal.js +37 -0
  58. data/webpack/components/SnapshotManagement/components/SnapshotFormModal/SnapshotFormModalConstants.js +1 -0
  59. data/webpack/components/SnapshotManagement/components/SnapshotFormModal/__tests__/SnapshotFormModal.test.js +19 -0
  60. data/webpack/components/SnapshotManagement/components/SnapshotFormModal/__tests__/__snapshots__/SnapshotFormModal.test.js.snap +19 -0
  61. data/webpack/components/SnapshotManagement/components/SnapshotFormModal/index.js +12 -0
  62. data/webpack/components/SnapshotManagement/components/SnapshotFormModal/useSnapshotFormModal.js +7 -0
  63. data/webpack/components/SnapshotManagement/components/SnapshotList/SnapshotList.js +314 -0
  64. data/webpack/components/SnapshotManagement/components/SnapshotList/SnapshotListHelper.js +70 -0
  65. data/webpack/components/SnapshotManagement/components/SnapshotList/__tests__/SnapshotList.test.js +88 -0
  66. data/webpack/components/SnapshotManagement/components/SnapshotList/__tests__/__snapshots__/SnapshotList.test.js.snap +1081 -0
  67. data/webpack/components/SnapshotManagement/components/SnapshotList/snapshotList.scss +13 -0
  68. data/webpack/components/SnapshotManagement/index.js +33 -0
  69. data/webpack/components/SnapshotManagement/snapshotManagement.scss +5 -0
  70. data/webpack/global_index.js +7 -0
  71. data/webpack/global_test_setup.js +11 -0
  72. data/webpack/index.js +8 -0
  73. data/webpack/reducers.js +7 -0
  74. data/webpack/test_setup.js +17 -0
  75. metadata +52 -54
  76. data/app/overrides/hosts/add_tab_to_host_overview.rb +0 -11
  77. data/app/views/foreman_snapshot_management/hosts/_snapshots_tab.html.erb +0 -3
@@ -1,4 +1,12 @@
1
1
  <% if @host.compute_resource && @host.compute_resource.capabilities.include?(:snapshots) && authorized_for(:auth_object => @host, :permission => :view_snapshots) %>
2
+
3
+ <% content_for(:javascripts) do %>
4
+ <%= webpacked_plugins_js_for :foreman_snapshot_management %>
5
+ <% end %>
6
+ <% content_for(:stylesheets) do %>
7
+ <%= webpacked_plugins_css_for :foreman_snapshot_management %>
8
+ <% end %>
9
+
2
10
  <div id='snapshots' class='tab-pane'
3
11
  data-ajax-url='<%= host_snapshots_path(host_id: @host)%>'
4
12
  data-on-complete='onContentLoad'>
data/config/routes.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  Rails.application.routes.draw do
2
4
  namespace :api, :defaults => { :format => 'json' } do
3
5
  scope '(:apiv)', :module => :v2,
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'foreman_snapshot_management/engine'
2
4
 
3
5
  module ForemanSnapshotManagement
@@ -1,4 +1,4 @@
1
- require 'deface'
1
+ # frozen_string_literal: true
2
2
 
3
3
  module ForemanSnapshotManagement
4
4
  class Engine < ::Rails::Engine
@@ -10,7 +10,10 @@ module ForemanSnapshotManagement
10
10
 
11
11
  initializer 'foreman_snapshot_management.register_plugin', before: :finisher_hook do |_app|
12
12
  Foreman::Plugin.register :foreman_snapshot_management do
13
- requires_foreman '>= 1.17'
13
+ requires_foreman '>= 2.0.0'
14
+
15
+ # Add Global files for extending foreman-core components and routes
16
+ register_global_js_file 'global'
14
17
 
15
18
  apipie_documented_controllers ["#{ForemanSnapshotManagement::Engine.root}/app/controllers/api/v2/*.rb"]
16
19
 
@@ -22,7 +25,7 @@ module ForemanSnapshotManagement
22
25
  }, :resource_type => 'Host'
23
26
 
24
27
  permission :create_snapshots, {
25
- :'foreman_snapshot_management/snapshots' => [:create],
28
+ :'foreman_snapshot_management/snapshots' => [:create, :select_multiple_host, :create_multiple_host],
26
29
  :'api/v2/snapshots' => [:create]
27
30
  }, :resource_type => 'Host'
28
31
 
@@ -43,14 +46,25 @@ module ForemanSnapshotManagement
43
46
  end
44
47
 
45
48
  # Adds roles if they do not exist
46
- role 'Snapshot Viewer', [:view_snapshots]
47
- role 'Snapshot Manager', [
48
- :view_snapshots,
49
- :create_snapshots,
50
- :edit_snapshots,
51
- :destroy_snapshots,
52
- :revert_snapshots
53
- ]
49
+ role 'Snapshot Viewer',
50
+ [:view_snapshots],
51
+ 'Role granting permission only to view snapshots for hosts'
52
+ role 'Snapshot Manager',
53
+ [
54
+ :view_snapshots,
55
+ :create_snapshots,
56
+ :edit_snapshots,
57
+ :destroy_snapshots,
58
+ :revert_snapshots
59
+ ],
60
+ 'Role granting permission to manage snapshots for hosts'
61
+
62
+ extend_page('hosts/show') do |context|
63
+ context.add_pagelet :main_tabs,
64
+ :name => N_('Snapshots'),
65
+ :partial => 'hosts/snapshots_tab',
66
+ :onlyif => proc { |host| host&.compute_resource&.capable?(:snapshots) }
67
+ end
54
68
  end
55
69
  end
56
70
 
@@ -72,19 +86,31 @@ module ForemanSnapshotManagement
72
86
 
73
87
  # Include concerns in this config.to_prepare block
74
88
  config.to_prepare do
89
+ # Load Foreman extensions
90
+ ::HostsHelper.prepend ForemanSnapshotManagement::HostsHelperExtension
91
+
75
92
  begin
76
- # Load Foreman extensions
77
- ::Foreman::Model::Vmware.send(:prepend, ForemanSnapshotManagement::VmwareExtensions)
78
- ::HostsHelper.send(:prepend, ForemanSnapshotManagement::HostsHelperExtension)
93
+ ::ForemanFogProxmox::Proxmox.prepend ForemanSnapshotManagement::ProxmoxExtensions
94
+
95
+ # Load Fog extensions
96
+ Fog::Proxmox::Compute::Mock.prepend FogExtensions::Proxmox::Snapshots::Mock if ForemanFogProxmox::Proxmox.available?
97
+ rescue StandardError => e
98
+ Rails.logger.warn "Failed to load Proxmox extension #{e}"
99
+ end
100
+
101
+ begin
102
+ ::Foreman::Model::Vmware.prepend ForemanSnapshotManagement::VmwareExtensions
79
103
 
80
104
  # Load Fog extensions
81
105
  if Foreman::Model::Vmware.available?
82
- Fog::Compute::Vsphere::Real.send(:prepend, FogExtensions::Vsphere::Snapshots::Real)
83
- Fog::Compute::Vsphere::Mock.send(:prepend, FogExtensions::Vsphere::Snapshots::Mock)
106
+ ForemanSnapshotManagement.fog_vsphere_namespace::Real.prepend FogExtensions::Vsphere::Snapshots::Real
107
+ ForemanSnapshotManagement.fog_vsphere_namespace::Mock.prepend FogExtensions::Vsphere::Snapshots::Mock
84
108
  end
85
109
  rescue StandardError => e
86
- Rails.logger.warn "ForemanSnapshotManagement: skipping engine hook (#{e})"
110
+ Rails.logger.warn "Failed to load VMware extension #{e}"
87
111
  end
112
+ rescue StandardError => e
113
+ Rails.logger.warn "ForemanSnapshotManagement: skipping engine hook (#{e})"
88
114
  end
89
115
 
90
116
  rake_tasks do
@@ -99,4 +125,17 @@ module ForemanSnapshotManagement
99
125
  Foreman::Gettext::Support.add_text_domain locale_domain, locale_dir
100
126
  end
101
127
  end
128
+
129
+ def self.fog_vsphere_namespace
130
+ @fog_vsphere_namespace ||= calculate_fog_vsphere_namespace
131
+ end
132
+
133
+ def self.calculate_fog_vsphere_namespace
134
+ require 'fog/vsphere/version'
135
+ if Gem::Version.new(Fog::Vsphere::VERSION) >= Gem::Version.new('3.0.0')
136
+ Fog::Vsphere::Compute
137
+ else
138
+ Fog::Compute::Vsphere
139
+ end
140
+ end
102
141
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module ForemanSnapshotManagement
2
- VERSION = '1.5.1'.freeze
4
+ VERSION = '2.0.0'
3
5
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Tests
2
4
  namespace :test do
3
5
  desc 'Test ForemanSnapshotManagement'
@@ -10,20 +12,39 @@ namespace :test do
10
12
  end
11
13
  end
12
14
 
13
- namespace :foreman_snapshot_management do
14
- task :rubocop do
15
- begin
16
- require 'rubocop/rake_task'
15
+ begin
16
+ require 'rubocop/rake_task'
17
+
18
+ test_patterns = ["#{ForemanSnapshotManagement::Engine.root}/app/**/*.rb",
19
+ "#{ForemanSnapshotManagement::Engine.root}/lib/**/*.rb",
20
+ "#{ForemanSnapshotManagement::Engine.root}/test/**/*.rb"]
21
+
22
+ namespace :foreman_snapshot_management do
23
+ task rubocop: :environment do
17
24
  RuboCop::RakeTask.new(:rubocop_foreman_snapshot_management) do |task|
18
- task.patterns = ["#{ForemanSnapshotManagement::Engine.root}/app/**/*.rb",
19
- "#{ForemanSnapshotManagement::Engine.root}/lib/**/*.rb",
20
- "#{ForemanSnapshotManagement::Engine.root}/test/**/*.rb"]
25
+ task.patterns = test_patterns
21
26
  end
22
- rescue StandardError
23
- puts 'Rubocop not loaded.'
27
+
28
+ Rake::Task['rubocop_foreman_snapshot_management'].invoke
24
29
  end
25
30
 
26
- Rake::Task['rubocop_foreman_snapshot_management'].invoke
31
+ desc 'Runs Rubocop style checker with xml output for Jenkins'
32
+ RuboCop::RakeTask.new('rubocop:jenkins') do |task|
33
+ task.patterns = test_patterns
34
+ task.requires = ['rubocop/formatter/checkstyle_formatter']
35
+ task.formatters = ['RuboCop::Formatter::CheckstyleFormatter']
36
+ task.options = ['--no-color', '--out', 'rubocop.xml']
37
+ end
38
+ end
39
+ rescue LoadError
40
+ puts 'Rubocop not loaded.'
41
+ end
42
+
43
+ namespace :jenkins do
44
+ desc 'Test ForemanSnapshotManagement with XML output for jenkins'
45
+ task 'foreman_snapshot_management' => :environment do
46
+ Rake::Task['jenkins:setup:minitest'].invoke
47
+ Rake::Task['rake:test:foreman_snapshot_management'].invoke
27
48
  end
28
49
  end
29
50
 
@@ -0,0 +1,195 @@
1
+ # SOME DESCRIPTIVE TITLE.
2
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
3
+ # This file is distributed under the same license as the foreman_snapshot_management package.
4
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5
+ #
6
+ # Translators:
7
+ # Lukáš Zapletal, 2019
8
+ # Wiederoder <stefanwiederoder@googlemail.com>, 2019
9
+ # Martin Zimmermann <martin.zimmermann@gmx.com>, 2019
10
+ # Ettore Atalan <atalanttore@googlemail.com>, 2021
11
+ # Bryan Kearney <bryan.kearney@gmail.com>, 2021
12
+ # Markus Bucher <bucher@atix.de>, 2021
13
+ #
14
+ #, fuzzy
15
+ msgid ""
16
+ msgstr ""
17
+ "Project-Id-Version: foreman_snapshot_management 1.8.1\n"
18
+ "Report-Msgid-Bugs-To: \n"
19
+ "PO-Revision-Date: 2019-10-22 11:54+0000\n"
20
+ "Last-Translator: Markus Bucher <bucher@atix.de>, 2021\n"
21
+ "Language-Team: German (https://www.transifex.com/foreman/teams/114/de/)\n"
22
+ "MIME-Version: 1.0\n"
23
+ "Content-Type: text/plain; charset=UTF-8\n"
24
+ "Content-Transfer-Encoding: 8bit\n"
25
+ "Language: de\n"
26
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
27
+
28
+ msgid "Action"
29
+ msgstr "Aktion"
30
+
31
+ msgid "Action with sub plans"
32
+ msgstr "Aktion mit Unterplänen"
33
+
34
+ msgid "Create Snapshot"
35
+ msgstr "Snapshot erstellen"
36
+
37
+ msgid "Create Snapshot for %s"
38
+ msgstr "Snapshot anlegen für %s"
39
+
40
+ msgid "Create a snapshot"
41
+ msgstr "Einen Snapshot erstellen"
42
+
43
+ msgid "Created %{snapshots} for %{num} %{hosts}"
44
+ msgstr "%{snapshots} für %{num} %{hosts} erstellt"
45
+
46
+ msgid "Delete"
47
+ msgstr "Löschen"
48
+
49
+ msgid "Delete Snapshot \"%s\"?"
50
+ msgstr "\"%s\" wirklich löschen?"
51
+
52
+ msgid "Delete a snapshot"
53
+ msgstr "Snapshot löschen"
54
+
55
+ msgid "Description"
56
+ msgstr "Beschreibung"
57
+
58
+ msgid "Description of this snapshot"
59
+ msgstr "Beschreibung dieses Snapshots"
60
+
61
+ msgid "Error occurred while creating Snapshot for:%s"
62
+ msgstr "Beim Erzeugen des Snapshots ist ein Fehler aufgetreten: %s"
63
+
64
+ msgid "Error occurred while creating Snapshot: %s"
65
+ msgstr "Beim Erzeugen des Snaphosts ist ein Fehler aufgetreten: %s"
66
+
67
+ msgid "Error occurred while removing Snapshot: %s"
68
+ msgstr "Beim Löschen des Snapshots ist ein Fehler aufgetreten: %s"
69
+
70
+ msgid "Error occurred while rolling back VM: %s"
71
+ msgstr "Beim Zurücksetzen der VM ist ein Fehler aufgetreten: %s"
72
+
73
+ msgid "Error occurred while updating Snapshot: %s"
74
+ msgstr "Fehler beim Aktualisieren des Snapshots: %s"
75
+
76
+ msgid "Failed to load snapshot list"
77
+ msgstr "Fehler beim Laden der Snapshotliste"
78
+
79
+ msgid "Failed to update Snapshot: %s"
80
+ msgstr "Das Aktualisieren des Snapshots ist fehlgeschlagen: %s"
81
+
82
+ msgid "Foreman-plugin to manage snapshots in a virtual-hardware environments."
83
+ msgstr "Ein Foremanplugin, welches Snapshots in Umgebungen mit virtueller Hardware nutzbar macht."
84
+
85
+ msgid "Import Puppet classes"
86
+ msgstr "Puppet-Klassen importieren"
87
+
88
+ msgid "Import facts"
89
+ msgstr "Fakten importieren"
90
+
91
+ msgid "Include RAM"
92
+ msgstr "RAM einbeziehen"
93
+
94
+ msgid "List all snapshots"
95
+ msgstr "Alle Snapshots auflisten"
96
+
97
+ msgid "Loading Snapshots information ..."
98
+ msgstr "Lade Snapshot Informationen ..."
99
+
100
+ msgid "N/A"
101
+ msgstr "N/A"
102
+
103
+ msgid "Name"
104
+ msgstr "Name"
105
+
106
+ msgid "Name must contain at least 2 characters starting with alphabet. Valid characters are A-Z a-z 0-9 _"
107
+ msgstr "Der Name muss aus mindestens 2 Zeichen bestehen und mit einem Buchstaben beginnen. Gültige Zeichen: A-Z a-z 0-9 _"
108
+
109
+ msgid "Name of this snapshot"
110
+ msgstr "Name dieses Snapshots"
111
+
112
+ msgid "No capable hosts found."
113
+ msgstr "Kein unterstützter Host gefunden."
114
+
115
+ msgid "No capable hosts selected"
116
+ msgstr "Keine unterstützten Hosts ausgewählt"
117
+
118
+ msgid "No hosts were found with that id, name or query filter"
119
+ msgstr "Keine Hosts wurden mit dieser Kennung, Name oder Abfrage-Filter gefunden"
120
+
121
+ msgid "Revert Host to a snapshot"
122
+ msgstr "Host auf einen Snapshot zurücksetzen"
123
+
124
+ msgid "Rollback"
125
+ msgstr "Wiederherstellen"
126
+
127
+ msgid "Rollback to \"%s\"?"
128
+ msgstr "\"%s\" wirklich wiederherstellen?"
129
+
130
+ msgid "Snapshot"
131
+ msgid_plural "Snapshots"
132
+ msgstr[0] "Snapshot"
133
+ msgstr[1] "Snapshots"
134
+
135
+ msgid "Snapshot name cannot be changed"
136
+ msgstr "Der Name des Snapshots kann nicht geändert werden"
137
+
138
+ msgid "Snapshot successfully created!"
139
+ msgstr "Snapshot erfolgreich erzeugt!"
140
+
141
+ msgid "Snapshots"
142
+ msgstr "Snapshots"
143
+
144
+ msgid "Something went wrong while selecting hosts - %s"
145
+ msgstr "Fehler beim Auswählen der Hosts – %s"
146
+
147
+ msgid "Successfully removed Snapshot \"%s\" from host %s"
148
+ msgstr "Snapshot \"%s\" erfolgreich von Host %s entfernt."
149
+
150
+ msgid "Successfully rolled back Snapshot \"%s\" on host %s"
151
+ msgstr "Snapshot \"%s\" erfolgreich auf Host %s zurückgesetzt."
152
+
153
+ msgid "Successfully updated Snapshot \"%s\""
154
+ msgstr "Snapshot \"%s\" erfolgreich aktualisiert."
155
+
156
+ msgid "Unable to create Proxmox Snapshot"
157
+ msgstr "Proxmox Snapshot konnte nicht erstellt werden"
158
+
159
+ msgid "Unable to create VMWare Snapshot"
160
+ msgstr "VMWare Snapshot konnte nicht erstellt werden"
161
+
162
+ msgid "Unable to remove Proxmox Snapshot"
163
+ msgstr "Proxmox Snapshot konnte nicht gelöscht werden"
164
+
165
+ msgid "Unable to remove VMWare Snapshot"
166
+ msgstr "VMWare Snapshot konnte nicht gelöscht werden"
167
+
168
+ msgid "Unable to revert Proxmox Snapshot"
169
+ msgstr "Proxmox Snapshot konnte nicht wiederhergestellt werden"
170
+
171
+ msgid "Unable to revert VMWare Snapshot"
172
+ msgstr "VMWare Snapshot konnte nicht wiederhergestellt werden"
173
+
174
+ msgid "Unable to update Proxmox Snapshot"
175
+ msgstr "Proxmox Snapshot konnte nicht aktualisiert werden"
176
+
177
+ msgid "Unable to update VMWare Snapshot"
178
+ msgstr "VMWare Snapshot konnte nicht aktualisiert werden"
179
+
180
+ msgid "Update a snapshot"
181
+ msgstr "Snapshot aktualisieren"
182
+
183
+ msgid "VM successfully rolled back."
184
+ msgstr "Die VM wurde erfolgreich zurückgesetzt."
185
+
186
+ msgid "Whether to include the RAM state in the snapshot"
187
+ msgstr "Ob auch der aktuelle Hauptspeicherstand im Snapshot gespeichert werden soll"
188
+
189
+ msgid "edit entry"
190
+ msgstr "Eintrag bearbeiten"
191
+
192
+ msgid "host"
193
+ msgid_plural "hosts"
194
+ msgstr[0] "Host"
195
+ msgstr[1] "Hosts"
File without changes
@@ -1,19 +1,187 @@
1
- # foreman_snapshot_management
1
+ # English translations for foreman_snapshot_management package.
2
+ # Copyright (C) 2020 THE PACKAGE'S COPYRIGHT HOLDER
3
+ # This file is distributed under the same license as the foreman_snapshot_management package.
4
+ # FIRST AUTHOR <EMAIL@ADDRESS>, 2020.
2
5
  #
3
- # This file is distributed under the same license as foreman_snapshot_management.
4
- #
5
- #, fuzzy
6
6
  msgid ""
7
7
  msgstr ""
8
- "Project-Id-Version: version 0.0.1\n"
8
+ "Project-Id-Version: foreman_snapshot_management 1.8.1\n"
9
9
  "Report-Msgid-Bugs-To: \n"
10
- "POT-Creation-Date: 2014-08-20 08:46+0100\n"
11
- "PO-Revision-Date: 2014-08-20 08:54+0100\n"
12
- "Last-Translator: Foreman Team <foreman-dev@googlegroups.com>\n"
13
- "Language-Team: Foreman Team <foreman-dev@googlegroups.com>\n"
14
- "Language: \n"
10
+ "PO-Revision-Date: 2020-03-02 10:27+0000\n"
11
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12
+ "Language-Team: English\n"
13
+ "Language: en\n"
15
14
  "MIME-Version: 1.0\n"
16
15
  "Content-Type: text/plain; charset=UTF-8\n"
17
16
  "Content-Transfer-Encoding: 8bit\n"
18
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
+ "Plural-Forms: nplurals=2; plural=n != 1;\n"
18
+ "\n"
19
+
20
+ msgid "Action"
21
+ msgstr ""
22
+
23
+ msgid "Action with sub plans"
24
+ msgstr ""
25
+
26
+ msgid "Create Snapshot"
27
+ msgstr ""
28
+
29
+ msgid "Create Snapshot for %s"
30
+ msgstr ""
31
+
32
+ msgid "Create a snapshot"
33
+ msgstr ""
34
+
35
+ msgid "Created %{snapshots} for %{num} %{hosts}"
36
+ msgstr ""
37
+
38
+ msgid "Delete"
39
+ msgstr ""
40
+
41
+ msgid "Delete Snapshot \"%s\"?"
42
+ msgstr ""
43
+
44
+ msgid "Delete a snapshot"
45
+ msgstr ""
46
+
47
+ msgid "Description"
48
+ msgstr ""
49
+
50
+ msgid "Description of this snapshot"
51
+ msgstr ""
52
+
53
+ msgid "Error occurred while creating Snapshot for:%s"
54
+ msgstr ""
55
+
56
+ msgid "Error occurred while creating Snapshot: %s"
57
+ msgstr ""
58
+
59
+ msgid "Error occurred while removing Snapshot: %s"
60
+ msgstr ""
61
+
62
+ msgid "Error occurred while rolling back VM: %s"
63
+ msgstr ""
64
+
65
+ msgid "Error occurred while updating Snapshot: %s"
66
+ msgstr ""
67
+
68
+ msgid "Failed to load snapshot list"
69
+ msgstr ""
70
+
71
+ msgid "Failed to update Snapshot: %s"
72
+ msgstr ""
73
+
74
+ msgid "Foreman-plugin to manage snapshots in a virtual-hardware environments."
75
+ msgstr ""
76
+
77
+ msgid "Import Puppet classes"
78
+ msgstr ""
79
+
80
+ msgid "Import facts"
81
+ msgstr ""
82
+
83
+ msgid "Include RAM"
84
+ msgstr ""
85
+
86
+ msgid "List all snapshots"
87
+ msgstr ""
88
+
89
+ msgid "Loading Snapshots information ..."
90
+ msgstr ""
91
+
92
+ msgid "N/A"
93
+ msgstr ""
94
+
95
+ msgid "Name"
96
+ msgstr ""
97
+
98
+ msgid "Name must contain at least 2 characters starting with alphabet. Valid characters are A-Z a-z 0-9 _"
99
+ msgstr ""
100
+
101
+ msgid "Name of this snapshot"
102
+ msgstr ""
103
+
104
+ msgid "No capable hosts found."
105
+ msgstr ""
106
+
107
+ msgid "No capable hosts selected"
108
+ msgstr ""
109
+
110
+ msgid "No hosts were found with that id, name or query filter"
111
+ msgstr ""
112
+
113
+ msgid "Revert Host to a snapshot"
114
+ msgstr ""
115
+
116
+ msgid "Rollback"
117
+ msgstr ""
118
+
119
+ msgid "Rollback to \"%s\"?"
120
+ msgstr ""
121
+
122
+ msgid "Snapshot"
123
+ msgid_plural "Snapshots"
124
+ msgstr[0] ""
125
+ msgstr[1] ""
126
+
127
+ msgid "Snapshot name cannot be changed"
128
+ msgstr ""
129
+
130
+ msgid "Snapshot successfully created!"
131
+ msgstr ""
132
+
133
+ msgid "Snapshots"
134
+ msgstr ""
135
+
136
+ msgid "Something went wrong while selecting hosts - %s"
137
+ msgstr ""
138
+
139
+ msgid "Successfully removed Snapshot \"%s\" from host %s"
140
+ msgstr ""
141
+
142
+ msgid "Successfully rolled back Snapshot \"%s\" on host %s"
143
+ msgstr ""
144
+
145
+ msgid "Successfully updated Snapshot \"%s\""
146
+ msgstr ""
147
+
148
+ msgid "Unable to create Proxmox Snapshot"
149
+ msgstr ""
150
+
151
+ msgid "Unable to create VMWare Snapshot"
152
+ msgstr ""
153
+
154
+ msgid "Unable to remove Proxmox Snapshot"
155
+ msgstr ""
156
+
157
+ msgid "Unable to remove VMWare Snapshot"
158
+ msgstr ""
159
+
160
+ msgid "Unable to revert Proxmox Snapshot"
161
+ msgstr ""
162
+
163
+ msgid "Unable to revert VMWare Snapshot"
164
+ msgstr ""
165
+
166
+ msgid "Unable to update Proxmox Snapshot"
167
+ msgstr ""
168
+
169
+ msgid "Unable to update VMWare Snapshot"
170
+ msgstr ""
171
+
172
+ msgid "Update a snapshot"
173
+ msgstr ""
174
+
175
+ msgid "VM successfully rolled back."
176
+ msgstr ""
177
+
178
+ msgid "Whether to include the RAM state in the snapshot"
179
+ msgstr ""
180
+
181
+ msgid "edit entry"
182
+ msgstr ""
19
183
 
184
+ msgid "host"
185
+ msgid_plural "hosts"
186
+ msgstr[0] ""
187
+ msgstr[1] ""