blob: 7a1c1934926b9cd96163ff3fd9a2b2305bb3ccd7 [file] [log] [blame]
Neha Jainde45c682018-04-05 11:51:29 -04001#!/bin/bash
2
Mohammadreza Pasandidehb642ee52018-06-19 15:19:53 -04003# Copyright © 2018 Amdocs
4#
5# Licensed under the Apache License, Version 2.0 (the "License");
6# you may not use this file except in compliance with the License.
7# You may obtain a copy of the License at
8#
9# http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS,
13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16
Neha Jainde45c682018-04-05 11:51:29 -040017function usage()
18{
19 echo usage: switchVoting.sh primary\|secondary
20 exit 1
21}
22
23if [ $# -ne 1 ]; then
24 usage
25fi
26
Mohammadreza Pasandidehb642ee52018-06-19 15:19:53 -040027dir=$( dirname $0 )
28USERNAME=admin
29PASSWORD=`awk '/odlPassword/ {print $2}' $dir/../../../values.yaml | head -1`
Neha Jainde45c682018-04-05 11:51:29 -040030
Mohammadreza Pasandidehb642ee52018-06-19 15:19:53 -040031case "$1" in
32
33primary)
34 status=$(curl -u $USERNAME:$PASSWORD -o /dev/null -H "Content-Type: application/json" -H "Accept: application/json" -X POST http://localhost:30202/restconf/operations/cluster-admin:change-member-voting-states-for-all-shards -d '{ "input" : { "member-voting-state" : [ { "member-name" : "member-1", "voting":true}, { "member-name" : "member-2", "voting":true}, { "member-name" : "member-3", "voting":true},{ "member-name" : "member-4", "voting":false},{ "member-name" : "member-5", "voting":false},{ "member-name" : "member-6", "voting":false}] } }' -w "%{http_code}\n" $url 2> /dev/null)
35;;
36
37secondary)
38 status=$(curl -u $USERNAME:$PASSWORD -o /dev/null -H "Content-Type: application/json" -H "Accept: application/json" -X POST http://localhost:30202/restconf/operations/cluster-admin:change-member-voting-states-for-all-shards -d '{ "input" : { "member-voting-state" : [ { "member-name" : "member-1", "voting":false}, { "member-name" : "member-2", "voting":false}, { "member-name" : "member-3", "voting":false},{ "member-name" : "member-4", "voting":true},{ "member-name" : "member-5", "voting":true},{ "member-name" : "member-6", "voting":true}] } }' -w "%{http_code}\n" $url 2> /dev/null)
39;;
40
41*)
42 usage
43esac
44
45if [ $status -ne 200 ];then
46 echo "failure"
47else
48 echo "success"
Neha Jainde45c682018-04-05 11:51:29 -040049fi