#!/usr/bin/env python #============================================================================== # Copyright and license info is available in the LICENSE file included with # the Server Deployment Package (SDP), and also available online: # https://swarm.workshop.perforce.com/projects/perforce-software-sdp/view/main/LICENSE #------------------------------------------------------------------------------ """ This script makes sure that all Perforce users are in the limits group. """ import sys, os, string, re instance=sys.argv[1] LimitsFile = ("C:\\p4\\%s\\tmp\\limits.txt" % instance) NewLimitsFile = ("C:\\p4\\%s\\tmp\\limits.new.txt" % instance) UsersFile = ("C:\\p4\\%s\\tmp\\users.txt" % instance) os.system("p4 group -o limits > %s" % LimitsFile) os.system("p4 users > %s" % UsersFile) users = open(UsersFile, "r") limits = open(LimitsFile, "r") output = open(NewLimitsFile, "w") userlist = [] for user in users.readlines(): user = re.sub( r"<.*", r"", user ) user = user.strip() if user != "": userlist.append(user) users.close() for line in limits.readlines(): if line != "\n": output.write(line) limits.close() for user in userlist: output.write("\t%s\n" % user) output.close() os.system("p4 group -i < %s" % NewLimitsFile) os.remove("%s" % UsersFile) os.remove("%s" % LimitsFile) os.remove("%s" % NewLimitsFile)