def getPsanaReport(envA, envB, basedir):
condaInstall = whichCondaInstall(basedir)
relinfo = {}
for env in [envA,envB]:
pyfile = os.path.join(basedir, 'inst', condaInstall, 'envs', env, 'lib', 'python2.7', 'site-packages', 'anarelinfo', '__init__.py')
assert os.path.exists(pyfile), "doesn't exist: %s" % pyfile
relinfo[env]={}
relinfo[env]['pyfile']=pyfile
relinfo[env]['globals']={}
relinfo[env]['locals']={}
execfile(pyfile, relinfo[env]['globals'], relinfo[env]['locals'])
pkgtags = {}
for pkg, tag in relinfo[env]['locals']['pkgtags'].iteritems():
pkgtags[pkg]={'name':pkg, 'tag':tag}
relinfo[env]['locals']['pkgtags'] = pkgtags
report={'version':{},
'tags':{'same':[],'new':[],'old':[],'changed':[]}
}
report['version']['old']=relinfo[envA]['locals']['version']
report['version']['new']=relinfo[envB]['locals']['version']
report['version']['same']=report['version']['old']==report['version']['new']
report['tags'] = compareDicts(relinfo[envA]['locals']['pkgtags'],
relinfo[envB]['locals']['pkgtags'])
return report
评论列表
文章目录