foreman_templates 10.0.1 → 10.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/foreman_templates/locale/cs_CZ/foreman_templates.js +34 -4
- data/app/assets/javascripts/foreman_templates/locale/de/foreman_templates.js +34 -4
- data/app/assets/javascripts/foreman_templates/locale/en_GB/foreman_templates.js +34 -4
- data/app/assets/javascripts/foreman_templates/locale/es/foreman_templates.js +34 -4
- data/app/assets/javascripts/foreman_templates/locale/fr/foreman_templates.js +34 -4
- data/app/assets/javascripts/foreman_templates/locale/gl/foreman_templates.js +34 -4
- data/app/assets/javascripts/foreman_templates/locale/it/foreman_templates.js +34 -4
- data/app/assets/javascripts/foreman_templates/locale/ja/foreman_templates.js +34 -4
- data/app/assets/javascripts/foreman_templates/locale/ka/foreman_templates.js +34 -4
- data/app/assets/javascripts/foreman_templates/locale/ko/foreman_templates.js +79 -49
- data/app/assets/javascripts/foreman_templates/locale/pt_BR/foreman_templates.js +34 -4
- data/app/assets/javascripts/foreman_templates/locale/ru/foreman_templates.js +34 -4
- data/app/assets/javascripts/foreman_templates/locale/sv_SE/foreman_templates.js +34 -4
- data/app/assets/javascripts/foreman_templates/locale/zh_CN/foreman_templates.js +34 -4
- data/app/assets/javascripts/foreman_templates/locale/zh_TW/foreman_templates.js +34 -4
- data/app/controllers/api/v2/template_controller.rb +3 -1
- data/app/controllers/concerns/foreman/controller/parameters/template_params.rb +1 -1
- data/app/controllers/ui_template_syncs_controller.rb +21 -1
- data/app/services/foreman_templates/action.rb +32 -1
- data/app/services/foreman_templates/parse_result.rb +10 -4
- data/app/services/foreman_templates/template_exporter.rb +2 -2
- data/app/services/foreman_templates/template_importer.rb +3 -3
- data/lib/foreman_templates/engine.rb +6 -0
- data/lib/foreman_templates/version.rb +1 -1
- data/lib/foreman_templates.rb +4 -0
- data/locale/cs_CZ/LC_MESSAGES/foreman_templates.mo +0 -0
- data/locale/cs_CZ/foreman_templates.po +34 -4
- data/locale/de/LC_MESSAGES/foreman_templates.mo +0 -0
- data/locale/de/foreman_templates.po +34 -4
- data/locale/en_GB/LC_MESSAGES/foreman_templates.mo +0 -0
- data/locale/en_GB/foreman_templates.po +34 -4
- data/locale/es/LC_MESSAGES/foreman_templates.mo +0 -0
- data/locale/es/foreman_templates.po +34 -4
- data/locale/fr/LC_MESSAGES/foreman_templates.mo +0 -0
- data/locale/fr/foreman_templates.po +34 -4
- data/locale/gl/LC_MESSAGES/foreman_templates.mo +0 -0
- data/locale/gl/foreman_templates.po +34 -4
- data/locale/it/LC_MESSAGES/foreman_templates.mo +0 -0
- data/locale/it/foreman_templates.po +34 -4
- data/locale/ja/LC_MESSAGES/foreman_templates.mo +0 -0
- data/locale/ja/foreman_templates.po +34 -4
- data/locale/ka/LC_MESSAGES/foreman_templates.mo +0 -0
- data/locale/ka/foreman_templates.po +34 -4
- data/locale/ko/LC_MESSAGES/foreman_templates.mo +0 -0
- data/locale/ko/foreman_templates.po +81 -49
- data/locale/pt_BR/LC_MESSAGES/foreman_templates.mo +0 -0
- data/locale/pt_BR/foreman_templates.po +34 -4
- data/locale/ru/LC_MESSAGES/foreman_templates.mo +0 -0
- data/locale/ru/foreman_templates.po +34 -4
- data/locale/sv_SE/LC_MESSAGES/foreman_templates.mo +0 -0
- data/locale/sv_SE/foreman_templates.po +34 -4
- data/locale/zh_CN/LC_MESSAGES/foreman_templates.mo +0 -0
- data/locale/zh_CN/foreman_templates.po +34 -4
- data/locale/zh_TW/LC_MESSAGES/foreman_templates.mo +0 -0
- data/locale/zh_TW/foreman_templates.po +34 -4
- data/webpack/components/NewTemplateSync/components/NewTemplateSyncForm/NewTemplateSyncFormHelpers.js +15 -3
- data/webpack/components/NewTemplateSync/components/ProxySettingField.js +44 -0
- data/webpack/components/NewTemplateSync/components/ProxySettingFields.js +82 -0
- data/webpack/components/NewTemplateSync/components/SyncSettingField.js +5 -12
- data/webpack/components/NewTemplateSync/components/SyncSettingFields.js +18 -0
- data/webpack/components/NewTemplateSync/components/__tests__/__snapshots__/SyncSettingField.test.js.snap +3 -3
- data/webpack/components/NewTemplateSync/components/__tests__/__snapshots__/SyncSettingFields.test.js.snap +14 -0
- metadata +4 -2
@@ -3,7 +3,7 @@
|
|
3
3
|
"locale_data": {
|
4
4
|
"foreman_templates": {
|
5
5
|
"": {
|
6
|
-
"Project-Id-Version": "foreman_templates 10.0.
|
6
|
+
"Project-Id-Version": "foreman_templates 10.0.3",
|
7
7
|
"Report-Msgid-Bugs-To": "",
|
8
8
|
"PO-Revision-Date": "2019-10-14 12:27+0000",
|
9
9
|
"Last-Translator": "johnny.westerlund <johnny.westerlund@gmail.com>, 2023",
|
@@ -47,6 +47,9 @@
|
|
47
47
|
"Commit message": [
|
48
48
|
""
|
49
49
|
],
|
50
|
+
"Custom HTTP proxy": [
|
51
|
+
""
|
52
|
+
],
|
50
53
|
"Custom commit message for templates export": [
|
51
54
|
""
|
52
55
|
],
|
@@ -56,6 +59,9 @@
|
|
56
59
|
"Default metadata export mode, refresh re-renders metadata, keep will keep existing metadata, remove exports template without metadata": [
|
57
60
|
""
|
58
61
|
],
|
62
|
+
"Directory within Git repo containing the templates.": [
|
63
|
+
""
|
64
|
+
],
|
59
65
|
"Dirname": [
|
60
66
|
""
|
61
67
|
],
|
@@ -71,9 +77,24 @@
|
|
71
77
|
"Force import": [
|
72
78
|
""
|
73
79
|
],
|
80
|
+
"Global default HTTP proxy": [
|
81
|
+
""
|
82
|
+
],
|
83
|
+
"HTTP proxy": [
|
84
|
+
""
|
85
|
+
],
|
86
|
+
"HTTP proxy policy": [
|
87
|
+
""
|
88
|
+
],
|
89
|
+
"HTTP proxy policy for template sync. If you choose 'selected', provide the `http_proxy_id` parameter.": [
|
90
|
+
""
|
91
|
+
],
|
74
92
|
"How to handle lock for imported templates?": [
|
75
93
|
""
|
76
94
|
],
|
95
|
+
"ID of an HTTP proxy to use for template sync. Use this parameter together with `'http_proxy_policy':'selected'`": [
|
96
|
+
""
|
97
|
+
],
|
77
98
|
"Import": [
|
78
99
|
"Importera"
|
79
100
|
],
|
@@ -89,6 +110,9 @@
|
|
89
110
|
"Initiate Import": [
|
90
111
|
""
|
91
112
|
],
|
113
|
+
"Invalid repo format, must start with one of: ": [
|
114
|
+
""
|
115
|
+
],
|
92
116
|
"Keep": [
|
93
117
|
""
|
94
118
|
],
|
@@ -125,6 +149,9 @@
|
|
125
149
|
"New": [
|
126
150
|
"Ny"
|
127
151
|
],
|
152
|
+
"No HTTP proxy": [
|
153
|
+
""
|
154
|
+
],
|
128
155
|
"Override the default repo from settings.": [
|
129
156
|
""
|
130
157
|
],
|
@@ -152,6 +179,12 @@
|
|
152
179
|
"Repo": [
|
153
180
|
""
|
154
181
|
],
|
182
|
+
"Select an HTTP proxy to use for template sync. You can add HTTP proxies on the Infrastructure > HTTP proxies page.": [
|
183
|
+
""
|
184
|
+
],
|
185
|
+
"Should an HTTP proxy be used for template sync? If you select Custom HTTP proxy, you will be prompted to select one.": [
|
186
|
+
""
|
187
|
+
],
|
155
188
|
"Should importing overwrite locked templates?": [
|
156
189
|
""
|
157
190
|
],
|
@@ -170,9 +203,6 @@
|
|
170
203
|
"Template Sync": [
|
171
204
|
""
|
172
205
|
],
|
173
|
-
"The directory within Git repo containing the templates": [
|
174
|
-
""
|
175
|
-
],
|
176
206
|
"The directory within the Git repo containing the templates": [
|
177
207
|
""
|
178
208
|
],
|
@@ -3,7 +3,7 @@
|
|
3
3
|
"locale_data": {
|
4
4
|
"foreman_templates": {
|
5
5
|
"": {
|
6
|
-
"Project-Id-Version": "foreman_templates 10.0.
|
6
|
+
"Project-Id-Version": "foreman_templates 10.0.3",
|
7
7
|
"Report-Msgid-Bugs-To": "",
|
8
8
|
"PO-Revision-Date": "2019-10-14 12:27+0000",
|
9
9
|
"Last-Translator": "Ewoud Kohl van Wijngaarden <ewoud+transifex@kohlvanwijngaarden.nl>, 2024",
|
@@ -47,6 +47,9 @@
|
|
47
47
|
"Commit message": [
|
48
48
|
"提交消息"
|
49
49
|
],
|
50
|
+
"Custom HTTP proxy": [
|
51
|
+
""
|
52
|
+
],
|
50
53
|
"Custom commit message for templates export": [
|
51
54
|
"模板导出的自定义提交消息"
|
52
55
|
],
|
@@ -56,6 +59,9 @@
|
|
56
59
|
"Default metadata export mode, refresh re-renders metadata, keep will keep existing metadata, remove exports template without metadata": [
|
57
60
|
"默认元数据导出模式,刷新后重新渲染元数据,保留将保留现有元数据,删除不包含元数据的导出模板"
|
58
61
|
],
|
62
|
+
"Directory within Git repo containing the templates.": [
|
63
|
+
""
|
64
|
+
],
|
59
65
|
"Dirname": [
|
60
66
|
"Dirname"
|
61
67
|
],
|
@@ -71,9 +77,24 @@
|
|
71
77
|
"Force import": [
|
72
78
|
"强制导入"
|
73
79
|
],
|
80
|
+
"Global default HTTP proxy": [
|
81
|
+
""
|
82
|
+
],
|
83
|
+
"HTTP proxy": [
|
84
|
+
""
|
85
|
+
],
|
86
|
+
"HTTP proxy policy": [
|
87
|
+
""
|
88
|
+
],
|
89
|
+
"HTTP proxy policy for template sync. If you choose 'selected', provide the `http_proxy_id` parameter.": [
|
90
|
+
""
|
91
|
+
],
|
74
92
|
"How to handle lock for imported templates?": [
|
75
93
|
"如何处理导入的模板锁定?"
|
76
94
|
],
|
95
|
+
"ID of an HTTP proxy to use for template sync. Use this parameter together with `'http_proxy_policy':'selected'`": [
|
96
|
+
""
|
97
|
+
],
|
77
98
|
"Import": [
|
78
99
|
"导入"
|
79
100
|
],
|
@@ -89,6 +110,9 @@
|
|
89
110
|
"Initiate Import": [
|
90
111
|
"启动导入"
|
91
112
|
],
|
113
|
+
"Invalid repo format, must start with one of: ": [
|
114
|
+
""
|
115
|
+
],
|
92
116
|
"Keep": [
|
93
117
|
"保持"
|
94
118
|
],
|
@@ -125,6 +149,9 @@
|
|
125
149
|
"New": [
|
126
150
|
"新"
|
127
151
|
],
|
152
|
+
"No HTTP proxy": [
|
153
|
+
""
|
154
|
+
],
|
128
155
|
"Override the default repo from settings.": [
|
129
156
|
"覆盖设置中的默认仓库。"
|
130
157
|
],
|
@@ -152,6 +179,12 @@
|
|
152
179
|
"Repo": [
|
153
180
|
"仓库"
|
154
181
|
],
|
182
|
+
"Select an HTTP proxy to use for template sync. You can add HTTP proxies on the Infrastructure > HTTP proxies page.": [
|
183
|
+
""
|
184
|
+
],
|
185
|
+
"Should an HTTP proxy be used for template sync? If you select Custom HTTP proxy, you will be prompted to select one.": [
|
186
|
+
""
|
187
|
+
],
|
155
188
|
"Should importing overwrite locked templates?": [
|
156
189
|
"是否应该导入覆盖锁定的模板?"
|
157
190
|
],
|
@@ -170,9 +203,6 @@
|
|
170
203
|
"Template Sync": [
|
171
204
|
"模板同步"
|
172
205
|
],
|
173
|
-
"The directory within Git repo containing the templates": [
|
174
|
-
"Git 仓库中包含模板的目录"
|
175
|
-
],
|
176
206
|
"The directory within the Git repo containing the templates": [
|
177
207
|
"Git 仓库中包含模板的目录"
|
178
208
|
],
|
@@ -3,7 +3,7 @@
|
|
3
3
|
"locale_data": {
|
4
4
|
"foreman_templates": {
|
5
5
|
"": {
|
6
|
-
"Project-Id-Version": "foreman_templates 10.0.
|
6
|
+
"Project-Id-Version": "foreman_templates 10.0.3",
|
7
7
|
"Report-Msgid-Bugs-To": "",
|
8
8
|
"PO-Revision-Date": "2019-10-14 12:27+0000",
|
9
9
|
"Last-Translator": "Bryan Kearney <bryan.kearney@gmail.com>, 2023",
|
@@ -47,6 +47,9 @@
|
|
47
47
|
"Commit message": [
|
48
48
|
""
|
49
49
|
],
|
50
|
+
"Custom HTTP proxy": [
|
51
|
+
""
|
52
|
+
],
|
50
53
|
"Custom commit message for templates export": [
|
51
54
|
""
|
52
55
|
],
|
@@ -56,6 +59,9 @@
|
|
56
59
|
"Default metadata export mode, refresh re-renders metadata, keep will keep existing metadata, remove exports template without metadata": [
|
57
60
|
""
|
58
61
|
],
|
62
|
+
"Directory within Git repo containing the templates.": [
|
63
|
+
""
|
64
|
+
],
|
59
65
|
"Dirname": [
|
60
66
|
""
|
61
67
|
],
|
@@ -71,9 +77,24 @@
|
|
71
77
|
"Force import": [
|
72
78
|
""
|
73
79
|
],
|
80
|
+
"Global default HTTP proxy": [
|
81
|
+
""
|
82
|
+
],
|
83
|
+
"HTTP proxy": [
|
84
|
+
""
|
85
|
+
],
|
86
|
+
"HTTP proxy policy": [
|
87
|
+
""
|
88
|
+
],
|
89
|
+
"HTTP proxy policy for template sync. If you choose 'selected', provide the `http_proxy_id` parameter.": [
|
90
|
+
""
|
91
|
+
],
|
74
92
|
"How to handle lock for imported templates?": [
|
75
93
|
""
|
76
94
|
],
|
95
|
+
"ID of an HTTP proxy to use for template sync. Use this parameter together with `'http_proxy_policy':'selected'`": [
|
96
|
+
""
|
97
|
+
],
|
77
98
|
"Import": [
|
78
99
|
"匯入"
|
79
100
|
],
|
@@ -89,6 +110,9 @@
|
|
89
110
|
"Initiate Import": [
|
90
111
|
""
|
91
112
|
],
|
113
|
+
"Invalid repo format, must start with one of: ": [
|
114
|
+
""
|
115
|
+
],
|
92
116
|
"Keep": [
|
93
117
|
""
|
94
118
|
],
|
@@ -125,6 +149,9 @@
|
|
125
149
|
"New": [
|
126
150
|
"新增"
|
127
151
|
],
|
152
|
+
"No HTTP proxy": [
|
153
|
+
""
|
154
|
+
],
|
128
155
|
"Override the default repo from settings.": [
|
129
156
|
""
|
130
157
|
],
|
@@ -152,6 +179,12 @@
|
|
152
179
|
"Repo": [
|
153
180
|
"軟體庫"
|
154
181
|
],
|
182
|
+
"Select an HTTP proxy to use for template sync. You can add HTTP proxies on the Infrastructure > HTTP proxies page.": [
|
183
|
+
""
|
184
|
+
],
|
185
|
+
"Should an HTTP proxy be used for template sync? If you select Custom HTTP proxy, you will be prompted to select one.": [
|
186
|
+
""
|
187
|
+
],
|
155
188
|
"Should importing overwrite locked templates?": [
|
156
189
|
""
|
157
190
|
],
|
@@ -170,9 +203,6 @@
|
|
170
203
|
"Template Sync": [
|
171
204
|
""
|
172
205
|
],
|
173
|
-
"The directory within Git repo containing the templates": [
|
174
|
-
""
|
175
|
-
],
|
176
206
|
"The directory within the Git repo containing the templates": [
|
177
207
|
""
|
178
208
|
],
|
@@ -12,7 +12,9 @@ module Api
|
|
12
12
|
param :repo, String, :required => false, :desc => N_("Override the default repo from settings.")
|
13
13
|
param :filter, String, :required => false, :desc => N_("Export templates with names matching this regex (case-insensitive; snippets are not filtered).")
|
14
14
|
param :negate, :bool, :required => false, :desc => N_("Negate the prefix (for purging).")
|
15
|
-
param :dirname, String, :required => false, :desc => N_("
|
15
|
+
param :dirname, String, :required => false, :desc => N_("Directory within Git repo containing the templates.")
|
16
|
+
param :http_proxy_policy, ForemanTemplates.http_proxy_policy_types.keys, :required => false, :desc => N_("HTTP proxy policy for template sync. If you choose 'selected', provide the `http_proxy_id` parameter.")
|
17
|
+
param :http_proxy_id, :number, :required => false, :desc => N_("ID of an HTTP proxy to use for template sync. Use this parameter together with `'http_proxy_policy':'selected'`")
|
16
18
|
end
|
17
19
|
|
18
20
|
api :POST, "/templates/import/", N_("Initiate Import")
|
@@ -7,7 +7,7 @@ module Foreman
|
|
7
7
|
|
8
8
|
class_methods do
|
9
9
|
def filter_params_list
|
10
|
-
%i(verbose repo branch dirname filter negate metadata_export_mode)
|
10
|
+
%i(verbose repo branch dirname filter negate metadata_export_mode http_proxy_policy http_proxy_id)
|
11
11
|
end
|
12
12
|
|
13
13
|
def extra_import_params
|
@@ -49,6 +49,26 @@ class UITemplateSyncsController < ApplicationController
|
|
49
49
|
private
|
50
50
|
|
51
51
|
def setting_definitions(short_names)
|
52
|
-
short_names.map { |name| Foreman.settings.find("template_sync_#{name}") }
|
52
|
+
settings = short_names.map { |name| Foreman.settings.find("template_sync_#{name}") }
|
53
|
+
proxy_policy_setting = Foreman.settings.find('template_sync_http_proxy_policy').dup
|
54
|
+
proxy_id_setting = http_proxy_id_setting
|
55
|
+
# if default value is 'Custom HTTP proxy' but there is no proxy to select, value must be changed
|
56
|
+
proxy_policy_setting.value = proxy_policy_setting.default = 'none' if proxy_id_setting.value == '' && proxy_policy_setting.value == 'selected'
|
57
|
+
settings << proxy_policy_setting
|
58
|
+
settings << proxy_id_setting
|
59
|
+
settings
|
60
|
+
end
|
61
|
+
|
62
|
+
def http_proxy_id_setting
|
63
|
+
proxy_list = HttpProxy.authorized(:view_http_proxies).with_taxonomy_scope.each_with_object({}) { |proxy, hash| hash[proxy.id] = proxy.name }
|
64
|
+
default_proxy_id = proxy_list.keys.first || ""
|
65
|
+
OpenStruct.new(id: 'template_sync_http_proxy_id',
|
66
|
+
name: 'template_sync_http_proxy_id',
|
67
|
+
description: N_('Select an HTTP proxy to use for template sync. You can add HTTP proxies on the Infrastructure > HTTP proxies page.'),
|
68
|
+
settings_type: :string,
|
69
|
+
value: default_proxy_id,
|
70
|
+
default: default_proxy_id,
|
71
|
+
full_name: N_('HTTP proxy'),
|
72
|
+
select_values: proxy_list)
|
53
73
|
end
|
54
74
|
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'securerandom'
|
2
|
+
|
1
3
|
module ForemanTemplates
|
2
4
|
class Action
|
3
5
|
delegate :logger, :to => :Rails
|
@@ -15,7 +17,7 @@ module ForemanTemplates
|
|
15
17
|
end
|
16
18
|
|
17
19
|
def self.setting_overrides
|
18
|
-
%i(verbose prefix dirname filter repo negate branch)
|
20
|
+
%i(verbose prefix dirname filter repo negate branch http_proxy_policy)
|
19
21
|
end
|
20
22
|
|
21
23
|
def method_missing(method, *args, &block)
|
@@ -53,9 +55,38 @@ module ForemanTemplates
|
|
53
55
|
private
|
54
56
|
|
55
57
|
def assign_attributes(args = {})
|
58
|
+
@http_proxy_id = args[:http_proxy_id]
|
56
59
|
self.class.setting_overrides.each do |attribute|
|
57
60
|
instance_variable_set("@#{attribute}", args[attribute.to_sym] || Setting["template_sync_#{attribute}".to_sym])
|
58
61
|
end
|
59
62
|
end
|
63
|
+
|
64
|
+
protected
|
65
|
+
|
66
|
+
def init_git_repo
|
67
|
+
git_repo = Git.init(@dir)
|
68
|
+
|
69
|
+
case @http_proxy_policy
|
70
|
+
when 'global'
|
71
|
+
http_proxy_url = Setting[:http_proxy]
|
72
|
+
when 'selected'
|
73
|
+
http_proxy = HttpProxy.authorized(:view_http_proxies).with_taxonomy_scope.find(@http_proxy_id)
|
74
|
+
http_proxy_url = http_proxy.full_url
|
75
|
+
|
76
|
+
if URI(http_proxy_url).scheme == 'https' && http_proxy.cacert.present?
|
77
|
+
proxy_cert = "#{@dir}/.git/foreman_templates_proxy_cert_#{SecureRandom.hex(8)}.crt"
|
78
|
+
File.write(proxy_cert, http_proxy.cacert)
|
79
|
+
git_repo.config('http.proxySSLCAInfo', proxy_cert)
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
if http_proxy_url.present?
|
84
|
+
git_repo.config('http.proxy', http_proxy_url)
|
85
|
+
end
|
86
|
+
|
87
|
+
git_repo.add_remote('origin', @repo)
|
88
|
+
logger.debug "cloned '#{@repo}' to '#{@dir}'"
|
89
|
+
git_repo
|
90
|
+
end
|
60
91
|
end
|
61
92
|
end
|
@@ -16,7 +16,7 @@ module ForemanTemplates
|
|
16
16
|
:additional_errors => @additional_errors,
|
17
17
|
:additional_info => @additional_info,
|
18
18
|
:exception => @exception&.message,
|
19
|
-
:validation_errors =>
|
19
|
+
:validation_errors => transformed_errors,
|
20
20
|
:file => @template_file,
|
21
21
|
:type => @template.present? ? @template.class.name.underscore : nil
|
22
22
|
}
|
@@ -27,9 +27,7 @@ module ForemanTemplates
|
|
27
27
|
end
|
28
28
|
|
29
29
|
def errors
|
30
|
-
@template&.errors
|
31
|
-
v.join(', ')
|
32
|
-
end
|
30
|
+
@template&.errors
|
33
31
|
end
|
34
32
|
|
35
33
|
def corrupted_metadata
|
@@ -99,5 +97,13 @@ module ForemanTemplates
|
|
99
97
|
nil
|
100
98
|
end
|
101
99
|
end
|
100
|
+
|
101
|
+
private
|
102
|
+
|
103
|
+
def transformed_errors
|
104
|
+
return {} unless errors
|
105
|
+
|
106
|
+
errors.to_hash.transform_values(&:last)
|
107
|
+
end
|
102
108
|
end
|
103
109
|
end
|
@@ -31,8 +31,8 @@ module ForemanTemplates
|
|
31
31
|
@dir = Dir.mktmpdir
|
32
32
|
return if branch_missing?
|
33
33
|
|
34
|
-
git_repo =
|
35
|
-
|
34
|
+
git_repo = init_git_repo
|
35
|
+
git_repo.fetch
|
36
36
|
|
37
37
|
setup_git_branch git_repo
|
38
38
|
dump_files!
|
@@ -32,9 +32,9 @@ module ForemanTemplates
|
|
32
32
|
@dir = Dir.mktmpdir
|
33
33
|
|
34
34
|
begin
|
35
|
-
|
36
|
-
gitrepo
|
37
|
-
if @branch
|
35
|
+
gitrepo = init_git_repo
|
36
|
+
gitrepo.fetch
|
37
|
+
if @branch.present?
|
38
38
|
logger.debug "checking out branch '#{@branch}'"
|
39
39
|
gitrepo.checkout(@branch)
|
40
40
|
end
|
@@ -94,6 +94,12 @@ module ForemanTemplates
|
|
94
94
|
description: N_('Custom commit message for templates export'),
|
95
95
|
default: 'Templates export made by a Foreman user',
|
96
96
|
full_name: N_('Commit message'))
|
97
|
+
setting('template_sync_http_proxy_policy',
|
98
|
+
type: :string,
|
99
|
+
description: N_('Should an HTTP proxy be used for template sync? If you select Custom HTTP proxy, you will be prompted to select one.'),
|
100
|
+
default: 'global',
|
101
|
+
full_name: N_('HTTP proxy policy'),
|
102
|
+
collection: -> { ForemanTemplates.http_proxy_policy_types })
|
97
103
|
end
|
98
104
|
end
|
99
105
|
|
data/lib/foreman_templates.rb
CHANGED
@@ -16,4 +16,8 @@ module ForemanTemplates
|
|
16
16
|
def self.metadata_export_mode_types
|
17
17
|
{ 'refresh' => _('Refresh'), 'keep' => _('Keep'), 'remove' => _('Remove') }
|
18
18
|
end
|
19
|
+
|
20
|
+
def self.http_proxy_policy_types
|
21
|
+
{ 'global' => _('Global default HTTP proxy'), 'none' => _('No HTTP proxy'), 'selected' => _('Custom HTTP proxy') }
|
22
|
+
end
|
19
23
|
end
|
Binary file
|
@@ -8,7 +8,7 @@
|
|
8
8
|
#
|
9
9
|
msgid ""
|
10
10
|
msgstr ""
|
11
|
-
"Project-Id-Version: foreman_templates 10.0.
|
11
|
+
"Project-Id-Version: foreman_templates 10.0.3\n"
|
12
12
|
"Report-Msgid-Bugs-To: \n"
|
13
13
|
"PO-Revision-Date: 2019-10-14 12:27+0000\n"
|
14
14
|
"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>, 2023\n"
|
@@ -51,6 +51,9 @@ msgstr ""
|
|
51
51
|
msgid "Commit message"
|
52
52
|
msgstr ""
|
53
53
|
|
54
|
+
msgid "Custom HTTP proxy"
|
55
|
+
msgstr ""
|
56
|
+
|
54
57
|
msgid "Custom commit message for templates export"
|
55
58
|
msgstr ""
|
56
59
|
|
@@ -60,6 +63,9 @@ msgstr "Výchozí větev v Git repozitáři"
|
|
60
63
|
msgid "Default metadata export mode, refresh re-renders metadata, keep will keep existing metadata, remove exports template without metadata"
|
61
64
|
msgstr ""
|
62
65
|
|
66
|
+
msgid "Directory within Git repo containing the templates."
|
67
|
+
msgstr ""
|
68
|
+
|
63
69
|
msgid "Dirname"
|
64
70
|
msgstr ""
|
65
71
|
|
@@ -75,9 +81,24 @@ msgstr ""
|
|
75
81
|
msgid "Force import"
|
76
82
|
msgstr "Vynutit import"
|
77
83
|
|
84
|
+
msgid "Global default HTTP proxy"
|
85
|
+
msgstr ""
|
86
|
+
|
87
|
+
msgid "HTTP proxy"
|
88
|
+
msgstr ""
|
89
|
+
|
90
|
+
msgid "HTTP proxy policy"
|
91
|
+
msgstr ""
|
92
|
+
|
93
|
+
msgid "HTTP proxy policy for template sync. If you choose 'selected', provide the `http_proxy_id` parameter."
|
94
|
+
msgstr ""
|
95
|
+
|
78
96
|
msgid "How to handle lock for imported templates?"
|
79
97
|
msgstr ""
|
80
98
|
|
99
|
+
msgid "ID of an HTTP proxy to use for template sync. Use this parameter together with `'http_proxy_policy':'selected'`"
|
100
|
+
msgstr ""
|
101
|
+
|
81
102
|
msgid "Import"
|
82
103
|
msgstr "Import"
|
83
104
|
|
@@ -93,6 +114,9 @@ msgstr "Zahájit export"
|
|
93
114
|
msgid "Initiate Import"
|
94
115
|
msgstr "Zahájit import"
|
95
116
|
|
117
|
+
msgid "Invalid repo format, must start with one of: "
|
118
|
+
msgstr ""
|
119
|
+
|
96
120
|
msgid "Keep"
|
97
121
|
msgstr "Ponechat"
|
98
122
|
|
@@ -129,6 +153,9 @@ msgstr "Nikdy"
|
|
129
153
|
msgid "New"
|
130
154
|
msgstr "Nové"
|
131
155
|
|
156
|
+
msgid "No HTTP proxy"
|
157
|
+
msgstr ""
|
158
|
+
|
132
159
|
msgid "Override the default repo from settings."
|
133
160
|
msgstr ""
|
134
161
|
|
@@ -156,6 +183,12 @@ msgstr "Odebrat"
|
|
156
183
|
msgid "Repo"
|
157
184
|
msgstr "Repozitář"
|
158
185
|
|
186
|
+
msgid "Select an HTTP proxy to use for template sync. You can add HTTP proxies on the Infrastructure > HTTP proxies page."
|
187
|
+
msgstr ""
|
188
|
+
|
189
|
+
msgid "Should an HTTP proxy be used for template sync? If you select Custom HTTP proxy, you will be prompted to select one."
|
190
|
+
msgstr ""
|
191
|
+
|
159
192
|
msgid "Should importing overwrite locked templates?"
|
160
193
|
msgstr ""
|
161
194
|
|
@@ -174,9 +207,6 @@ msgstr ""
|
|
174
207
|
msgid "Template Sync"
|
175
208
|
msgstr ""
|
176
209
|
|
177
|
-
msgid "The directory within Git repo containing the templates"
|
178
|
-
msgstr ""
|
179
|
-
|
180
210
|
msgid "The directory within the Git repo containing the templates"
|
181
211
|
msgstr ""
|
182
212
|
|
Binary file
|
@@ -13,7 +13,7 @@
|
|
13
13
|
#
|
14
14
|
msgid ""
|
15
15
|
msgstr ""
|
16
|
-
"Project-Id-Version: foreman_templates 10.0.
|
16
|
+
"Project-Id-Version: foreman_templates 10.0.3\n"
|
17
17
|
"Report-Msgid-Bugs-To: \n"
|
18
18
|
"PO-Revision-Date: 2019-10-14 12:27+0000\n"
|
19
19
|
"Last-Translator: pdolinic, 2023\n"
|
@@ -54,6 +54,9 @@ msgstr "Wählen Sie die Ausführlichkeit für Importvorlagen für Rake-Aufgaben"
|
|
54
54
|
msgid "Commit message"
|
55
55
|
msgstr ""
|
56
56
|
|
57
|
+
msgid "Custom HTTP proxy"
|
58
|
+
msgstr ""
|
59
|
+
|
57
60
|
msgid "Custom commit message for templates export"
|
58
61
|
msgstr ""
|
59
62
|
|
@@ -63,6 +66,9 @@ msgstr "Standard-Branch im Git-Repository"
|
|
63
66
|
msgid "Default metadata export mode, refresh re-renders metadata, keep will keep existing metadata, remove exports template without metadata"
|
64
67
|
msgstr "Standard-Metadaten-Exportmodus, Aktualisieren, rendert Metadaten neu, behält vorhandene Metadaten bei, entfernt Exportvorlagen ohne Metadaten"
|
65
68
|
|
69
|
+
msgid "Directory within Git repo containing the templates."
|
70
|
+
msgstr ""
|
71
|
+
|
66
72
|
msgid "Dirname"
|
67
73
|
msgstr "Dirname"
|
68
74
|
|
@@ -78,9 +84,24 @@ msgstr "Filter"
|
|
78
84
|
msgid "Force import"
|
79
85
|
msgstr "Import erzwingen"
|
80
86
|
|
87
|
+
msgid "Global default HTTP proxy"
|
88
|
+
msgstr ""
|
89
|
+
|
90
|
+
msgid "HTTP proxy"
|
91
|
+
msgstr ""
|
92
|
+
|
93
|
+
msgid "HTTP proxy policy"
|
94
|
+
msgstr ""
|
95
|
+
|
96
|
+
msgid "HTTP proxy policy for template sync. If you choose 'selected', provide the `http_proxy_id` parameter."
|
97
|
+
msgstr ""
|
98
|
+
|
81
99
|
msgid "How to handle lock for imported templates?"
|
82
100
|
msgstr ""
|
83
101
|
|
102
|
+
msgid "ID of an HTTP proxy to use for template sync. Use this parameter together with `'http_proxy_policy':'selected'`"
|
103
|
+
msgstr ""
|
104
|
+
|
84
105
|
msgid "Import"
|
85
106
|
msgstr "Importieren"
|
86
107
|
|
@@ -96,6 +117,9 @@ msgstr "Export initiieren"
|
|
96
117
|
msgid "Initiate Import"
|
97
118
|
msgstr "Import einleiten"
|
98
119
|
|
120
|
+
msgid "Invalid repo format, must start with one of: "
|
121
|
+
msgstr ""
|
122
|
+
|
99
123
|
msgid "Keep"
|
100
124
|
msgstr "Behalten"
|
101
125
|
|
@@ -132,6 +156,9 @@ msgstr "Nie"
|
|
132
156
|
msgid "New"
|
133
157
|
msgstr "Neu"
|
134
158
|
|
159
|
+
msgid "No HTTP proxy"
|
160
|
+
msgstr ""
|
161
|
+
|
135
162
|
msgid "Override the default repo from settings."
|
136
163
|
msgstr "Überschreiben Sie das Standard-Repository aus den Einstellungen."
|
137
164
|
|
@@ -159,6 +186,12 @@ msgstr "Entfernen"
|
|
159
186
|
msgid "Repo"
|
160
187
|
msgstr "Repository"
|
161
188
|
|
189
|
+
msgid "Select an HTTP proxy to use for template sync. You can add HTTP proxies on the Infrastructure > HTTP proxies page."
|
190
|
+
msgstr ""
|
191
|
+
|
192
|
+
msgid "Should an HTTP proxy be used for template sync? If you select Custom HTTP proxy, you will be prompted to select one."
|
193
|
+
msgstr ""
|
194
|
+
|
162
195
|
msgid "Should importing overwrite locked templates?"
|
163
196
|
msgstr "Sollen beim Importieren gesperrte Vorlagen überschrieben werden?"
|
164
197
|
|
@@ -177,9 +210,6 @@ msgstr ""
|
|
177
210
|
msgid "Template Sync"
|
178
211
|
msgstr ""
|
179
212
|
|
180
|
-
msgid "The directory within Git repo containing the templates"
|
181
|
-
msgstr "Das Verzeichnis im Git-Repository, das die Vorlagen enthält"
|
182
|
-
|
183
213
|
msgid "The directory within the Git repo containing the templates"
|
184
214
|
msgstr "Das Verzeichnis im Git-Repository, das die Vorlagen enthält"
|
185
215
|
|
Binary file
|