Skip to content

Commit 1843579

Browse files
committed
add scripts/funwar_initdb.sh
Add the shell script funwar_initdb.sh for initializing an example postgres database for the funwar.tcl script. Signed-off-by: hwipl <[email protected]>
1 parent ecd7ca5 commit 1843579

File tree

1 file changed

+53
-0
lines changed

1 file changed

+53
-0
lines changed

scripts/funwar_initdb.sh

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
#!/bin/bash
2+
set -e
3+
4+
# set eggdrop user name and password
5+
USER="eggdrop"
6+
PASSWORD="eggdropPassword"
7+
8+
# set database schema and table name
9+
SCHEMA="test"
10+
TABLE="funmatch"
11+
12+
# add eggdrop user
13+
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" \
14+
<<-EOSQL
15+
CREATE SCHEMA ${SCHEMA};
16+
CREATE USER ${USER} PASSWORD '${PASSWORD}';
17+
EOSQL
18+
19+
# create a new table for the eggdrop user
20+
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" \
21+
<<-EOSQL
22+
CREATE TABLE ${SCHEMA}.${TABLE}(
23+
id SERIAL PRIMARY KEY,
24+
date DATE NOT NULL DEFAULT CURRENT_DATE,
25+
time TIME NOT NULL,
26+
xonx INTEGER NOT NULL,
27+
clantag VARCHAR (16) NOT NULL,
28+
irc VARCHAR (16) NOT NULL,
29+
www VARCHAR (256) NOT NULL,
30+
server VARCHAR (256) NOT NULL,
31+
org VARCHAR (128) NOT NULL
32+
);
33+
EOSQL
34+
35+
# insert some testing data into new table
36+
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" \
37+
<<-EOSQL
38+
INSERT INTO ${SCHEMA}.${TABLE} (time, xonx, clantag, irc, www, server, org)
39+
VALUES
40+
('18:30', 8, '[WIN]', '#win', 'www.winclan.com', 'et.winclan.com:1337',
41+
'winrar'),
42+
('19:30', 16, '[FAIL]', '#fail', 'www.failclan.com', 'et.failclan.com:7331',
43+
'failbot'),
44+
('20:30', 32, '<unknown>', '#unknown', 'www.unknownclan.com',
45+
'et.unknownclan.com:3000', 'incognito');
46+
EOSQL
47+
48+
# make sure the eggdrop user can access the new table
49+
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" \
50+
<<-EOSQL
51+
GRANT ALL ON SCHEMA ${SCHEMA} TO ${USER};
52+
GRANT ALL ON ALL TABLES IN SCHEMA ${SCHEMA} TO ${USER};
53+
EOSQL

0 commit comments

Comments
 (0)