foreman_webhooks 3.1.1 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/foreman_webhooks/locale/ca/foreman_webhooks.js +238 -0
  3. data/app/assets/javascripts/foreman_webhooks/locale/cs_CZ/foreman_webhooks.js +238 -0
  4. data/app/assets/javascripts/foreman_webhooks/locale/de/foreman_webhooks.js +238 -0
  5. data/app/assets/javascripts/foreman_webhooks/locale/en/foreman_webhooks.js +262 -0
  6. data/app/assets/javascripts/foreman_webhooks/locale/en_GB/foreman_webhooks.js +238 -0
  7. data/app/assets/javascripts/foreman_webhooks/locale/es/foreman_webhooks.js +238 -0
  8. data/app/assets/javascripts/foreman_webhooks/locale/fr/foreman_webhooks.js +238 -0
  9. data/app/assets/javascripts/foreman_webhooks/locale/it/foreman_webhooks.js +238 -0
  10. data/app/assets/javascripts/foreman_webhooks/locale/ja/foreman_webhooks.js +238 -0
  11. data/app/assets/javascripts/foreman_webhooks/locale/ka/foreman_webhooks.js +238 -0
  12. data/app/assets/javascripts/foreman_webhooks/locale/ko/foreman_webhooks.js +238 -0
  13. data/app/assets/javascripts/foreman_webhooks/locale/pl/foreman_webhooks.js +238 -0
  14. data/app/assets/javascripts/foreman_webhooks/locale/pt_BR/foreman_webhooks.js +238 -0
  15. data/app/assets/javascripts/foreman_webhooks/locale/ru/foreman_webhooks.js +238 -0
  16. data/app/assets/javascripts/foreman_webhooks/locale/zh_CN/foreman_webhooks.js +238 -0
  17. data/app/assets/javascripts/foreman_webhooks/locale/zh_TW/foreman_webhooks.js +238 -0
  18. data/app/controllers/api/v2/webhooks_controller.rb +24 -1
  19. data/app/graphql/foreman_webhooks/types/webhook.rb +25 -0
  20. data/app/graphql/foreman_webhooks/types/webhook_template.rb +25 -0
  21. data/app/models/webhook.rb +18 -0
  22. data/app/models/webhook_template.rb +2 -0
  23. data/app/services/foreman_webhooks/webhook_service.rb +1 -1
  24. data/app/views/foreman_webhooks/webhook_templates/katello_-_promote.erb +1 -0
  25. data/app/views/foreman_webhooks/webhook_templates/katello_-_publish.erb +1 -0
  26. data/app/views/foreman_webhooks/webhook_templates/katello_-_repo_sync.erb +1 -0
  27. data/app/views/foreman_webhooks/webhook_templates/remote_execution_-_host_job.erb +0 -1
  28. data/config/routes.rb +3 -0
  29. data/lib/foreman_webhooks/engine.rb +9 -2
  30. data/lib/foreman_webhooks/version.rb +1 -1
  31. data/locale/ca/LC_MESSAGES/foreman_webhooks.mo +0 -0
  32. data/locale/ca/foreman_webhooks.po +237 -0
  33. data/locale/cs_CZ/LC_MESSAGES/foreman_webhooks.mo +0 -0
  34. data/locale/cs_CZ/foreman_webhooks.po +240 -0
  35. data/locale/de/LC_MESSAGES/foreman_webhooks.mo +0 -0
  36. data/locale/de/foreman_webhooks.po +244 -0
  37. data/locale/en/LC_MESSAGES/foreman_webhooks.mo +0 -0
  38. data/locale/en/foreman_webhooks.po +258 -0
  39. data/locale/en_GB/LC_MESSAGES/foreman_webhooks.mo +0 -0
  40. data/locale/en_GB/foreman_webhooks.po +239 -0
  41. data/locale/es/LC_MESSAGES/foreman_webhooks.mo +0 -0
  42. data/locale/es/foreman_webhooks.po +241 -0
  43. data/locale/fr/LC_MESSAGES/foreman_webhooks.mo +0 -0
  44. data/locale/fr/foreman_webhooks.po +241 -0
  45. data/locale/it/LC_MESSAGES/foreman_webhooks.mo +0 -0
  46. data/locale/it/foreman_webhooks.po +240 -0
  47. data/locale/ja/LC_MESSAGES/foreman_webhooks.mo +0 -0
  48. data/locale/ja/foreman_webhooks.po +240 -0
  49. data/locale/ka/LC_MESSAGES/foreman_webhooks.mo +0 -0
  50. data/locale/ka/foreman_webhooks.po +237 -0
  51. data/locale/ko/LC_MESSAGES/foreman_webhooks.mo +0 -0
  52. data/locale/ko/foreman_webhooks.po +238 -0
  53. data/locale/pl/LC_MESSAGES/foreman_webhooks.mo +0 -0
  54. data/locale/pl/foreman_webhooks.po +240 -0
  55. data/locale/pt_BR/LC_MESSAGES/foreman_webhooks.mo +0 -0
  56. data/locale/pt_BR/foreman_webhooks.po +241 -0
  57. data/locale/ru/LC_MESSAGES/foreman_webhooks.mo +0 -0
  58. data/locale/ru/foreman_webhooks.po +241 -0
  59. data/locale/zh_CN/LC_MESSAGES/foreman_webhooks.mo +0 -0
  60. data/locale/zh_CN/foreman_webhooks.po +240 -0
  61. data/locale/zh_TW/LC_MESSAGES/foreman_webhooks.mo +0 -0
  62. data/locale/zh_TW/foreman_webhooks.po +239 -0
  63. data/package.json +0 -3
  64. data/test/factories/webhook_template.rb +10 -0
  65. data/test/graphql/foreman_webhooks/queries/webhook_query_test.rb +59 -0
  66. data/test/graphql/foreman_webhooks/queries/webhook_template_query_test.rb +64 -0
  67. data/test/graphql/foreman_webhooks/queries/webhook_templates_query_test.rb +47 -0
  68. data/test/graphql/foreman_webhooks/queries/webhooks_query_test.rb +47 -0
  69. data/webpack/ForemanWebhooks/Routes/Webhooks/Components/WebhookForm/Components/WebhookFormTabs.js +19 -4
  70. data/webpack/ForemanWebhooks/Routes/Webhooks/Components/WebhookForm/WebhookFormSelectors.js +4 -5
  71. data/webpack/ForemanWebhooks/Routes/Webhooks/WebhooksIndexPage/Components/WebhookTestModal.js +100 -0
  72. data/webpack/ForemanWebhooks/Routes/Webhooks/WebhooksIndexPage/Components/WebhooksTable/Components/ActionButtons/ActionButton.js +40 -0
  73. data/webpack/ForemanWebhooks/Routes/Webhooks/WebhooksIndexPage/Components/WebhooksTable/Components/Formatters/actionCellFormatter.js +20 -0
  74. data/webpack/ForemanWebhooks/Routes/Webhooks/WebhooksIndexPage/Components/WebhooksTable/Components/Formatters/index.js +1 -0
  75. data/webpack/ForemanWebhooks/Routes/Webhooks/WebhooksIndexPage/Components/WebhooksTable/WebhooksTable.js +7 -3
  76. data/webpack/ForemanWebhooks/Routes/Webhooks/WebhooksIndexPage/Components/WebhooksTable/WebhooksTableSchema.js +3 -4
  77. data/webpack/ForemanWebhooks/Routes/Webhooks/WebhooksIndexPage/Components/WebhooksTable/__tests__/WebhooksTable.test.js +2 -0
  78. data/webpack/ForemanWebhooks/Routes/Webhooks/WebhooksIndexPage/Components/WebhooksTable/__tests__/__snapshots__/WebhooksTable.test.js.snap +32 -0
  79. data/webpack/ForemanWebhooks/Routes/Webhooks/WebhooksIndexPage/Components/WebhooksTable/index.js +23 -2
  80. data/webpack/ForemanWebhooks/Routes/Webhooks/WebhooksIndexPage/WebhooksIndexPage.js +3 -0
  81. data/webpack/ForemanWebhooks/Routes/Webhooks/constants.js +1 -0
  82. data/webpack/__mocks__/foremanReact/components/common/ActionButtons/ActionButtons.js +3 -0
  83. metadata +64 -4
  84. data/test/factories/webhook_target.rb +0 -9
