forked from decred/politeia
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcachesetup.sh
executable file
·61 lines (48 loc) · 1.92 KB
/
cachesetup.sh
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
#!/usr/bin/env bash
# This script sets up the CockroachDB databases and users for the Politeia
# cache. This script requires that you have already created all the necessary
# CockroachDB certificates using the cachecerts.sh script and that you have a
# CockroachDB instance listening on the default port localhost:26257.
set -ex
# CERTS_DIR must contain client.root.crt, client.root.key, and ca.crt for the
# CockroachDB instance.
readonly CERTS_DIR=$1
# Database names.
readonly DB_MAINNET="records_mainnet"
readonly DB_TESTNET="records_testnet3"
# Database user names.
readonly USER_POLITEIAD="records_politeiad"
readonly USER_POLITEIAWWW="records_politeiawww"
if [ "${CERTS_DIR}" == "" ]; then
>&2 echo "Error: missing argument root user certs directory"
exit
fi
# Create the mainnet and testnet databases for the politeiad records cache.
cockroach sql \
--certs-dir="${CERTS_DIR}" \
--execute "CREATE DATABASE IF NOT EXISTS ${DB_MAINNET}"
cockroach sql \
--certs-dir="${CERTS_DIR}" \
--execute "CREATE DATABASE IF NOT EXISTS ${DB_TESTNET}"
# Create the politeiad user and assign privileges.
cockroach sql \
--certs-dir="${CERTS_DIR}" \
--execute "CREATE USER IF NOT EXISTS ${USER_POLITEIAD}"
cockroach sql \
--certs-dir="${CERTS_DIR}" \
--execute "GRANT CREATE, SELECT, DROP, INSERT, DELETE, UPDATE \
ON DATABASE ${DB_MAINNET} TO ${USER_POLITEIAD}"
cockroach sql \
--certs-dir="${CERTS_DIR}" \
--execute "GRANT CREATE, SELECT, DROP, INSERT, DELETE, UPDATE \
ON DATABASE ${DB_TESTNET} TO ${USER_POLITEIAD}"
# Create politeiawww user and assign privileges.
cockroach sql \
--certs-dir="${CERTS_DIR}" \
--execute "CREATE USER IF NOT EXISTS ${USER_POLITEIAWWW}"
cockroach sql \
--certs-dir="${CERTS_DIR}" \
--execute "GRANT SELECT ON DATABASE ${DB_MAINNET} TO ${USER_POLITEIAWWW}"
cockroach sql \
--certs-dir="${CERTS_DIR}" \
--execute "GRANT SELECT ON DATABASE ${DB_TESTNET} TO ${USER_POLITEIAWWW}"