Analyzing 6.4 Customization
To identify the files that were updated or customized after install in the current 6.x version, PTC Arbortext Content Delivery provides a simple shell script based on some Git commands. The script generates the following output files:
report.txt—This file has list of all the files that are updated.
customReport-*.txt—For all the files that are updated in report.txt, a separate customReport-{file_name}.txt is generated with details about what has been changed in this file.
Perform the following steps to run this utility:
1. To identify all the files that are updated or customized on your existing 6.4/6.5 environment, copy and paste the following script to a file and name the file CustomizationStatus.sh.
* 
On Windows, you must install Git Bash to be able to use the following script and the Git commands.
The git status command in the following script must be in a single line. Ensure that there are no line breaks in the git status command. This is applicable to both Linux and Windows.
#!/usr/bin/env bash

#git config changes
git config core.fileMode false
git config --global core.autocrlf false
git config --global core.whitespace cr-at-eol

# delete the old reports Directory and Create new
rm -rf CustomizationReport
mkdir CustomizationReport

echo -e "List of files found to be changed/Customized:\n\n" > CustomizationReport/Report.txt

#Pull the latest git status
git status -v | grep -v "PAAgent" | grep -v "Log" | grep -v "Derby" | grep -v "InS_SW/SW/System/Java" | grep -v "InS_SW/Config/Applications/ContentManager/Work/" | grep -v " InS_SW/Config/System/Config/PublicationsList.xml" | grep -v "
InS_SW/Config/System/Config/ProfileDefinitions.xml" | grep -v "InS_SW/SW/Applications/Windchill.ear/.xconf-target-file-hints" | grep -v "InS_SW/SW/Applications/Windchill.ear/bin/adminTools/sip/store/sip.keystore" | grep -v "InS_SW/SW/System/WildFly/standalone/configuration/ins.keystore" | grep -v "InS_SW/SW/System/WildFly/standalone/configuration/VAULT.dat" | grep -v " InS_SW/SW/System/WindchillDS" | grep -v "InS_SW/Config/Titles" | grep -v "InS_SW/SW/System/OCU" | grep -v "InS_SW/SW/System/Core" | grep -v "InS_SW/SW/System/Tools" | grep -v "standalone_xml_history" | grep -v ".*\.BACKUP$" | grep -v ".*\.jar$" | grep -v "coreCMIPublications.xml" | grep -v "corePublications.xml" | grep -v "Datasources.conf.xml" | grep -v "Namespaces.conf.xml" | grep -v "titles.conf.xml" | grep -v ".*\.gitignore$" | grep -v "CustomizationReport" | grep -v "main-min.js" | grep -v ".*\.deployed$" | grep -v ".*\.pid$" | grep -v ".*\.dodeploy$" | grep -v "SCI" | grep -v "xconf-backup" | grep -v ".*\.class$" | grep -v "CustomizationStatus" | grep -v ".*\.exe$" | grep -v ".*\.log$" | grep -v "InS_SW/SW/System/WildFly/standalone/data" | grep -v "InS_SW/SW/System/BLCache/" | grep -v "InS_SW/SW/System/Licenses" | grep -v "installer"| grep -v ".*\.ootb$" | grep -v "*_OOTB" | grep -v "*_bkp" | grep -v "*_backup" >> CustomizationReport/Report.txt

#Sanitization
grep -v 'Changes not staged for commit:' CustomizationReport/Report.txt > CustomizationReport/temp && mv CustomizationReport/temp CustomizationReport/Report.txt
grep -v '(use "git add/rm <file>..." to update what will be committed)' CustomizationReport/Report.txt > CustomizationReport/temp && mv CustomizationReport/temp CustomizationReport/Report.txt
grep -v '(use "git add <file>..." to include in what will be committed)' CustomizationReport/Report.txt > CustomizationReport/temp && mv CustomizationReport/temp CustomizationReport/Report.txt
grep -v '(use "git restore <file>..." to discard changes in working directory)' CustomizationReport/Report.txt > CustomizationReport/temp && mv CustomizationReport/temp CustomizationReport/Report.txt
grep -v 'no changes added to commit (use "git add" and/or "git commit -a")' CustomizationReport/Report.txt > CustomizationReport/temp && mv CustomizationReport/temp CustomizationReport/Report.txt
grep -v '(use "git checkout -- <file>..." to discard changes in working directory)' CustomizationReport/Report.txt > CustomizationReport/temp && mv CustomizationReport/temp CustomizationReport/Report.txt

# Pull separate git diff report for each file found to be changed.
grep 'modified:' CustomizationReport/Report.txt | sed 's/^.*: //' | while read -r line ; do
echo "Processing $line"
git diff $line > CustomizationReport/customReport-$(basename -- "$line").txt
done
2. Save this file in the <INS_HOME> directory.
3. Run this script from the Git Bash using the ./ CustomizationStatus.sh command.This generates a folder CustomizationReport in the same directory which contains the report.txt and customReport-{file_name}.txt containing details of the updates made to the files.
Was this helpful?