@@ -6,7 +6,7 @@ module Api
6
6
  include Api::Version2
7
7
  include ForemanWebhooks::Controller::Parameters::Webhook
8
8
 
9
- before_action :find_resource, only: %i[show destroy]
9
+ before_action :find_resource, only: %i[show destroy test]
10
10
 
11
11
  api :GET, '/webhooks/', N_('List Webhooks')
12
12
  param_group :search_and_pagination, ::Api::V2::BaseController
@@ -70,6 +70,29 @@ module Api
70
70
  def events
71
71
  render json: Webhook.available_events.sort.map { |e| e.delete_suffix(Webhook::EVENT_POSTFIX) }.to_json
72
72
  end
73
+
74
+ api :POST, '/webhooks/:id/test', N_('Test a Webhook')
75
+ param :id, :identifier, required: true
76
+ param :payload, String, N_('Test payload will be sent as is. Cant be a JSON object')
77
+ def test
78
+ result = @webhook.test(payload: params[:payload])
79
+ if result[:status] == :success
80
+ respond_with @webhook, responder: ApiResponder, status: :ok
81
+ else
82
+ render_error('custom_error', status: :unprocessable_entity, locals: { message: result[:message] })
83
+ end
84
+ end
85
+
86
+ private
87
+
88
+ def action_permission
89
+ case params[:action]
90
+ when 'test'
91
+ 'edit'
92
+ else
93
+ super
94
+ end
95
+ end
73
96
  end
