summaryrefslogtreecommitdiff
path: root/populate-ldap/10c-run-vlv-index-tasks.sh
blob: 5efceb124fc425d6c4cced04725737669c520066 (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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
#!/bin/bash

 . ./settings.sh

(
    echo "dn: cn=PVI,cn=index,cn=tasks,cn=config"
    echo "objectclass: top"
    echo "objectclass: extensibleObject"
    echo "cn: PVI"
    echo "nsinstance: ${domain_db}"
    echo "nsIndexVLVAttribute: PVI"
    echo ""
) | ldapmodify -a -x -h ${ldap_host} -D "${ldap_binddn}" -w "${ldap_bindpw}" -c

ldap_complete=0

while [ ${ldap_complete} -ne 1 ]; do
    result=$(
            ldapsearch \
                -x \
                -h ${ldap_host} \
                -D "${ldap_binddn}" \
                -w "${ldap_bindpw}" \
                -c \
                -LLL \
                -b "cn=PVI,cn=index,cn=tasks,cn=config" \
                -s base 2>/dev/null
        )
    if [ -z "$result" ]; then
        ldap_complete=1
        echo ""
    else
        echo -n "."
        sleep 1
    fi
done

(
    echo "dn: cn=RVI,cn=index,cn=tasks,cn=config"
    echo "objectclass: top"
    echo "objectclass: extensibleObject"
    echo "cn: RVI"
    echo "nsinstance: ${domain_db}"
    echo "nsIndexVLVAttribute: RVI"
    echo ""
) | ldapmodify -a -x -h ${ldap_host} -D "${ldap_binddn}" -w "${ldap_bindpw}" -c

ldap_complete=0

while [ ${ldap_complete} -ne 1 ]; do
    result=$(
            ldapsearch \
                -x \
                -h ${ldap_host} \
                -D "${ldap_binddn}" \
                -w "${ldap_bindpw}" \
                -c \
                -LLL \
                -b "cn=RVI,cn=index,cn=tasks,cn=config" \
                -s base 2>/dev/null
        )
    if [ -z "$result" ]; then
        ldap_complete=1
        echo ""
    else
        echo -n "."
        sleep 1
    fi
done



(
    echo "dn: cn=GVI,cn=index,cn=tasks,cn=config"
    echo "objectclass: top"
    echo "objectclass: extensibleObject"
    echo "cn: GVI"
    echo "nsinstance: ${domain_db}"
    echo "nsIndexVLVAttribute: GVI"
    echo ""
) | ldapmodify -a -x -h ${ldap_host} -D "${ldap_binddn}" -w "${ldap_bindpw}" -c

ldap_complete=0

while [ ${ldap_complete} -ne 1 ]; do
    result=$(
            ldapsearch \
                -x \
                -h ${ldap_host} \
                -D "${ldap_binddn}" \
                -w "${ldap_bindpw}" \
                -c \
                -LLL \
                -b "cn=GVI,cn=index,cn=tasks,cn=config" \
                -s base 2>/dev/null
        )
    if [ -z "$result" ]; then
        ldap_complete=1
        echo ""
    else
        echo -n "."
        sleep 1
    fi
done

if [ "${domain_base_dn}" != "cn=kolab,cn=config" ]; then
    (
        echo "dn: cn=DVI,cn=index,cn=tasks,cn=config"
        echo "objectclass: top"
        echo "objectclass: extensibleObject"
        echo "cn: DVI"
        echo "nsinstance: ${domain_db}"
        echo "nsIndexVLVAttribute: DVI"
        echo ""
    ) | ldapmodify -a -x -h ${ldap_host} -D "${ldap_binddn}" -w "${ldap_bindpw}" -c

    ldap_complete=0

    while [ ${ldap_complete} -ne 1 ]; do
        result=$(
                ldapsearch \
                    -x \
                    -h ${ldap_host} \
                    -D "${ldap_binddn}" \
                    -w "${ldap_bindpw}" \
                    -c \
                    -LLL \
                    -b "cn=DVI,cn=index,cn=tasks,cn=config" \
                    -s base 2>/dev/null
            )
        if [ -z "$result" ]; then
            ldap_complete=1
            echo ""
        else
            echo -n "."
            sleep 1
        fi
    done
fi