Fix html_last_updated_fmt for Python3

html_last_updated_fmt option is interpreted as a
byte string in python3, causing Sphinx build to break.
This patch makes it utf-8 string.

Changing Popen to .check_output because of 3 reasons:
1. check_output() will raise CalledProcessError if
the called process returns a non-zero return code.
2. For consistency with keystone [1] and cinder [2]
3. It makes the code look much better.

[1] https://review.openstack.org/#/c/457142/
[2] https://review.openstack.org/#/c/433081

Change-Id: Ifeff184b71a83b78de751dfd0c2f43a33cd409ee
This commit is contained in:
Vu Cong Tuan 2017-06-04 11:57:12 +07:00
parent ded39eabaf
commit 30b6a6378c
1 changed files with 1 additions and 2 deletions

View File

@ -162,8 +162,7 @@ html_static_path = ['_static']
git_cmd = ["git", "log", "--pretty=format:'%ad, commit %h'", "--date=local -",
"n1"]
try:
html_last_updated_fmt = subprocess.Popen(
git_cmd, stdout=subprocess.PIPE).communicate()[0]
html_last_updated_fmt = subprocess.check_output(git_cmd).decode('utf-8')
except Exception:
warnings.warn('Cannot get last updated time from git repository. '
'Not setting "html_last_updated_fmt".')