74
97
  end
75
98
  end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ForemanWebhooks
4
+ module Types
5
+ class Webhook < ::Types::BaseObject
6
+ model_class ::Webhook
7
+
8
+ description 'A Webhook'
9
+
10
+ global_id_field :id
11
+ timestamps
12
+ field :name, String
13
+ field :events, [String]
14
+ field :target_url, String
15
+ field :http_method, String
16
+ field :http_content_type, String
17
+ field :enabled, Boolean
18
+ field :verify_ssl, Boolean
19
+ field :ssl_ca_certs, String
20
+ field :user, String
21
+
22
+ belongs_to :webhook_template, Types::WebhookTemplate
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ForemanWebhooks
4
+ module Types
5
+ class WebhookTemplate < ::Types::BaseObject
6
+ model_class ::WebhookTemplate
7
+
8
+ description 'A Webhook Template'
9
+
10
+ global_id_field :id
11
+ timestamps
12
+ field :name, String
13
+ field :template, String
14
+ field :vendor, String
15
+ field :type, String
16
+ field :os_family, String
17
+ field :description, String
18
+ field :snippet, Boolean
19
+ field :locked, Boolean
20
+ field :default, Boolean
21
+
22
+ has_many :webhooks, Types::Webhook
23
+ end
24
+ end
25
+ end
@@ -9,6 +9,8 @@ class Webhook < ApplicationRecord
9
9
  friendly_id :name
10
10
  include Parameterizable::ByIdName
11
11
 
12
+ graphql_type 'ForemanWebhooks::Types::Webhook'
13
+
12
14
  EVENT_POSTFIX = ".#{Foreman::Observable::DEFAULT_NAMESPACE}"
13
15
 
14
16
  DEFAULT_PAYLOAD_TEMPLATE = 'Webhook Template - Payload Default'
@@ -77,6 +79,16 @@ class Webhook < ApplicationRecord
77
79
  )
78
80
  end
79
81
 
