summaryrefslogtreecommitdiff
path: root/services/applications/ipam.cf
blob: 067cb299878396699d8e1876149573d65470c54d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
bundle agent ipam
{
    vars:
        ipam::
            "config[host]" string => "mysql01";
            "config[user]" string => "phpipam";
            "config[pass]" string => "Hee0Hai8lie2gaaBia8xaisieSiengie";
            "config[name]" string => "phpipam";
            "config[port]" string => "3306";
            "index" slist => getindices("ipam.config");
            "packages" slist => {
                "pear",
                "php56-filter",
                "php56-gettext",
                "php56-gd",
                "php56-gmp",
                "php56-json",
                "php56-mbstring",
                "php56-openssl",
                "php56-pdo_mysql",
                "php56-session",
                "php56-simplexml",
                "php56-sockets",
            };
    methods:
        ipam::
            "ipam"  usebundle => install_package("$(this.bundle)", "$(ipam.packages)");
            "ipam"  usebundle => fcgiwrap("nobody", "www", "770");
            "ipam"  usebundle => php56();
            "ipam"  usebundle => nginx("$(sys.inputdir)/templates/nginx/ipam_nginx.conf", "nginx.conf");
    files:
        ipam::
            "/var/www/phpipam/config.php"
                create => "true",
                perms => system_owned("444"),
                edit_line => regex_replace("\$db\['$(index)'\]\s+=\s+\"(?!$(config[$(index)]))[^\"]+\";", "$db['$(index)'] = \"$(config[$(index)])\";"),
                classes => if_repaired("ipam_ipam_config_php_repaired");
    reports:
        any::
            "$(this.bundle): /var/www/phpipam/config.php repaired" ifvarclass => "ipam_ipam_config_php_repaired";
}