Browse Source

Added support for --silent so that p4-fast-export can be called from cronjobs.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
maint
Simon Hausmann 18 years ago
parent
commit
161958cc2f
  1. 22
      contrib/fast-import/p4-fast-export.py

22
contrib/fast-import/p4-fast-export.py

@ -15,6 +15,7 @@ import os, string, sys, time @@ -15,6 +15,7 @@ import os, string, sys, time
import marshal, popen2, getopt
from sets import Set;

silent = False
knownBranches = Set()
committedChanges = Set()
branch = "refs/heads/master"
@ -25,7 +26,7 @@ if len(globalPrefix) != 0: @@ -25,7 +26,7 @@ if len(globalPrefix) != 0:
globalPrefix = globalPrefix[:-1]

try:
opts, args = getopt.getopt(sys.argv[1:], "", [ "branch=", "detect-branches", "changesfile=" ])
opts, args = getopt.getopt(sys.argv[1:], "", [ "branch=", "detect-branches", "changesfile=", "silent" ])
except getopt.GetoptError:
print "fixme, syntax error"
sys.exit(1)
@ -37,6 +38,8 @@ for o, a in opts: @@ -37,6 +38,8 @@ for o, a in opts:
detectBranches = True
elif o == "--changesfile":
changesFile = a
elif o == "--silent":
silent= True

if len(args) == 0 and len(globalPrefix) != 0:
print "[using previously specified depot path %s]" % globalPrefix
@ -110,7 +113,8 @@ def extractFilesFromCommit(commit): @@ -110,7 +113,8 @@ def extractFilesFromCommit(commit):
while commit.has_key("depotFile%s" % fnum):
path = commit["depotFile%s" % fnum]
if not path.startswith(globalPrefix):
print "\nchanged files: ignoring path %s outside of %s in change %s" % (path, globalPrefix, change)
if not silent:
print "\nchanged files: ignoring path %s outside of %s in change %s" % (path, globalPrefix, change)
fnum = fnum + 1
continue

@ -272,7 +276,8 @@ def commit(details, files, branch, branchPrefix): @@ -272,7 +276,8 @@ def commit(details, files, branch, branchPrefix):
for file in files:
path = file["path"]
if not path.startswith(branchPrefix):
print "\nchanged files: ignoring path %s outside of branch prefix %s in change %s" % (path, branchPrefix, details["change"])
if not silent:
print "\nchanged files: ignoring path %s outside of branch prefix %s in change %s" % (path, branchPrefix, details["change"])
continue
rev = file["rev"]
depotPath = path + "#" + rev
@ -387,15 +392,17 @@ else: @@ -387,15 +392,17 @@ else:
changes.reverse()

if len(changes) == 0:
print "no changes to import!"
if not silent:
print "no changes to import!"
sys.exit(1)

cnt = 1
for change in changes:
description = p4Cmd("describe %s" % change)

sys.stdout.write("\rimporting revision %s (%s%%)" % (change, cnt * 100 / len(changes)))
sys.stdout.flush()
if not silent:
sys.stdout.write("\rimporting revision %s (%s%%)" % (change, cnt * 100 / len(changes)))
sys.stdout.flush()
cnt = cnt + 1

# try:
@ -412,7 +419,8 @@ else: @@ -412,7 +419,8 @@ else:
# print gitError.read()
# sys.exit(1)

print ""
if not silent:
print ""

gitStream.write("reset refs/tags/p4/%s\n" % lastChange)
gitStream.write("from %s\n\n" % branch);

Loading…
Cancel
Save