github.com/0xPolygon/supernets2-node@v0.0.0-20230711153321-2fe574524eaa/test/scripts/postgres/run.sh (about)

     1  #!/bin/bash
     2  
     3  set -e
     4  
     5  BASEDIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
     6  SCRIPT_FILES="${BASEDIR}/*.sql"
     7  DBNAME=test_db
     8  DBUSER=test_user
     9  
    10  main(){
    11      for origin_script in ${SCRIPT_FILES}; do
    12          echo "Executing ${origin_script}..."
    13  
    14          script_file_path=$(mktemp)
    15          script_file_name=$(basename "${script_file_path}")
    16          script_contents=$(eval "echo \"$(cat ${origin_script})\"")
    17  
    18          echo "${script_contents}" > "${script_file_path}"
    19  
    20          docker cp "${script_file_path}" supernets2-state-db:"${script_file_path}"
    21          docker exec supernets2-state-db bash -c "chmod a+x ${script_file_path} && psql ${DBNAME} ${DBUSER} -v ON_ERROR_STOP=ON --single-transaction -f ${script_file_path}"
    22  
    23          echo "Done"
    24      done
    25  }
    26  
    27  main "${@}"