#!/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 # ------------------------------------------------------------------------------ """ Usage: python protect_groups.py remove_groups.txt p4.protect This script will drop all lines in the protect tabel that have a group referenced from the file groups.txt passed into the script. The list of groups to drop is passed in as the first parameter and the protect table is passed in as the 2nd parameter. remove_groups.txt is generated using protect_groups.py - See that script for details. Run "p4 protect -o > p4.protect" to generate the protections table. You can redirect the output of this script to a file called new.p4.protect and then you can compare the original p4.protect and the new.p4.protect. If everything looks okay, you can update the protections table by running: p4 protect -i < new.p4.protect """ import re import sys def main(): p4groups = [] groups = open(sys.argv[1], "r") protect = open(sys.argv[2], "r") for group in groups.readlines(): group = group.rstrip() group = group.lower() p4groups.append(group) for line in protect.readlines(): line = line.rstrip() origline = line line = line.lower() match = re.match(".*group (.*) \* .*", line) if match: if match.group(1).lower() in p4groups: continue else: print(origline) else: print(origline) groups.close() protect.close() ############################################################################### # main if __name__ == "__main__": main()
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#2 | 24675 | Russell C. Jackson (Rusty) |
Fixed bugs in sdputils.py and scripts using it. Converted to standard 2 space spacing, removed copyright stuff. |
||
#1 | 22693 | Russell C. Jackson (Rusty) |
Branched a Unix only version of the SDP. Removed extra items to create a cleaner tree. Moved a few items around to make more sense without Windows in the mix. |
||
//guest/perforce_software/sdp/dev/Maintenance/clean_protect.py | |||||
#5 | 16638 | C. Thomas Tyler |
Routine merge down to dev from main using: p4 merge -b perforce_software-sdp-dev |
||
#4 | 16029 | C. Thomas Tyler |
Routine merge to dev from main using: p4 merge -b perforce_software-sdp-dev |
||
#3 | 11477 | Russell C. Jackson (Rusty) |
Updated to use /usr/bin/env python Added workshop header. Changed cfg to config. |
||
#2 | 11464 | Russell C. Jackson (Rusty) | Current maintenance scripts. | ||
#1 | 10638 | C. Thomas Tyler | Populate perforce_software-sdp-dev. | ||
//guest/perforce_software/sdp/main/Maintenance/clean_protect.py | |||||
#1 | 10148 | C. Thomas Tyler | Promoted the Perforce Server Deployment Package to The Workshop. |