| author | cavaliet |
| Thu, 13 Nov 2014 16:27:11 +0100 | |
| changeset 157 | a3b764f393a0 |
| parent 136 | 66972b143124 |
| permissions | -rw-r--r-- |
|
136
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
1 |
#!/usr/bin/python |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
2 |
|
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
3 |
import re |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
4 |
import sys, getopt |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
5 |
from shutil import move |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
6 |
from os import remove, close |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
7 |
from tempfile import mkstemp |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
8 |
|
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
9 |
def replace(file_path, pattern, subst): |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
10 |
#Create temp file |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
11 |
fh, abs_path = mkstemp() |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
12 |
new_file = open(abs_path,'w') |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
13 |
old_file = open(file_path) |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
14 |
for line in old_file: |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
15 |
new_file.write(line.replace(pattern, subst)) |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
16 |
#close temp file |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
17 |
new_file.close() |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
18 |
close(fh) |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
19 |
old_file.close() |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
20 |
#Remove original file |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
21 |
remove(file_path) |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
22 |
#Move new file |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
23 |
move(abs_path, file_path) |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
24 |
|
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
25 |
def main(argv): |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
26 |
in_installed_apps=None |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
27 |
uncomment=None |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
28 |
done=None |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
29 |
file = '' |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
30 |
instructions='settings_south_syncdb.py -i <settings.py file> to comment south in installed apps, settings_south_syncdb.py -r -i <settings.py file> to decomment south in installed apps' |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
31 |
|
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
32 |
try: |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
33 |
opts, args = getopt.getopt(argv,"hri:",["file="]) |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
34 |
except getopt.GetoptError: |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
35 |
print 'settings_south_syncdb.py -i <settings.py file>' |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
36 |
sys.exit(2) |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
37 |
if not opts: |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
38 |
print instructions |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
39 |
sys.exit() |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
40 |
for opt, arg in opts: |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
41 |
if opt == '-h': |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
42 |
print instructions |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
43 |
sys.exit() |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
44 |
elif opt == '-r': |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
45 |
uncomment=True |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
46 |
elif opt in ("-i", "--file"): |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
47 |
file = arg |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
48 |
else: |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
49 |
print instructions |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
50 |
sys.exit() |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
51 |
if uncomment: |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
52 |
replace(file, '#\'south\',', '\'south\',') |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
53 |
else: |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
54 |
replace(file, '\'south\',', '#\'south\',') |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
55 |
|
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
56 |
|
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
57 |
|
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
58 |
|
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
59 |
|
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
60 |
if __name__ == "__main__": |
|
66972b143124
Fixes to puppet provisioning, Puppet_Readme.md added, custom.yaml removed from tracking (error)
Nicolas DURAND <nicolas.durand@iri.centrepompidou.fr>
parents:
diff
changeset
|
61 |
main(sys.argv[1:]) |