82
+ def test(payload: nil)
83
+ ForemanWebhooks::WebhookService.new(
84
+ webhook: self,
85
+ headers: rendered_headers(event, {}),
86
+ url: rendered_targed_url(event, {}),
87
+ event_name: event,
88
+ payload: test_payload(payload || '')
89
+ ).execute
90
+ end
91
+
80
92
  def ca_certs_store
81
93
  store = OpenSSL::X509::Store.new
82
94
  if ssl_ca_certs.blank?
@@ -132,4 +144,10 @@ class Webhook < ApplicationRecord
132
144
  source = Foreman::Renderer::Source::String.new(name: 'HTTP target URL template', content: target_url)
133
145
  render_source(source, event_name, payload)
134
146
  end
147
+
148
+ def test_payload(payload)
149
+ return payload if payload.is_a?(String)
150
+
151
+ payload.to_json
152
+ end
135
153
  end
@@ -8,6 +8,8 @@ class WebhookTemplate < Template
8
8
  friendly_id :name
9
9
  include Parameterizable::ByIdName
10
10
 
11
+ graphql_type 'ForemanWebhooks::Types::WebhookTemplate'
12
+
11
13
  class << self
12
14
  # we have to override the base_class because polymorphic associations does not detect it correctly, more details at
13
15
  # http://apidock.com/rails/ActiveRecord/Associations/ClassMethods/has_many#1010-Polymorphic-has-many-within-inherited-class-gotcha
@@ -21,7 +21,7 @@ module ForemanWebhooks
21
21
 
22
22
  {
23
23
  cert: OpenSSL::X509::Certificate.new(File.read(cert)),
24
- key: OpenSSL::PKey::RSA.new(File.read(hostprivkey)),
24
+ key: OpenSSL::PKey.read(File.read(hostprivkey)),
25
25
  ca_file: ca_cert
26
26
  }
27
27
  rescue StandardError => e
@@ -20,3 +20,4 @@ model: WebhookTemplate
20
20
  # Task ended at <%= @object.task.ended_at %>
21
21
  # Task resulted with <%= @object.task.result %>
22
22
  # Task state <%= @object.task.state %>
23
+ # Task action output <%= @object.task.action_continuous_output %>
@@ -21,3 +21,4 @@ model: WebhookTemplate
21
21
  # Task ended at <%= @object.task.ended_at %>
22
22
  # Task resulted with <%= @object.task.result %>
23
23
  # Task state <%= @object.task.state %>
24
+ # Task action output <%= @object.task.action_continuous_output %>
@@ -24,3 +24,4 @@ model: WebhookTemplate
24
24
  # Task ended at <%= @object.task.ended_at %>
25
25
  # Task resulted with <%= @object.task.result %>
26
26
  # Task state <%= @object.task.state %>
27
+ # Task action output <%= @object.task.action_continuous_output %>
@@ -18,4 +18,3 @@ model: WebhookTemplate
18
18
  # Task ended at <%= @object.task.ended_at %>
19
19
  # Task resulted with <%= @object.task.result %>
20
20
  # Task state <%= @object.task.state %>
21
- # Task action output <%= @object.task.action_continuous_output %>
data/config/routes.rb CHANGED
@@ -18,6 +18,9 @@ Rails.application.routes.draw do
18
18
  collection do
19
19
  get :events
20
20
  end
21
+ member do
22
+ post :test
23
+ end
21
24
  end
22
25
  resources :webhook_templates, except: %i[new edit] do
23
26
  member do
@@ -15,7 +15,8 @@ module ForemanWebhooks
15
15
 
16
16
  initializer 'foreman_webhooks.register_plugin', before: :finisher_hook do |_app|
17
17
  Foreman::Plugin.register :foreman_webhooks do
18
- requires_foreman '>= 3.3'
18
+ requires_foreman '>= 3.7'
19
+ register_gettext
19
20
 
20
21
  apipie_documented_controllers ["#{ForemanWebhooks::Engine.root}/app/controllers/api/v2/*.rb"]
21
22
  ApipieDSL.configuration.sections += ['webhooks']
