github.com/greenplum-db/gpbackup@v0.0.0-20240517212602-89daab1885b3/ci/scripts/boostfs-install.bash (about)

     1  #!/bin/bash
     2  
     3  set -ex
     4  
     5  ccp_src/scripts/setup_ssh_to_cluster.sh
     6  
     7  # Install ddboost dependencies
     8  scp -r gpbackup_ddboost_plugin cdw:/home/gpadmin/gpbackup_ddboost_plugin
     9  ssh -t ${default_ami_user}@cdw "sudo yum install -y autoconf automake libtool"
    10  
    11  if test -f pgcrypto43/pgcrypto*; then
    12    scp -r pgcrypto43/pgcrypto*.gppkg cdw:.
    13    ssh -t gpadmin@cdw "source env.sh; \
    14      gppkg -i pgcrypto*.gppkg && \
    15      psql -d postgres -f \${GPHOME}/share/postgresql/contrib/pgcrypto.sql"
    16  else
    17    ssh -t gpadmin@cdw "source env.sh; \
    18      psql -d postgres -c 'CREATE EXTENSION pgcrypto;'"
    19  fi
    20  
    21  DDBOOSTFS_RPM=DDBoostFS-1.1.0.1-565598.rhel.x86_64.rpm
    22  cat > /tmp/script.sh << SCRIPT
    23    #!/bin/bash
    24  
    25    set -ex
    26  
    27    cd /tmp
    28    sudo yum -y install ${DDBOOSTFS_RPM} expect
    29  
    30    expect << EOD
    31  spawn /opt/emc/boostfs/bin/boostfs lockbox set -d ${DD_SOURCE_HOST} -s gpdb_boostfs -u ${DD_USER}
    32  expect "password"
    33  send "${DD_PW}\n"
    34  expect "password"
    35  send "${DD_PW}\n"
    36  expect eof
    37  EOD
    38  
    39    sudo mkdir /data/gpdata/dd_dir
    40    sudo chown -R gpadmin:gpadmin /data/gpdata/dd_dir
    41    sudo /opt/emc/boostfs/bin/boostfs mount /data/gpdata/dd_dir -d ${DD_SOURCE_HOST} -s gpdb_boostfs -o allow-others=true
    42  SCRIPT
    43  chmod +x /tmp/script.sh
    44  
    45  hostnames=$(cat ./cluster_env_files/etc_hostfile | awk '{print $2}')
    46  for host in ${hostnames}; do
    47    echo "Installing boostfs on $host"
    48    scp /tmp/script.sh boostfs_installer/${DDBOOSTFS_RPM} ${default_ami_user}@${host}:/tmp
    49    ssh ${default_ami_user}@${host} "/tmp/script.sh"
    50  done