| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- #!/bin/bash
- set -e
- # set eggdrop user name and password
- USER="eggdrop"
- PASSWORD="eggdropPassword"
- # set database schema and table name
- SCHEMA="test"
- TABLE="funmatch"
- # add eggdrop user
- psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" \
- <<-EOSQL
- CREATE SCHEMA ${SCHEMA};
- CREATE USER ${USER} PASSWORD '${PASSWORD}';
- EOSQL
- # create a new table for the eggdrop user
- psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" \
- <<-EOSQL
- CREATE TABLE ${SCHEMA}.${TABLE}(
- id SERIAL PRIMARY KEY,
- date DATE NOT NULL DEFAULT CURRENT_DATE,
- time TIME NOT NULL,
- xonx INTEGER NOT NULL,
- clantag VARCHAR (16) NOT NULL,
- irc VARCHAR (16) NOT NULL,
- www VARCHAR (256) NOT NULL,
- server VARCHAR (256) NOT NULL,
- org VARCHAR (128) NOT NULL
- );
- EOSQL
- # insert some testing data into new table
- psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" \
- <<-EOSQL
- INSERT INTO ${SCHEMA}.${TABLE} (time, xonx, clantag, irc, www, server, org)
- VALUES
- ('18:30', 8, '[WIN]', '#win', 'www.winclan.com', 'et.winclan.com:1337',
- 'winrar'),
- ('19:30', 16, '[FAIL]', '#fail', 'www.failclan.com', 'et.failclan.com:7331',
- 'failbot'),
- ('20:30', 32, '<unknown>', '#unknown', 'www.unknownclan.com',
- 'et.unknownclan.com:3000', 'incognito');
- EOSQL
- # make sure the eggdrop user can access the new table
- psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" \
- <<-EOSQL
- GRANT ALL ON SCHEMA ${SCHEMA} TO ${USER};
- GRANT ALL ON ALL TABLES IN SCHEMA ${SCHEMA} TO ${USER};
- EOSQL
|