本文整理汇总了Python中DIRAC.ConfigurationSystem.private.Modificator.Modificator.getVersionDiff方法的典型用法代码示例。如果您正苦于以下问题:Python Modificator.getVersionDiff方法的具体用法?Python Modificator.getVersionDiff怎么用?Python Modificator.getVersionDiff使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DIRAC.ConfigurationSystem.private.Modificator.Modificator
的用法示例。
在下文中一共展示了Modificator.getVersionDiff方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: CSCLI
# 需要导入模块: from DIRAC.ConfigurationSystem.private.Modificator import Modificator [as 别名]
# 或者: from DIRAC.ConfigurationSystem.private.Modificator.Modificator import getVersionDiff [as 别名]
#.........这里部分代码省略.........
argsList = args.split()
limit = 100
if len( argsList ) > 0:
limit = int( argsList[0] )
history = self.modificator.getHistory( limit )
print "%s recent commits:" % limit
for entry in history:
self.printPair( entry[0], entry[1], "@" )
except:
_showTraceback()
def do_showDiffWithServer( self, dummy ):
"""
Shows diff with lastest version in server
Usage: showDiffWithServer
"""
try:
diffData = self.modificator.showCurrentDiff()
print "Diff with latest from server ( + local - remote )"
for line in diffData:
if line[0] in ( '-' ):
print colorize( line, "red" )
elif line[0] in ( '+' ):
print colorize( line, "green" )
elif line[0] in ( '?' ):
print colorize( line, "yellow" ),
else:
print line
except:
_showTraceback()
def do_showDiffBetweenVersions( self, args ):
"""
Shows diff between two versions
Usage: showDiffBetweenVersions <version 1 with spaces> <version 2 with spaces>
"""
try:
argsList = args.split()
if len( argsList ) < 4:
print "What are the two versions to compare?"
return
v1 = " ".join ( argsList[0:2] )
v2 = " ".join ( argsList[2:4] )
print "Comparing '%s' with '%s' " % ( v1, v2 )
diffData = self.modificator.getVersionDiff( v1, v2 )
print "Diff with latest from server ( + %s - %s )" % ( v2, v1 )
for line in diffData:
if line[0] in ( '-' ):
print colorize( line, "red" )
elif line[0] in ( '+' ):
print colorize( line, "green" )
elif line[0] in ( '?' ):
print colorize( line, "yellow" ),
else:
print line
except:
_showTraceback()
def do_rollbackToVersion( self, args ):
"""
rolls back to user selected version of the configuration
Usage: rollbackToVersion <version with spaces>>
"""
try:
argsList = args.split()
if len( argsList ) < 2:
print "What version to rollback?"
return
version = " ".join ( argsList[0:2] )
choice = raw_input( "Do you really want to rollback to version %s? yes/no [no]: " % version )
choice = choice.lower()
if choice in ( "yes", "y" ):
response = self.modificator.rollbackToVersion( version )
if response[ 'OK' ]:
self.modifiedData = False
print "Rolled back."
self.modificator.loadFromRemote()
else:
print "Error sending data, server said: %s" % response['Message']
except:
_showTraceback()
def do_mergeWithServer( self, dummy ):
"""
Shows diff with lastest version in server
Usage: diffWithServer
"""
try:
choice = raw_input( "Do you want to merge with server configuration? yes/no [no]: " )
choice = choice.lower()
if choice in ( "yes", "y" ):
retVal = self.modificator.mergeWithServer()
if retVal[ 'OK' ]:
print "Merged"
else:
print "There was an error: ", retVal[ 'Message' ]
else:
print "Merge aborted"
except:
_showTraceback()
示例2: __showDiff
# 需要导入模块: from DIRAC.ConfigurationSystem.private.Modificator import Modificator [as 别名]
# 或者: from DIRAC.ConfigurationSystem.private.Modificator.Modificator import getVersionDiff [as 别名]
return self.write_message( json.dumps( {"success":1, "op":"showCurrentDiff", "lines":processedData["lines"], "totalLines": processedData["totalLines"], "html":self.render_string( "ConfigurationManager/diffConfig.tpl",
titles = ( "Server's version", "User's current version" ),
diffList = processedData["diff"] )} ) )
def __showDiff( self, params ):
if not self.__authorizeAction():
raise WErr( 500, "You are not authorized to get diff's!! Bad boy!" )
try:
fromDate = str( params[ 'fromVersion' ] )
toDate = str( params[ 'toVersion' ] )
except Exception, e:
raise WErr( 500, "Can't decode params: %s" % e )
rpcClient = RPCClient( gConfig.getValue( "/DIRAC/Configuration/MasterServer", "Configuration/Server" ) )
modCfg = Modificator( rpcClient )
diffGen = modCfg.getVersionDiff( fromDate, toDate )
processedData = self.__generateHTMLDiff( diffGen )
return self.write_message( json.dumps( {"success":1, "op":"showDiff", "lines":processedData["lines"], "totalLines": processedData["totalLines"], "html":self.render_string( "ConfigurationManager/diffConfig.tpl",
titles = ( "From version %s" % fromDate, "To version %s" % toDate ),
diffList = processedData["diff"] )} ) )
def __rollback( self, params ):
rollbackVersion = ""
if not self.__authorizeAction():
raise WErr( 500, "You are not authorized to get diff's!! Bad boy!" )
try:
rollbackVersion = str( params[ 'rollbackToVersion' ] )
except Exception, e:
raise WErr( 500, "Can't decode params: %s" % e )
rpcClient = RPCClient( gConfig.getValue( "/DIRAC/Configuration/MasterServer", "Configuration/Server" ) )
modCfg = Modificator( rpcClient )