summaryrefslogtreecommitdiff
path: root/odb-examples/database-options.testscript
blob: db93b45af78121092784b68eaea0c0a7ec4d34c5 (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
140
141
142
143
144
145
146
147
148
# file      : database-options.testscript
# license   : GNU GPL v2; see accompanying LICENSE file

# For the enabled databases create the example driver option lists (*_options)
# for subsequent use in the examples. Also create the database-specific client
# option lists (*_client_options) and command lines (*_client_cmd) which can
# be used as a base for the data manipulation commands.
#
+if $mysql
   mysql_options = --user $config.odb_examples.mysql.user \
                   --database $config.odb_examples.mysql.database

   mysql_client_options = --user $config.odb_examples.mysql.user \
                          --database $config.odb_examples.mysql.database

   if $defined(config.odb_examples.mysql.passwd)
     mysql_options        += --password $config.odb_examples.mysql.passwd
     mysql_client_options += --password=$config.odb_examples.mysql.passwd
   end

   if $defined(config.odb_examples.mysql.host)
     mysql_options        += --host $config.odb_examples.mysql.host
     mysql_client_options += --host $config.odb_examples.mysql.host
   end

   if $defined(config.odb_examples.mysql.port)
     mysql_options        += --port $config.odb_examples.mysql.port
     mysql_client_options += --port $config.odb_examples.mysql.port
   end

   if $defined(config.odb_examples.mysql.socket)
     mysql_options        += --socket $config.odb_examples.mysql.socket
     mysql_client_options += --socket $config.odb_examples.mysql.socket
   end

   mysql_client_cmd = $path($mysql_client) $mysql_client_options
end

+if $sqlite
  sqlite_options = --database odb-test.db

  # Note that we currently don't manipulate the data using the sqlite3
  # utility. Thus, we don't create the sqlite client option list and command
  # line.
  #
end

+if $pgsql
   pgsql_options = --user $config.odb_examples.pgsql.user \
                   --database $config.odb_examples.pgsql.database

   pgsql_client_options = --quiet \
                          --set ON_ERROR_STOP=1 \
                          --username $config.odb_examples.pgsql.user \
                          --dbname $config.odb_examples.pgsql.database

  if $defined(config.odb_examples.pgsql.host)
    pgsql_options        += --host $config.odb_examples.pgsql.host
    pgsql_client_options += --host $config.odb_examples.pgsql.host
  end

  if $defined(config.odb_examples.pgsql.port)
    pgsql_options        += --port $config.odb_examples.pgsql.port
    pgsql_client_options += --port $config.odb_examples.pgsql.port
  end

  pgsql_client_cmd = $path($pgsql_client) $pgsql_client_options

  export PGOPTIONS=--client-min-messages=warning
end

+if $oracle
   oracle_options = --user $config.odb_examples.oracle.user

   oracle_client_options = -L -S
   oracle_logon = $config.odb_examples.oracle.user

   if $defined(config.odb_examples.oracle.passwd)
     oracle_options += --password $config.odb_examples.oracle.passwd
     oracle_logon = "$oracle_logon/$config.odb_examples.oracle.passwd"
   end

   if ($defined(config.odb_examples.oracle.host) || \
       $defined(config.odb_examples.oracle.port))
     if $defined(config.odb_examples.oracle.host)
       oracle_options += --host $config.odb_examples.oracle.host
       oracle_logon = "$oracle_logon@//$config.odb_examples.oracle.host"
     else
       oracle_logon = "$oracle_logon@//localhost"
     end

     if $defined(config.odb_examples.oracle.port)
       oracle_options += --port $config.odb_examples.oracle.port
       oracle_logon = "$oracle_logon:$config.odb_examples.oracle.port"
     end

     if $defined(config.odb_examples.oracle.service)
       oracle_options += --service $config.odb_examples.oracle.service
       oracle_logon = "$oracle_logon/$config.odb_examples.oracle.service"
     end
   elif $defined(config.odb_examples.oracle.service)
     oracle_options += --service $config.odb_examples.oracle.service
     oracle_logon = "$oracle_logon@$config.odb_examples.oracle.service"
   end

   oracle_client_cmd = $path($oracle_client) $oracle_client_options $oracle_logon
end

+if $mssql
   mssql_options = --user $config.odb_examples.mssql.user \
                   --database $config.odb_examples.mssql.database

   mssql_client_options = -C -x -r 1 -b \
                          -U $config.odb_examples.mssql.user \
                          -d $config.odb_examples.mssql.database

   if $defined(config.odb_examples.mssql.passwd)
     mssql_options        += --password $config.odb_examples.mssql.passwd
     mssql_client_options += -P $config.odb_examples.mssql.passwd
   end

   if ($defined(config.odb_examples.mssql.host) || \
       $defined(config.odb_examples.mssql.port))
     mssql_server = \
       "tcp:($defined(config.odb_examples.mssql.host) ? $config.odb_examples.mssql.host : localhost)"

     if $defined(config.odb_examples.mssql.port)
       mssql_server = "$mssql_server,$config.odb_examples.mssql.port"
     end
   elif $defined(config.odb_examples.mssql.server)
     mssql_server = $config.odb_examples.mssql.server
   else
     mssql_server = [null]
   end

   if ($mssql_server != [null])
     mssql_options        += --server $mssql_server
     mssql_client_options += -S $mssql_server
   end

   if ($defined(config.odb_examples.mssql.driver)  && \
       $config.odb_examples.mssql.driver != [null] && \
       $config.odb_examples.mssql.driver != '')
     mssql_options += --driver $config.odb_examples.mssql.driver
   end

   mssql_client_cmd = $path($mssql_client) $mssql_client_options
end