[#161847160] Use sqlcl if it is present for apex export
This commit is contained in:
parent
5ed7f0c073
commit
9c1cc094dc
@ -4,6 +4,8 @@
|
|||||||
#
|
#
|
||||||
# This script is designed to be run from the top level directory of your project and will break otherwise
|
# This script is designed to be run from the top level directory of your project and will break otherwise
|
||||||
|
|
||||||
|
function legacy_sqlplus_export {
|
||||||
|
|
||||||
if [ -z "${ORACLE_HOME}" ]; then
|
if [ -z "${ORACLE_HOME}" ]; then
|
||||||
echo "Missing environment variable: ORACLE_HOME. Please add the path of your oracle installation to your environment variables under the variable name ORACLE_HOME"; exit 1
|
echo "Missing environment variable: ORACLE_HOME. Please add the path of your oracle installation to your environment variables under the variable name ORACLE_HOME"; exit 1
|
||||||
fi
|
fi
|
||||||
@ -50,13 +52,38 @@ if [ ! 0 -eq "$?" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
rm "${export_file}"
|
rm "${export_file}"
|
||||||
|
}
|
||||||
|
|
||||||
mv "f${apexappid}" apex #
|
function main {
|
||||||
|
if which -s sql; then
|
||||||
|
source ./config/asc.conf
|
||||||
|
local connect_string="${username}/${password}@${database_connection}"
|
||||||
|
echo Using sqlcl to export app ${apexappid}
|
||||||
|
export_file="f${apexappid}.sql"
|
||||||
|
|
||||||
cd apex/
|
if [ -d apex/ ]; then
|
||||||
|
rm -r apex/
|
||||||
|
fi
|
||||||
|
if [ -e "${export_file}" ]; then
|
||||||
|
rm "${export_file}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
sql "${connect_string}" @/dev/stdin <<EOF
|
||||||
|
apex export -skipExportDate -expOriginalIds -split -splitNoCheckSum -applicationid $apexappid
|
||||||
|
EOF
|
||||||
|
if [ -e "${export_file}" ]; then
|
||||||
|
rm "${export_file}"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo WARNING: Did not find SQLcl. Using legacy APEXExportSplitter instead
|
||||||
|
legacy_sqlplus_export
|
||||||
|
fi
|
||||||
|
|
||||||
|
mv "f${apexappid}" apex
|
||||||
|
|
||||||
sed s^@application^@apex/application^ < install.sql > temp.sql
|
# fixup install paths. The tool generates absolute paths
|
||||||
rm -f install.sql
|
sed -E -i 'bak' 's^@(.*/)?application/^@apex/application/^' apex/install.sql
|
||||||
mv temp.sql install.sql
|
}
|
||||||
|
|
||||||
|
main
|
||||||
|
|
||||||
#now you can update your working copy with changes from your colleagues and reinstall into apex
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user