@@ -32,7 +33,7 @@ module ForemanWebhooks
32
33
  permission :create_webhooks, { webhooks: %i[new create],
33
34
  'api/v2/webhooks': [:create] }, resource_type: 'Webhook'
34
35
  permission :edit_webhooks, { webhooks: %i[edit update],
35
- 'api/v2/webhooks': [:update] }, resource_type: 'Webhook'
36
+ 'api/v2/webhooks': %i[update test] }, resource_type: 'Webhook'
36
37
  permission :destroy_webhooks, { webhooks: [:destroy],
37
38
  'api/v2/webhooks': [:destroy] }, resource_type: 'Webhook'
38
39
  permission :view_webhook_templates, { webhook_templates: %i[index show auto_complete_search preview export],
@@ -76,6 +77,12 @@ module ForemanWebhooks
76
77
 
77
78
  # subscribe to all events
78
79
  subscribe(/.event.foreman$/, ::ForemanWebhooks::EventSubscriber)
80
+
81
+ register_graphql_query_field :webhook, 'ForemanWebhooks::Types::Webhook', :record_field
82
+ register_graphql_query_field :webhooks, 'ForemanWebhooks::Types::Webhook', :collection_field
83
+
84
+ register_graphql_query_field :webhook_template, 'ForemanWebhooks::Types::WebhookTemplate', :record_field
85
+ register_graphql_query_field :webhook_templates, 'ForemanWebhooks::Types::WebhookTemplate', :collection_field
79
86
  end
80
87
  end
81
88
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ForemanWebhooks
4
- VERSION = "3.1.1"
4
+ VERSION = "3.2.0"
5
5
  end
@@ -0,0 +1,237 @@
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_webhooks package.
4
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5
+ #
6
+ # Translators:
7
+ # Robert Antoni Buj i Gelonch <rbuj@fedoraproject.org>, 2023
8
+ #
9
+ #, fuzzy
10
+ msgid ""
11
+ msgstr ""
12
+ "Project-Id-Version: foreman_webhooks 3.2.0\n"
13
+ "Report-Msgid-Bugs-To: \n"
14
+ "PO-Revision-Date: 2023-06-05 12:44+0000\n"
15
+ "Last-Translator: Robert Antoni Buj i Gelonch <rbuj@fedoraproject.org>, 2023\n"
16
+ "Language-Team: Catalan (https://app.transifex.com/foreman/teams/114/ca/)\n"
17
+ "MIME-Version: 1.0\n"
18
+ "Content-Type: text/plain; charset=UTF-8\n"
19
+ "Content-Transfer-Encoding: 8bit\n"
20
+ "Language: ca\n"
21
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
22
+
23
+ msgid "Actions"
24
+ msgstr "Accions"
25
+
26
+ msgid "Additional"
27
+ msgstr ""
28
+
29
+ msgid "Authentication credentials"
30
+ msgstr ""
31
+
32
+ msgid "Authorize with Foreman client certificate and validate smart-proxy CA from Settings"
33
+ msgstr ""
34
+
35
+ msgid "Change the password"
36
+ msgstr ""
37
+
38
+ msgid "Clone a template"
39
+ msgstr ""
40
+
41
+ msgid "Confirm Webhook Deletion"
42
+ msgstr ""
43
+
44
+ msgid "Create Template"
45
+ msgstr ""
46
+
47
+ msgid "Create Webhook"
48
+ msgstr ""
49
+
50
+ msgid "Create a Webhook"
51
+ msgstr ""
52
+
53
+ msgid "Create a webhook template"
54
+ msgstr ""
55
+
56
+ msgid "Credentials"
57
+ msgstr ""
58
+
59
+ msgid "Delete"
60
+ msgstr "Suprimeix"
61
+
62
+ msgid "Delete a Webhook"
63
+ msgstr ""
64
+
65
+ msgid "Delete a webhook template"
66
+ msgstr ""
67
+
68
+ msgid "Deliver webhook"
69
+ msgstr ""
70
+
71
+ msgid "Deliver webhook %s"
72
+ msgstr ""
73
+
74
+ msgid "Edit"
75
+ msgstr "Edita"
76
+
77
+ msgid "Edit %s"
78
+ msgstr ""
79
+
80
+ msgid "Enabled"
81
+ msgstr ""
82
+
83
+ msgid "Error"
84
+ msgstr ""
85
+
86
+ msgid "Example: %s"
87
+ msgstr ""
88
+
89
+ msgid "Export a webhook template to ERB"
90
+ msgstr ""
91
+
92
+ msgid "General"
93
+ msgstr "General"
94
+
95
+ msgid "HTTP Content Type"
96
+ msgstr ""
97
+
98
+ msgid "HTTP Headers"
99
+ msgstr ""
100
+
101
+ msgid "HTTP Method"
102
+ msgstr ""
103
+
104
+ msgid "If unchecked, the webhook will be inactive"
105
+ msgstr ""
106
+
107
+ msgid "Import a webhook template"
108
+ msgstr ""
109
+
110
+ msgid "List Webhooks"
111
+ msgstr ""
112
+
113
+ msgid "List available events for subscription"
114
+ msgstr ""
115
+
116
+ msgid "List webhook templates"
117
+ msgstr ""
118
+
119
+ msgid "Name"
120
+ msgstr "Nom"
121
+
122
+ msgid "No Results"
123
+ msgstr ""
124
+
125
+ msgid "Optional CAs in PEM format concatenated to verify the receiver's SSL certificate"
126
+ msgstr ""
127
+
128
+ msgid "Optional. Must be a JSON object (ERB allowed)"
129
+ msgstr ""
130
+
131
+ msgid "Password"
132
+ msgstr ""
133
+
134
+ msgid "Proxy Authorization"
135
+ msgstr ""
136
+
137
+ msgid "Show Webhook details"
138
+ msgstr ""
139
+
140
+ msgid "Show webhook template details"
141
+ msgstr ""
142
+
143
+ msgid "Snippet"
144
+ msgstr ""
145
+
146
+ msgid "Start typing to search"
147
+ msgstr ""
148
+
149
+ msgid "Subscribe to"
150
+ msgstr ""
151
+
152
+ msgid "Target URL"
153
+ msgstr ""
154
+
155
+ msgid "Target URL that should be called by Foreman (ERB allowed)."
156
+ msgstr ""
157
+
158
+ msgid "Template"
159
+ msgstr ""
160
+
161
+ msgid "Template contents including metadata"
162
+ msgstr ""
163
+
164
+ msgid "Template name"
165
+ msgstr ""
166
+
167
+ msgid "This template is locked for editing."
168
+ msgstr ""
169
+
170
+ msgid "Try to create a new webhook"
171
+ msgstr ""
172
+
173
+ msgid "Type"
174
+ msgstr "Tipus"
175
+
176
+ msgid "URL must be valid and schema must be one of: %s"
177
+ msgstr ""
178
+
179
+ msgid "Uncheck this option to disable validation of the receiver's SSL certificate"
180
+ msgstr ""
181
+
182
+ msgid "Update a Webhook"
183
+ msgstr ""
184
+
185
+ msgid "Update a webhook template"
186
+ msgstr ""
187
+
188
+ msgid "User"
189
+ msgstr "Usuari"
190
+
191
+ msgid "Verify SSL"
192
+ msgstr ""
193
+
194
+ msgid "Webhook"
195
+ msgstr ""
196
+
197
+ msgid "Webhook %s was successfully deleted"
198
+ msgstr ""
199
+
200
+ msgid "Webhook Templates"
201
+ msgstr ""
202
+
203
+ msgid "Webhook was successfully created."
204
+ msgstr ""
205
+
206
+ msgid "Webhook was successfully updated."
207
+ msgstr ""
208
+
209
+ msgid "WebhookTemplate|Locked"
210
+ msgstr ""
211
+
212
+ msgid "WebhookTemplate|Name"
213
+ msgstr ""
214
+
215
+ msgid "WebhookTemplate|Snippet"
216
+ msgstr ""
217
+
218
+ msgid "Webhooks"
219
+ msgstr ""
220
+
221
+ msgid "Whether or not the template is added automatically to new organizations and locations"
222
+ msgstr ""
223
+
224
+ msgid "Whether or not the template is locked for editing"
225
+ msgstr ""
226
+
227
+ msgid "X509 Certification Authorities"
228
+ msgstr ""
229
+
230
+ msgid "X509 Certification Authorities concatenated in PEM format"
231
+ msgstr ""
232
+
233
+ msgid "You are about to delete %s. Are you sure?"
234
+ msgstr ""
235
+
236
+ msgid "is required"
237
+ msgstr ""
@@ -0,0 +1,240 @@
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_webhooks package.
4
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5
+ #
6
+ # Translators:
7
+ # mhulan <mhulan@redhat.com>, 2023
8
+ # Pavel Borecki <pavel.borecki@gmail.com>, 2023
9
+ #
10
+ #, fuzzy
11
+ msgid ""
12
+ msgstr ""
13
+ "Project-Id-Version: foreman_webhooks 3.2.0\n"
14
+ "Report-Msgid-Bugs-To: \n"
15
+ "PO-Revision-Date: 2023-06-05 12:44+0000\n"
16
+ "Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2023\n"
17
+ "Language-Team: Czech (Czech Republic) (https://app.transifex.com/foreman/teams"
18
+ "/114/cs_CZ/)\n"
19
+ "MIME-Version: 1.0\n"
20
+ "Content-Type: text/plain; charset=UTF-8\n"
21
+ "Content-Transfer-Encoding: 8bit\n"
22
+ "Language: cs_CZ\n"
23
+ "Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= "
24
+ "4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"
25
+
26
+ msgid "Actions"
27
+ msgstr "Akce"
28
+
29
+ msgid "Additional"
30
+ msgstr ""
31
+
32
+ msgid "Authentication credentials"
33
+ msgstr ""
34
+
35
+ msgid "Authorize with Foreman client certificate and validate smart-proxy CA from Settings"
36
+ msgstr ""
37
+
38
+ msgid "Change the password"
39
+ msgstr ""
40
+
41
+ msgid "Clone a template"
42
+ msgstr ""
43
+
44
+ msgid "Confirm Webhook Deletion"
45
+ msgstr ""
46
+
47
+ msgid "Create Template"
48
+ msgstr ""
49
+
50
+ msgid "Create Webhook"
51
+ msgstr ""
52
+
53
+ msgid "Create a Webhook"
54
+ msgstr ""
55
+
56
+ msgid "Create a webhook template"
57
+ msgstr ""
58
+
59
+ msgid "Credentials"
60
+ msgstr "Přihlašovací údaje"
61
+
62
+ msgid "Delete"
63
+ msgstr "Smazat"
64
+
65
+ msgid "Delete a Webhook"
66
+ msgstr ""
67
+
68
+ msgid "Delete a webhook template"
69
+ msgstr ""
70
+
71
+ msgid "Deliver webhook"
72
+ msgstr ""
73
+
74
+ msgid "Deliver webhook %s"
75
+ msgstr ""
76
+
77
+ msgid "Edit"
78
+ msgstr "Upravit"
79
+
80
+ msgid "Edit %s"
81
+ msgstr ""
82
+
83
+ msgid "Enabled"
84
+ msgstr "Zapnuto"
85
+
86
+ msgid "Error"
87
+ msgstr "Chyba"
88
+
89
+ msgid "Example: %s"
90
+ msgstr ""
91
+
92
+ msgid "Export a webhook template to ERB"
93
+ msgstr ""
94
+
95
+ msgid "General"
96
+ msgstr "Obecné"
97
+
98
+ msgid "HTTP Content Type"
99
+ msgstr ""
100
+
101
+ msgid "HTTP Headers"
102
+ msgstr ""
103
+
104
+ msgid "HTTP Method"
105
+ msgstr ""
106
+
107
+ msgid "If unchecked, the webhook will be inactive"
108
+ msgstr ""
109
+
110
+ msgid "Import a webhook template"
111
+ msgstr ""
112
+
113
+ msgid "List Webhooks"
114
+ msgstr ""
115
+
116
+ msgid "List available events for subscription"
117
+ msgstr ""
118
+
119
+ msgid "List webhook templates"
120
+ msgstr ""
121
+
122
+ msgid "Name"
123
+ msgstr "Název"
124
+
125
+ msgid "No Results"
126
+ msgstr ""
127
+
128
+ msgid "Optional CAs in PEM format concatenated to verify the receiver's SSL certificate"
129
+ msgstr ""
130
+
131
+ msgid "Optional. Must be a JSON object (ERB allowed)"
132
+ msgstr ""
133
+
134
+ msgid "Password"
135
+ msgstr ""
136
+
137
+ msgid "Proxy Authorization"
138
+ msgstr ""
139
+
140
+ msgid "Show Webhook details"
141
+ msgstr ""
142
+
143
+ msgid "Show webhook template details"
144
+ msgstr ""
145
+
146
+ msgid "Snippet"
147
+ msgstr ""
148
+
149
+ msgid "Start typing to search"
150
+ msgstr ""
151
+
152
+ msgid "Subscribe to"
153
+ msgstr ""
154
+
155
+ msgid "Target URL"
156
+ msgstr ""
157
+
158
+ msgid "Target URL that should be called by Foreman (ERB allowed)."
159
+ msgstr ""
160
+
161
+ msgid "Template"
162
+ msgstr ""
163
+
164
+ msgid "Template contents including metadata"
165
+ msgstr ""
166
+
167
+ msgid "Template name"
168
+ msgstr ""
169
+
170
+ msgid "This template is locked for editing."
171
+ msgstr ""
172
+
173
+ msgid "Try to create a new webhook"
174
+ msgstr ""
175
+
176
+ msgid "Type"
177
+ msgstr "Typ"
178
+
179
+ msgid "URL must be valid and schema must be one of: %s"
180
+ msgstr ""
181
+
182
+ msgid "Uncheck this option to disable validation of the receiver's SSL certificate"
183
+ msgstr ""
184
+
185
+ msgid "Update a Webhook"
186
+ msgstr ""
187
+
188
+ msgid "Update a webhook template"
189
+ msgstr ""
190
+
191
+ msgid "User"
192
+ msgstr "Uživatel"
193
+
194
+ msgid "Verify SSL"
195
+ msgstr "Ověřit SSL"
196
+
197
+ msgid "Webhook"
198
+ msgstr ""
199
+
200
+ msgid "Webhook %s was successfully deleted"
201
+ msgstr ""
202
+
203
+ msgid "Webhook Templates"
204
+ msgstr ""
205
+
206
+ msgid "Webhook was successfully created."
207
+ msgstr ""
208
+
209
+ msgid "Webhook was successfully updated."
210
+ msgstr ""
211
+
212
+ msgid "WebhookTemplate|Locked"
213
+ msgstr ""
214
+
215
+ msgid "WebhookTemplate|Name"
216
+ msgstr ""
217
+
218
+ msgid "WebhookTemplate|Snippet"
219
+ msgstr ""
220
+
221
+ msgid "Webhooks"
222
+ msgstr ""
223
+
224
+ msgid "Whether or not the template is added automatically to new organizations and locations"
225
+ msgstr ""
226
+
227
+ msgid "Whether or not the template is locked for editing"
228
+ msgstr ""
229
+
230
+ msgid "X509 Certification Authorities"
231
+ msgstr "X509 certifikační autority"
232
+
233
+ msgid "X509 Certification Authorities concatenated in PEM format"
234
+ msgstr ""
235
+
236
+ msgid "You are about to delete %s. Are you sure?"
237
+ msgstr ""
238
+
239
+ msgid "is required"
240
+ msgstr ""