|
39 | 39 |
|
40 | 40 |
|
41 | 41 | BRANCHES = [
|
42 |
| - # version, isdev |
43 |
| - (3.6, False), |
44 |
| - (3.7, True), |
45 |
| - (2.7, False) |
| 42 | + # version, git branch, isdev |
| 43 | + (3.6, '3.6', False), |
| 44 | + (3.7, 'master', True), |
| 45 | + (2.7, '2.7', False) |
46 | 46 | ]
|
47 | 47 |
|
48 | 48 | LANGUAGES = [
|
@@ -151,12 +151,14 @@ def translation_branch(locale_repo, locale_clone_dir, needed_version):
|
151 | 151 | return sorted(translated_branches, key=lambda x: abs(needed_version - x))[0]
|
152 | 152 |
|
153 | 153 |
|
154 |
| -def build_one(version, isdev, quick, venv, build_root, www_root, |
| 154 | +def build_one(version, git_branch, isdev, quick, venv, build_root, www_root, |
155 | 155 | skip_cache_invalidation=False, group='docs',
|
156 | 156 | log_directory='/var/log/docsbuild/', language=None):
|
157 | 157 | if not language:
|
158 | 158 | language = 'en'
|
159 |
| - checkout = build_root + "/python" + str(version).replace('.', '') |
| 159 | + checkout = os.path.join(build_root, 'python{version}{lang}'.format( |
| 160 | + version=str(version).replace('.', ''), |
| 161 | + lang=language if language != 'en' else '')) |
160 | 162 | logging.info("Build start for version: %s, language: %s",
|
161 | 163 | str(version), language)
|
162 | 164 | sphinxopts = ''
|
@@ -187,11 +189,9 @@ def build_one(version, isdev, quick, venv, build_root, www_root,
|
187 | 189 | except (PermissionError, subprocess.CalledProcessError) as err:
|
188 | 190 | logging.warning("Can't change mod or group of %s: %s",
|
189 | 191 | target, str(err))
|
| 192 | + git_clone('https://github.com/python/cpython.git', |
| 193 | + checkout, git_branch) |
190 | 194 | os.chdir(checkout)
|
191 |
| - |
192 |
| - logging.info("Updating checkout") |
193 |
| - shell_out("git reset --hard HEAD") |
194 |
| - shell_out("git pull --ff-only") |
195 | 195 | maketarget = "autobuild-" + ("dev" if isdev else "stable") + ("-html" if quick else "")
|
196 | 196 | logging.info("Running make %s", maketarget)
|
197 | 197 | logname = "{}-{}.log".format(os.path.basename(checkout), language)
|
@@ -309,18 +309,18 @@ def main():
|
309 | 309 | logging.root.setLevel(logging.DEBUG)
|
310 | 310 | venv = os.path.join(args.build_root, "venv")
|
311 | 311 | if args.branch:
|
312 |
| - branches_to_do = [(args.branch, args.devel)] |
| 312 | + branches_to_do = [(args.branch, args.branch, args.devel)] |
313 | 313 | else:
|
314 | 314 | branches_to_do = BRANCHES
|
315 | 315 | if not args.languages:
|
316 | 316 | # Allow "--languages" to build all languages (as if not given)
|
317 | 317 | # instead of none. "--languages en" builds *no* translation,
|
318 | 318 | # as "en" is the untranslated one.
|
319 | 319 | args.languages = LANGUAGES
|
320 |
| - for version, devel in branches_to_do: |
| 320 | + for version, git_branch, devel in branches_to_do: |
321 | 321 | for language in args.languages:
|
322 | 322 | try:
|
323 |
| - build_one(version, devel, args.quick, venv, |
| 323 | + build_one(version, git_branch, devel, args.quick, venv, |
324 | 324 | args.build_root, args.www_root,
|
325 | 325 | args.skip_cache_invalidation, args.group,
|
326 | 326 | args.log_directory, language)
|
|
0 commit comments