#!/bin/bash # Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this code except in compliance # with the License. You may obtain a copy of the License # at http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or # implied. See the License for the specific language governing # permissions and limitations under the License. die() { echo "$@" 1>&2 exit 1 } export CFGDIR=/opt/app/pgaas if [ -d /opt/app/postgresql-9.5.2 ] then PGDIR=/opt/app/postgresql-9.5.2 elif [ -d /usr/lib/postgresql/9.6 ] then PGDIR=/usr/lib/postgresql/9.6 elif [ -d /usr/lib/postgresql/9.5 ] then PGDIR=/usr/lib/postgresql/9.5 else die PostgreSQL bin directory not found fi export PGDIR export DBROOT=/dbroot/pgdata/main export PATH=$PATH:/opt/app/pgaas/bin:/opt/app/pgaas/etc:/opt/app/cdf/bin:/opt/app/postgresql-config/etc clustertype=$( getpropvalue -n cluster ) PGNODES=$( getpropvalue -n pgnodes ) case $clustertype in central ) export MASTER=$( gen-repmgr-info -n "$PGNODES" -M "$master" ) ;; edge ) host=$( hostname -f ) export MASTER=$( gen-repmgr-info -n "$PGNODES" -C $host ) ;; esac [ -n "$CFGDIR" ] || die "CFGDIR is not set" [ -n "$MASTER" ] || die "MASTER is not set" [ -n "$PGDIR" ] || die "PGDIR is not set" [ -n "$DBROOT" ] || die "DBROOT is not set" # make certain that everything is down pkill repmgrd pkill repmgr pg_ctl_stop # reset the database to a fresh copy of what is on the master create-db-secondary