#!/usr/bin/env python """ Usage: update-changes.py [instance] file_containing_list_of_changes instance defaults to 1 if not given. This script simply forces an update on all changelists in the file passed in. The SetCFOptions-forced.py trigger adds the Type: restricted field on the update. Generate changes file with: p4 changes | cut -d " " -f 2 > changes.txt """ USAGE = """ Usage: update-changes.py [instance] textfile should be a file containing 1 changelist number per line. instance defaults to 1 if not given. """ import os import re import string import sys import time import platform import sdputils if len(sys.argv) > 2: SDP_INSTANCE = str(sys.argv[1]) else: SDP_INSTANCE = '1' utils = sdputils.SDPUtils(SDP_INSTANCE) p4 = utils.p4 utils.login() if len(sys.argv) < 2: print (USAGE) sys.exit(1) # Handle optional instance parameter shift. if len(sys.argv) > 2: changes_file = sys.argv[2] else: changes_file = sys.argv[1] try: input = open(changes_file, "r" ) except: print("Unable to open file %s." % changes_file ) sys.exit (2) for line in input.readlines(): line = line.rstrip() line = '%s change -o "%s" > temp.txt' % (p4, line) os.system (line) os.system ('%s change -f -i < temp.txt' % p4) input.close() os.remove('temp.txt')