Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Delta Between Two Patch Sets: sitescripts/docs/bin/generate_docs.py

Issue 29335805: Issue 1299 - Generate docs outside the devbuild build process (Closed)
Left Patch Set: Use hg clone/pull instead of hg archive Created Feb. 8, 2016, 9:57 a.m.
Right Patch Set: Separate pull and update, specify revision to include Created Feb. 9, 2016, 12:39 p.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
Left: Side by side diff | Download
Right: Side by side diff | Download
« no previous file with change/comment | « sitescripts/docs/bin/__init__.py ('k') | sitescripts/extensions/bin/createNightlies.py » ('j') | no next file with change/comment »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
LEFTRIGHT
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 2
3 # This file is part of Adblock Plus <https://adblockplus.org/>, 3 # This file is part of Adblock Plus <https://adblockplus.org/>,
4 # Copyright (C) 2006-2016 Eyeo GmbH 4 # Copyright (C) 2006-2016 Eyeo GmbH
5 # 5 #
6 # Adblock Plus is free software: you can redistribute it and/or modify 6 # Adblock Plus is free software: you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License version 3 as 7 # it under the terms of the GNU General Public License version 3 as
8 # published by the Free Software Foundation. 8 # published by the Free Software Foundation.
9 # 9 #
10 # Adblock Plus is distributed in the hope that it will be useful, 10 # Adblock Plus is distributed in the hope that it will be useful,
(...skipping 17 matching lines...) Expand all
28 if len(key_parts) < 2: 28 if len(key_parts) < 2:
29 continue 29 continue
30 project_name, field_name = key_parts 30 project_name, field_name = key_parts
31 if field_name not in {"repository", "target_directory", "command"}: 31 if field_name not in {"repository", "target_directory", "command"}:
32 continue 32 continue
33 projects.setdefault(project_name, {})[field_name] = value 33 projects.setdefault(project_name, {})[field_name] = value
34 return projects 34 return projects
35 35
36 def sync_sources(sources_dir, repository_url): 36 def sync_sources(sources_dir, repository_url):
37 if os.path.exists(sources_dir): 37 if os.path.exists(sources_dir):
38 subprocess.check_call(["hg", "pull", "--quiet", "--update" 38 subprocess.check_call(["hg", "pull", "--quiet",
39 "--rev", "master",
39 "--repository", sources_dir]) 40 "--repository", sources_dir])
Wladimir Palant 2016/02/09 10:44:28 You don't really want to call |hg pull --update|,
Felix Dahlke 2016/02/09 12:40:22 Done.
41 subprocess.check_call(["hg", "update", "--quiet",
42 "--rev", "master"])
40 else: 43 else:
41 subprocess.check_call(["hg", "clone", "--quiet", 44 subprocess.check_call(["hg", "clone", "--quiet",
42 "--updaterev", "master", 45 "--updaterev", "master",
43 repository_url, sources_dir]) 46 repository_url, sources_dir])
44 47
45 def replace_dir(source_dir, target_dir): 48 def replace_dir(source_dir, target_dir):
46 if not os.path.exists(target_dir): 49 if not os.path.exists(target_dir):
47 parent_dir = os.path.dirname(target_dir) 50 parent_dir = os.path.dirname(target_dir)
48 try: 51 try:
49 os.makedirs(parent_dir) 52 os.makedirs(parent_dir)
(...skipping 23 matching lines...) Expand all
73 sources_dir = os.path.join(temp_directory, name) 76 sources_dir = os.path.join(temp_directory, name)
74 sync_sources(sources_dir, data["repository"]) 77 sync_sources(sources_dir, data["repository"])
75 output_dir = sources_dir.rstrip(os.path.sep) + ".docs" 78 output_dir = sources_dir.rstrip(os.path.sep) + ".docs"
76 run_generation_command(data["command"], sources_dir, output_dir) 79 run_generation_command(data["command"], sources_dir, output_dir)
77 replace_dir(output_dir, data["target_directory"]) 80 replace_dir(output_dir, data["target_directory"])
78 81
79 if __name__ == "__main__": 82 if __name__ == "__main__":
80 config = get_config() 83 config = get_config()
81 projects = read_projects(config) 84 projects = read_projects(config)
82 generate_docs(projects, config) 85 generate_docs(projects, config)
LEFTRIGHT

Powered by Google App Engine
This is Rietveld