Neha Jain | de45c68 | 2018-04-05 11:51:29 -0400 | [diff] [blame] | 1 | #!/bin/bash |
Jakub Latusek | e0e8ca7 | 2020-10-21 13:36:29 +0200 | [diff] [blame] | 2 | {{/* |
Neha Jain | de45c68 | 2018-04-05 11:51:29 -0400 | [diff] [blame] | 3 | |
Mohammadreza Pasandideh | b642ee5 | 2018-06-19 15:19:53 -0400 | [diff] [blame] | 4 | # 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 Latusek | e0e8ca7 | 2020-10-21 13:36:29 +0200 | [diff] [blame] | 17 | */}} |
Mohammadreza Pasandideh | b642ee5 | 2018-06-19 15:19:53 -0400 | [diff] [blame] | 18 | |
Guillaume Lambert | 785bc38 | 2021-03-09 21:41:30 +0100 | [diff] [blame^] | 19 | usage () |
Neha Jain | de45c68 | 2018-04-05 11:51:29 -0400 | [diff] [blame] | 20 | { |
| 21 | echo usage: switchVoting.sh primary\|secondary |
| 22 | exit 1 |
| 23 | } |
| 24 | |
| 25 | if [ $# -ne 1 ]; then |
| 26 | usage |
| 27 | fi |
| 28 | |
Mohammadreza Pasandideh | b642ee5 | 2018-06-19 15:19:53 -0400 | [diff] [blame] | 29 | dir=$( dirname $0 ) |
| 30 | USERNAME=admin |
| 31 | PASSWORD=`awk '/odlPassword/ {print $2}' $dir/../../../values.yaml | head -1` |
Neha Jain | de45c68 | 2018-04-05 11:51:29 -0400 | [diff] [blame] | 32 | |
Mohammadreza Pasandideh | b642ee5 | 2018-06-19 15:19:53 -0400 | [diff] [blame] | 33 | case "$1" in |
| 34 | |
| 35 | primary) |
| 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 | |
| 39 | secondary) |
| 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 |
| 45 | esac |
| 46 | |
| 47 | if [ $status -ne 200 ];then |
| 48 | echo "failure" |
| 49 | else |
| 50 | echo "success" |
Neha Jain | de45c68 | 2018-04-05 11:51:29 -0400 | [diff] [blame] | 51 | fi |