]> git.proxmox.com Git - pmg-api.git/blame - tests/print_testdb.pl
fix #2276: restore line format for pmg-log-tracker
[pmg-api.git] / tests / print_testdb.pl
CommitLineData
656e5dba
DM
1#!/usr/bin/perl
2
3use strict;
4use warnings;
5use DBI;
7f0a6c36 6use lib '..';
656e5dba
DM
7
8use PVE::SafeSyslog;
9
10use PMG::DBTools;
11use PMG::RuleDB;
12
13initlog($0, 'mail');
14
15my $dbh = PMG::DBTools::open_ruledb("Proxmox_testdb");
16my $ruledb = PMG::RuleDB->new($dbh);
17
18# print settings
19
20sub print_objects {
21 my ($og) = @_;
22
23 my $objects = $ruledb->load_group_objects($og->{id});
24
25 foreach my $obj (@$objects) {
26 my $desc = $obj->short_desc();
27 print " OBJECT $obj->{id}: $desc\n";
28 }
29}
30
31sub print_rule {
32 my $rule = shift;
33
34 print "Found RULE $rule->{id}: $rule->{name}\n";
35
36 my ($from, $to, $when, $what, $action) =
37 $ruledb->load_groups($rule);
38
39 foreach my $og (@$from) {
40 print " FOUND FROM GROUP $og->{id}: $og->{name}\n";
41 print_objects($og);
42 }
43 foreach my $og (@$to) {
44 print " FOUND TO GROUP $og->{id}: $og->{name}\n";
45 print_objects($og);
46 }
47 foreach my $og (@$when) {
48 print " FOUND WHEN GROUP $og->{id}: $og->{name}\n";
49 print_objects($og);
50 }
51 foreach my $og (@$what) {
52 print " FOUND WHAT GROUP $og->{id}: $og->{name}\n";
53 print_objects($og);
54 }
55 foreach my $og (@$action) {
56 print " FOUND ACTION GROUP $og->{id}: $og->{name}\n";
57 print_objects($og);
58 }
59}
60
61my $rules = $ruledb->load_rules();
62
63foreach my $rule (@$rules) {
64 print_rule $rule;
65}
66
67
68$ruledb->close();
69
70exit (0);