@@ -63,7 +63,8 @@ def shell_out(cmd):
63
63
raise
64
64
65
65
66
- def build_one (version , isdev , quick , sphinxbuild , build_root , www_root ):
66
+ def build_one (version , isdev , quick , sphinxbuild , build_root , www_root ,
67
+ skip_cache_invalidation = False ):
67
68
checkout = build_root + "/python" + str (version ).replace ('.' , '' )
68
69
target = www_root + "/" + str (version )
69
70
logging .info ("Doc autobuild started in %s" , checkout )
@@ -107,7 +108,7 @@ def build_one(version, isdev, quick, sphinxbuild, build_root, www_root):
107
108
changed .append ("archives/" + fn )
108
109
109
110
logging .info ("%s files changed" , len (changed ))
110
- if changed :
111
+ if changed and not skip_cache_invalidation :
111
112
target_ino = os .stat (target ).st_ino
112
113
targets_dir = os .path .dirname (target )
113
114
prefixes = []
@@ -123,12 +124,15 @@ def build_one(version, isdev, quick, sphinxbuild, build_root, www_root):
123
124
logging .info ("Finished %s" , checkout )
124
125
125
126
126
- def build_devguide (devguide_checkout , devguide_target , sphinxbuild ):
127
+ def build_devguide (devguide_checkout , devguide_target , sphinxbuild ,
128
+ skip_cache_invalidation = False ):
127
129
logging .info ("Building devguide" )
128
130
shell_out ("git -C %s pull" % (devguide_checkout ,))
129
131
shell_out ("%s %s %s" % (sphinxbuild , devguide_checkout , devguide_target ))
130
132
shell_out ("chmod -R o+r %s" % (devguide_target ,))
131
- # TODO Do Fastly invalidation.
133
+ if not skip_cache_invalidation :
134
+ # TODO Do Fastly invalidation.
135
+ pass
132
136
133
137
134
138
def parse_args ():
@@ -164,6 +168,10 @@ def parse_args():
164
168
"--devguide-target" ,
165
169
help = "Path where the generated devguide should be copied." ,
166
170
default = "/srv/docs.python.org/devguide" )
171
+ parser .add_argument (
172
+ "--skip-cache-invalidation" ,
173
+ help = "Skip fastly cache invalidation." ,
174
+ action = "store_true" )
167
175
return parser .parse_args ()
168
176
169
177
@@ -180,11 +188,14 @@ def parse_args():
180
188
try :
181
189
if args .branch :
182
190
build_one (args .branch , args .devel , args .quick , sphinxbuild ,
183
- args .build_root , args .www_root )
191
+ args .build_root , args .www_root ,
192
+ args .skip_cache_invalidation )
184
193
else :
185
194
for version , devel in BRANCHES :
186
195
build_one (version , devel , args .quick , sphinxbuild ,
187
- args .build_root , args .www_root )
188
- build_devguide (args .devguide_checkout , args .devguide_target , sphinxbuild )
196
+ args .build_root , args .www_root ,
197
+ args .skip_cache_invalidation )
198
+ build_devguide (args .devguide_checkout , args .devguide_target ,
199
+ sphinxbuild , args .skip_cache_invalidation )
189
200
except Exception :
190
201
logging .exception ("docs build raised exception" )
0 commit comments