#!/bin/sh # Ce script génère juste du SQL permettant, à partir # du résultat du script multi-pg, de renommer l'utilisateur # de l'instance en instance_admin et de lui donner les # droits nécessaires au bon fonctionnement de phppgadmin, # et de créer un utilisateur instance avec des droits # encore plus limités (pas de modif de la structure, seulement # select,insert,update,delete et gestion des séquences) # # TODO: message d'aide pour les arguments: # script.sh nom_instance ancien_mot_de_passe # TODO 2: essayer d'éviter le mot de passe dans la ligne de commande :-( set -e # Arguments: # $1 : Nom de la bdd / de l'utilisateur # $2 : mot de passe de l'utilisateur # $3 : nom de l'utilisateur dédié à la réplication # $4 : mot de passe dudit utilisateur generate_script_postgresql_creation_db_et_user() { local NOM_INSTANCE POSTGRESQL_PASSWORD ADMIN_PASSWORD test -n "$1" && test -n "$2" && test -n "$3" || exit 1 NOM_INSTANCE="$1" POSTGRESQL_PASSWORD="$2" ADMIN_PASSWORD="$3" ADMIN_USERNAME="$NOM_INSTANCE""_admin" cat </dev/null bs=1 count=10 status=noxfer | base64 | sed 's#[/=]##g' ) generate_script_postgresql_creation_db_et_user "$NOM_INSTANCE" "$POSTGRESQL_PASSWORD" "$ADMIN_PASSWORD"