Skip to content

Commit 9b23988

Browse files
committed
Fixed missing item when syncing templates
1 parent 1aa215e commit 9b23988

File tree

4 files changed

+12
-1
lines changed

4 files changed

+12
-1
lines changed

lib/puppet/provider/zabbix_template/ruby.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,8 @@ def create
5151
updateExisting: true
5252
},
5353
templateLinkage: {
54-
createMissing: true
54+
createMissing: true,
55+
deleteMissing: (@resource[:delete_missing_linkage].nil? ? false : @resource[:delete_missing_linkage])
5556
},
5657
templates: {
5758
createMissing: true,

lib/puppet/type/zabbix_template.rb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,10 @@ def change_to_s(currentvalue, newvalue)
6666
desc 'Delete items from zabbix which are not in the template.'
6767
end
6868

69+
newparam(:delete_missing_linkage, boolean: true) do
70+
desc 'Delete linked templates when they are no longer present.'
71+
end
72+
6973
newparam(:delete_missing_templatescreens, boolean: true) do
7074
desc 'Delete templateScreens from zabbix which are not in the template.'
7175
end

manifests/resources/template.pp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
# @param delete_missing_graphs Deletes graphs from zabbix that are not in the template when set to true
99
# @param delete_missing_httptests Deletes web-scenarios from zabbix that are not in the template when set to true
1010
# @param delete_missing_items Deletes items from zabbix that are not in the template when set to true
11+
# @param delete_missing_linkage Delete linked templates when they are no longer present
1112
# @param delete_missing_templatescreens Deletes template-screens from zabbix that are not in the template when set to true
1213
# @param delete_missing_triggers Deletes triggers from zabbix that are not in the template when set to true
1314
define zabbix::resources::template (
@@ -20,6 +21,7 @@
2021
Boolean $delete_missing_graphs = false,
2122
Boolean $delete_missing_httptests = false,
2223
Boolean $delete_missing_items = false,
24+
Boolean $delete_missing_linkage = false,
2325
Boolean $delete_missing_templatescreens = false,
2426
Boolean $delete_missing_triggers = false,
2527
) {
@@ -39,6 +41,7 @@
3941
delete_missing_graphs => $delete_missing_graphs,
4042
delete_missing_httptests => $delete_missing_httptests,
4143
delete_missing_items => $delete_missing_items,
44+
delete_missing_linkage => $delete_missing_linkage,
4245
delete_missing_templatescreens => $delete_missing_templatescreens,
4346
delete_missing_triggers => $delete_missing_triggers,
4447
}

manifests/template.pp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
# @param delete_missing_graphs Deletes graphs from zabbix that are not in the template when set to true
88
# @param delete_missing_httptests Deletes web-scenarios from zabbix that are not in the template when set to true
99
# @param delete_missing_items Deletes items from zabbix that are not in the template when set to true
10+
# @param delete_missing_linkage Delete linked templates when they are no longer present
1011
# @param delete_missing_templatescreens Deletes template-screens from zabbix that are not in the template when set to true
1112
# @param delete_missing_triggers Deletes triggers from zabbix that are not in the template when set to true
1213
# @example
@@ -23,6 +24,7 @@
2324
Boolean $delete_missing_graphs = false,
2425
Boolean $delete_missing_httptests = false,
2526
Boolean $delete_missing_items = false,
27+
Boolean $delete_missing_linkage = false,
2628
Boolean $delete_missing_templatescreens = false,
2729
Boolean $delete_missing_triggers = false,
2830
) {
@@ -35,6 +37,7 @@
3537
delete_missing_graphs => $delete_missing_graphs,
3638
delete_missing_httptests => $delete_missing_httptests,
3739
delete_missing_items => $delete_missing_items,
40+
delete_missing_linkage => $delete_missing_linkage,
3841
delete_missing_templatescreens => $delete_missing_templatescreens,
3942
delete_missing_triggers => $delete_missing_triggers,
4043
}

0 commit comments

Comments
 (0)