github.com/percona/percona-xtradb-cluster-operator@v1.14.0/e2e-tests/scaling-proxysql/run (about)

     1  #!/bin/bash
     2  
     3  set -o errexit
     4  
     5  test_dir=$(realpath $(dirname $0))
     6  . ${test_dir}/../functions
     7  
     8  set_debug
     9  
    10  create_infra $namespace
    11  
    12  cluster="scaling-proxysql"
    13  spinup_pxc "$cluster" "$test_dir/conf/${cluster}.yml"
    14  
    15  desc 'scale up from 1 to 3'
    16  cat_config "$test_dir/conf/$cluster.yml" \
    17  	| sed -e 's/size: 1/size: 3/' \
    18  	| kubectl_bin apply -f-
    19  
    20  desc 'check if all 3 Pods started'
    21  wait_for_running $cluster-proxysql 3
    22  sleep 25
    23  
    24  desc 'check if PVC created'
    25  compare_kubectl pvc/proxydata-$cluster-proxysql-1
    26  compare_kubectl pvc/proxydata-$cluster-proxysql-2
    27  
    28  desc 'check new Pods exists in ProxySQL'
    29  pod0=$cluster-proxysql-0
    30  pod1=$cluster-proxysql-1
    31  pod2=$cluster-proxysql-2
    32  run_mysql_local 'SELECT hostname FROM runtime_proxysql_servers;' "-h127.0.0.1 -P6032 -uproxyadmin -padmin_password" "$cluster-proxysql-0" \
    33  	| grep $pod0
    34  run_mysql_local 'SELECT hostname FROM runtime_proxysql_servers;' "-h127.0.0.1 -P6032 -uproxyadmin -padmin_password" "$cluster-proxysql-0" \
    35  	| grep $pod1
    36  run_mysql_local 'SELECT hostname FROM runtime_proxysql_servers;' "-h127.0.0.1 -P6032 -uproxyadmin -padmin_password" "$cluster-proxysql-0" \
    37  	| grep $pod2
    38  run_mysql_local 'SELECT hostname FROM runtime_proxysql_servers;' "-h127.0.0.1 -P6032 -uproxyadmin -padmin_password" "$cluster-proxysql-1" \
    39  	| grep $pod0
    40  run_mysql_local 'SELECT hostname FROM runtime_proxysql_servers;' "-h127.0.0.1 -P6032 -uproxyadmin -padmin_password" "$cluster-proxysql-1" \
    41  	| grep $pod1
    42  run_mysql_local 'SELECT hostname FROM runtime_proxysql_servers;' "-h127.0.0.1 -P6032 -uproxyadmin -padmin_password" "$cluster-proxysql-1" \
    43  	| grep $pod2
    44  run_mysql_local 'SELECT hostname FROM runtime_proxysql_servers;' "-h127.0.0.1 -P6032 -uproxyadmin -padmin_password" "$cluster-proxysql-2" \
    45  	| grep $pod0
    46  run_mysql_local 'SELECT hostname FROM runtime_proxysql_servers;' "-h127.0.0.1 -P6032 -uproxyadmin -padmin_password" "$cluster-proxysql-2" \
    47  	| grep $pod1
    48  run_mysql_local 'SELECT hostname FROM runtime_proxysql_servers;' "-h127.0.0.1 -P6032 -uproxyadmin -padmin_password" "$cluster-proxysql-2" \
    49  	| grep $pod2
    50  
    51  desc 'scale down from 3 to 1'
    52  apply_config $test_dir/conf/$cluster.yml
    53  
    54  desc 'check if Pod deleted'
    55  wait_for_delete pod/$cluster-proxysql-2
    56  
    57  desc 'check if PVC not deleted'
    58  compare_kubectl pvc/proxydata-$cluster-proxysql-2
    59  
    60  desc 'check if Pod deleted from ProxySQL'
    61  sleep 30
    62  run_mysql_local 'SELECT hostname FROM runtime_proxysql_servers;' "-h127.0.0.1 -P6032 -uproxyadmin -padmin_password" "$cluster-proxysql-0" \
    63  	| (grep $pod2 && exit 1 || :)
    64  
    65  destroy $namespace
    66  desc "test passed"