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

     1  #!/bin/bash
     2  
     3  set -ex
     4  
     5  export GOPATH=$(pwd)/go
     6  export PATH=$PATH:${GOPATH}/bin
     7  
     8  if [[ -f /opt/gcc_env.sh ]]; then
     9      source /opt/gcc_env.sh
    10  fi
    11  
    12  # Build gpbackup
    13  pushd ${GOPATH}/src/github.com/greenplum-db/gpbackup
    14    make depend build unit
    15    version=$(git describe --tags | perl -pe 's/(.*)-([0-9]*)-(g[0-9a-f]*)/\1+dev.\2.\3/')
    16  popd
    17  echo ${version} > go_components/gpbackup_version
    18  
    19  if [[ "gpbackup version ${version}" != "$(${GOPATH}/bin/gpbackup --version)" ]]; then
    20    echo "unexpected difference in version recorded for gpbackup: expected ${version} to be same as:"
    21    ${GOPATH}/bin/gpbackup --version
    22    exit 1
    23  fi
    24  
    25  # Build s3 plugin
    26  pushd ${GOPATH}/src/github.com/greenplum-db/gpbackup-s3-plugin
    27    make depend build unit
    28    s3_plugin_version=$(git describe --tags | perl -pe 's/(.*)-([0-9]*)-(g[0-9a-f]*)/\1+dev.\2.\3/')
    29  popd
    30  echo ${s3_plugin_version} > go_components/s3_plugin_version
    31  
    32  if [[ "gpbackup_s3_plugin version ${s3_plugin_version}" != "$(${GOPATH}/bin/gpbackup_s3_plugin --version)" ]]; then
    33    echo "unexpected difference in version recorded for gpbackup_s3_plugin: expected ${s3_plugin_version} to be same as:"
    34    ${GOPATH}/bin/gpbackup_s3_plugin --version
    35    exit 1
    36  fi
    37  
    38  # Build gpbackup-manager
    39  pushd ${GOPATH}/src/github.com/pivotal/gp-backup-manager
    40    make depend build unit
    41    gpbackup_manager_version=$(git describe --tags | perl -pe 's/(.*)-([0-9]*)-(g[0-9a-f]*)/\1+dev.\2.\3/')
    42  popd
    43  echo ${gpbackup_manager_version} > go_components/gpbackup_manager_version
    44  
    45  # gpbackup_manager puts newline in front of version line
    46  output=$(${GOPATH}/bin/gpbackup_manager --version | grep gpbackup)
    47  if [[ "gpbackup_manager version ${gpbackup_manager_version}" != "$output" ]]; then
    48    echo "unexpected difference in version recorded for gpbackup_manager: expected 'gpbackup_manager version ${gpbackup_manager_version}' to be same as: '$output'"
    49    exit 1
    50  fi
    51  
    52  cp ${GOPATH}/bin/gpbackup go_components/
    53  cp ${GOPATH}/bin/gpbackup_helper go_components/
    54  cp ${GOPATH}/bin/gprestore go_components/
    55  cp ${GOPATH}/bin/gpbackup_s3_plugin go_components/
    56  cp ${GOPATH}/bin/gpbackup_manager go_components/
    57  cd go_components && tar cfz go_components.tar.gz *