blob: 076f1ea35feab31722d419f4e7dfcf9d10b47fdc [file] [log] [blame]
Neha Jainde45c682018-04-05 11:51:29 -04001#!/bin/bash
Jakub Latuseke0e8ca72020-10-21 13:36:29 +02002{{/*
Neha Jainde45c682018-04-05 11:51:29 -04003
Mohammadreza Pasandidehb642ee52018-06-19 15:19:53 -04004# Copyright © 2018 Amdocs
5#
6# Licensed under the Apache License, Version 2.0 (the "License");
7# you may not use this file except in compliance with the License.
8# You may obtain a copy of the License at
9#
10# http://www.apache.org/licenses/LICENSE-2.0
11#
12# Unless required by applicable law or agreed to in writing, software
13# distributed under the License is distributed on an "AS IS" BASIS,
14# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15# See the License for the specific language governing permissions and
16# limitations under the License.
Jakub Latuseke0e8ca72020-10-21 13:36:29 +020017*/}}
Mohammadreza Pasandidehb642ee52018-06-19 15:19:53 -040018
Neha Jainde45c682018-04-05 11:51:29 -040019function usage()
20{
21 echo usage: switchVoting.sh primary\|secondary
22 exit 1
23}
24
25if [ $# -ne 1 ]; then
26 usage
27fi
28
Mohammadreza Pasandidehb642ee52018-06-19 15:19:53 -040029dir=$( dirname $0 )
30USERNAME=admin
31PASSWORD=`awk '/odlPassword/ {print $2}' $dir/../../../values.yaml | head -1`
Neha Jainde45c682018-04-05 11:51:29 -040032
Mohammadreza Pasandidehb642ee52018-06-19 15:19:53 -040033case "$1" in
34
35primary)
36 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)
37;;
38
39secondary)
40 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)
41;;
42
43*)
44 usage
45esac
46
47if [ $status -ne 200 ];then
48 echo "failure"
49else
50 echo "success"
Neha Jainde45c682018-04-05 11:51:29 -040051fi