1#!/bin/bash 2 3set -eu 4 5# Performs Maps-specific post-processing on a .tar.gz archive produced by rule 6# java_gapic_assembly_gradle_pkg 7 8# Add gradle publish plugin 9# 10# Arguments: 11# postprocess_dir: The directory that contains the Java files to postprocess. 12add_gradle_publish() { 13 postprocess_dir="${1}" 14 cat >> "${postprocess_dir}/build.gradle" <<EOF 15 16apply from: "./publish.gradle" 17EOF 18 echo "INFO: Added gradle publish plugin." 19} 20 21# Change group name from cloud 22# 23# Arguments: 24# postprocess_dir: The directory that contains the Java files to postprocess. 25change_group() { 26 postprocess_dir="${1}" 27 for f in $(find "${postprocess_dir}" -name "*.gradle" -type f); do 28 sed -e "s/= 'com\.google\.cloud'/= 'com\.google\.maps'/g" "${f}" > "${f}.new" && mv "${f}.new" "${f}" 29 sed -e "s/= 'com\.google\.api\.grpc'/= 'com\.google\.maps'/g" "${f}" > "${f}.new" && mv "${f}.new" "${f}" 30done 31} 32 33# Main entry point 34# 35# Arguments: 36# postprocess_dir: The directory that contains the Java files to postprocess. 37main() { 38 postprocess_dir="$1" 39 40 if [ "${postprocess_dir}" = "" ]; then 41 echo "postprocess_dir is required" 42 exit 1 43 fi 44 45 add_gradle_publish "${postprocess_dir}" 46 change_group "${postprocess_dir}" 47} 48 49main "$@" 50