I am trying to wrap some Python 2 code into Python 3 but having trouble getting the process to work correctly.  From ArcGIS Pro, I'm running a custom GP tool with the following code as its script.  My goal is to run my Python 2 code (stored in a separate script) against a series of MXDs in order to list the data source for each layer or table.  In my case, doing it this way yields no results.  The code runs in about 2 seconds and then terminates.  Any ideas?  
PYTHON 3 SCRIPT (WRAPPER)
import subprocess, os, winreg, sys, arcpy
try:
    arcpy.AddMessage("Finding Python 2.7 installation directory...")
    hKey = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE,    "SOFTWARE\\WOW6432Node\\Python\\PythonCore\\2.7\\InstallPath")
    result = winreg.QueryValueEx(hKey, "")[0]
except:
    arcpy.AddWarning("Python 2.7 installation directory was not found.")
    arcpy.AddError("Script failed.")
    sys.exit()
if os.path.exists(result + "\\python.exe"):
    arcpy.AddMessage("Launching Python 2.7 executable...")
    CREATE_NO_WINDOW = 0x8000000
    process = subprocess.Popen([result + "\\python.exe", "C:\\temp\\python\\ListMXDDataSources.py"],    stdout=subprocess.PIPE, stderr=subprocess.PIPE, creationflags = CREATE_NO_WINDOW, shell=True, stdin=None)
    stdout, stderr = process.communicate()
    arcpy.AddMessage('{}'.format(stdout.decode("utf-8")))
    arcpy.AddWarning('{}'.format(stderr.decode("utf-8")))
PYTHON 2 SCRIPT
import arcpy, glob
rootDirectory = 'C:/temp'
fileExtension = '.mxd'
def main():
    for f in glob.glob(rootDirectory + '/*' + fileExtension):
       mxd = arcpy.mapping.MapDocument(f)
       for df in arcpy.mapping.ListDataFrames(mxd, ''):
          for lyr in arcpy.mapping.ListLayers(mxd, '', df):
             if not lyr.isGroupLayer:
                if lyr.isRasterLayer:
                   print "Raster Layer, {}".format(lyr)
                elif lyr.isFeatureLayer:
                   print "Feature Layer, {}, {}".format(lyr, lyr.serviceProperties)
                else:
                   print "Layer, {}".format(lyr)
          for tbl in arcpy.mapping.ListTableViews(mxd, '', df):
             print "Table, {}".format(tbl.dataSource)
if __name__ == '__main__':
    main()