aboutsummaryrefslogtreecommitdiffstats
path: root/kubernetes/common/mariadb-init/tests/configmap_test.yaml
blob: 34914cdb3ea7e406856f60efd6f2ff0a2b841ab7 (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
---
suite: test configmap behavior
templates:
  - configmap.yaml
tests:
  - it: "should render with default value"
    asserts:
      - isKind:
          of: ConfigMap
      - equal:
          path: metadata.name
          value: RELEASE-NAME-mariadb-init
      - equal:
          path: metadata.namespace
          value: NAMESPACE
      - matchRegex:
          path: metadata.labels.app
          pattern: mariadb-init
      - equal:
          path: data
          value:
            db_init.sh: |
              #!/bin/sh
              # Copyright © 2019 Orange
              #
              # Licensed under the Apache License, Version 2.0 (the "License");
              # you may not use this file except in compliance with the License.
              # You may obtain a copy of the License at
              #
              #       http://www.apache.org/licenses/LICENSE-2.0
              #
              # Unless required by applicable law or agreed to in writing, software
              # distributed under the License is distributed on an "AS IS" BASIS,
              # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
              # See the License for the specific language governing permissions and
              # limitations under the License.

              echo "Creating database ynsaUCru6mUNwGal and user u5WZ1GMSIS1wHZF..."

              mysql -h ${DB_HOST} -P ${DB_PORT} -uroot -p$MYSQL_ROOT_PASSWORD << 'EOF' || exit 1
              CREATE OR REPLACE USER 'u5WZ1GMSIS1wHZF'@'localhost' IDENTIFIED BY '${MYSQL_PASSWORD}';
              CREATE OR REPLACE USER 'u5WZ1GMSIS1wHZF'@'%' IDENTIFIED BY '${MYSQL_PASSWORD}';
              CREATE DATABASE IF NOT EXISTS ynsaUCru6mUNwGal;
              GRANT ALL PRIVILEGES ON ynsaUCru6mUNwGal.* TO 'u5WZ1GMSIS1wHZF'@'%';
              GRANT ALL PRIVILEGES ON ynsaUCru6mUNwGal.* TO 'u5WZ1GMSIS1wHZF'@'localhost';
              EOF

              echo "Created database ynsaUCru6mUNwGal and user u5WZ1GMSIS1wHZF."
  - it: "shoud render with other databases"
    set:
      config:
        userName: testUser
        mysqlDatabase: testDB
        mysqlAdditionalDatabases:
          dbOne:
            user: one
            password: pwd1
          dbTwo:
            user: two
            password: pwd2
    asserts:
      - equal:
          path: data
          value:
            db_init.sh: |
              #!/bin/sh
              # Copyright © 2019 Orange
              #
              # Licensed under the Apache License, Version 2.0 (the "License");
              # you may not use this file except in compliance with the License.
              # You may obtain a copy of the License at
              #
              #       http://www.apache.org/licenses/LICENSE-2.0
              #
              # Unless required by applicable law or agreed to in writing, software
              # distributed under the License is distributed on an "AS IS" BASIS,
              # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
              # See the License for the specific language governing permissions and
              # limitations under the License.

              echo "Creating database testDB and user testUser..."

              mysql -h ${DB_HOST} -P ${DB_PORT} -uroot -p$MYSQL_ROOT_PASSWORD << 'EOF' || exit 1
              CREATE OR REPLACE USER 'testUser'@'localhost' IDENTIFIED BY '${MYSQL_PASSWORD}';
              CREATE OR REPLACE USER 'testUser'@'%' IDENTIFIED BY '${MYSQL_PASSWORD}';
              CREATE DATABASE IF NOT EXISTS testDB;
              GRANT ALL PRIVILEGES ON testDB.* TO 'testUser'@'%';
              GRANT ALL PRIVILEGES ON testDB.* TO 'testUser'@'localhost';
              EOF

              echo "Created database testDB and user testUser."

              echo "Creating database dbOne and user one..."

              mysql -h ${DB_HOST} -P ${DB_PORT} -uroot -p$MYSQL_ROOT_PASSWORD << 'EOF' || exit 1
              CREATE OR REPLACE USER 'one'@'localhost' IDENTIFIED BY '${MYSQL_PASSWORD_DBONE}';
              CREATE OR REPLACE USER 'one'@'%' IDENTIFIED BY '${MYSQL_PASSWORD_DBONE}';
              CREATE DATABASE IF NOT EXISTS dbOne;
              GRANT ALL PRIVILEGES ON dbOne.* TO 'one'@'%';
              GRANT ALL PRIVILEGES ON dbOne.* TO 'one'@'localhost';
              EOF

              echo "Created database dbOne and user one."
              echo "Creating database dbTwo and user two..."

              mysql -h ${DB_HOST} -P ${DB_PORT} -uroot -p$MYSQL_ROOT_PASSWORD << 'EOF' || exit 1
              CREATE OR REPLACE USER 'two'@'localhost' IDENTIFIED BY '${MYSQL_PASSWORD_DBTWO}';
              CREATE OR REPLACE USER 'two'@'%' IDENTIFIED BY '${MYSQL_PASSWORD_DBTWO}';
              CREATE DATABASE IF NOT EXISTS dbTwo;
              GRANT ALL PRIVILEGES ON dbTwo.* TO 'two'@'%';
              GRANT ALL PRIVILEGES ON dbTwo.* TO 'two'@'localhost';
              EOF

              echo "Created database dbTwo and user two."