blob: 170d54e261fabf8313eb88f556ed9a93282d73b4 [file] [log] [blame]
#!/usr/bin/env python
import glob
import os
import shutil
import sys
def change(filename, oldversion, newversion):
tempfile = filename + '.tmp'
fi = open(filename, 'r')
fo = open(tempfile, 'w')
for line in fi:
nl = line.replace(oldversion, newversion)
fo.write(nl)
fo.close()
fi.close()
shutil.copymode(filename, tempfile)
shutil.move(tempfile, filename)
print "Processed " + filename
if len(sys.argv) < 3:
print """
Usage: bin/change-version.py <old-version> <new-version>
"""
sys.exit(-1)
oldversion = sys.argv[1]
newversion = sys.argv[2]
files = [
'build.sbt',
'bin/common.sh',
'commons/build.sbt',
'dist/bin/*',
'dist/bin/*/*',
'dist/conf/init.json',
'dist/conf/predictionio.conf',
'output/build.sbt',
'process/commons/hadoop/scalding/build.sbt',
'process/engines/itemrec/algorithms/hadoop/scalding/build.sbt',
'process/engines/itemrec/algorithms/hadoop/scalding/*/build.sbt',
'process/engines/itemrec/algorithms/scala/mahout/build.sbt',
'process/engines/itemrec/algorithms/scala/mahout/commons/build.sbt',
'process/engines/itemrec/evaluations/hadoop/scalding/build.sbt',
'process/engines/itemrec/evaluations/hadoop/scalding/metrics/map/build.sbt',
'process/engines/itemrec/evaluations/hadoop/scalding/trainingtestsplit/build.sbt',
'process/engines/itemrec/evaluations/scala/*/build.sbt',
'process/engines/itemsim/algorithms/hadoop/scalding/build.sbt',
'process/engines/itemsim/evaluations/hadoop/scalding/build.sbt',
'process/engines/itemsim/evaluations/scala/*/build.sbt',
'servers/*/build.sbt',
'servers/scheduler/conf/application.conf',
'tools/*/build.sbt',
'tools/migration/*/*/build.sbt',
'tools/softwaremanager/src/main/scala/io/prediction/tools/softwaremanager/*.scala'
]
for f in files:
for rf in glob.glob(f):
if os.path.isfile(rf):
change(rf, oldversion, newversion)