Revision 866bb9c1 devflow/versioning.py
b/devflow/versioning.py | ||
---|---|---|
83 | 83 |
elif len(parents) == 2: |
84 | 84 |
if cur_br_name.startswith("debian-") or cur_br_name == "debian": |
85 | 85 |
pr1, pr2 = parents |
86 |
return short_id(pr1) + "~" + short_id(pr2)
|
|
86 |
return short_id(pr1) + "-" + short_id(pr2)
|
|
87 | 87 |
else: |
88 | 88 |
return short_id(commit) |
89 | 89 |
else: |
... | ... | |
107 | 107 |
branch = repo.head.reference |
108 | 108 |
revid = get_commit_id(branch.commit, branch) |
109 | 109 |
revno = len(list(repo.iter_commits())) |
110 |
desc = repo.git.describe("--tags") |
|
111 | 110 |
toplevel = repo.working_dir |
112 | 111 |
except git.InvalidGitRepositoryError: |
113 | 112 |
log.error("Could not retrieve git information. " + |
... | ... | |
115 | 114 |
return None |
116 | 115 |
|
117 | 116 |
info = namedtuple("vcs_info", ["branch", "revid", "revno", |
118 |
"desc", "toplevel"])
|
|
117 |
"toplevel"]) |
|
119 | 118 |
|
120 |
return info(branch=branch.name, revid=revid, revno=revno, desc=desc,
|
|
119 |
return info(branch=branch.name, revid=revid, revno=revno, |
|
121 | 120 |
toplevel=toplevel) |
122 | 121 |
|
123 | 122 |
|
... | ... | |
137 | 136 |
try: |
138 | 137 |
mode = os.environ["GITFLOW_BUILD_MODE"] |
139 | 138 |
assert mode == "release" or mode == "snapshot" |
140 |
except (KeyError, AssertionError): |
|
141 |
raise ValueError("GITFLOW_BUILD_MODE environment variable must be " |
|
142 |
"'release' or 'snapshot'") |
|
139 |
except KeyError: |
|
140 |
raise ValueError("GITFLOW_BUILD_MODE environment variable is not set." |
|
141 |
" Set this variable to 'release' or 'snapshot'") |
|
142 |
except AssertionError: |
|
143 |
raise ValueError("GITFLOW_BUILD_MODE environment variable must be" |
|
144 |
" 'release' or 'snapshot'") |
|
143 | 145 |
return mode |
144 | 146 |
|
145 | 147 |
|
... | ... | |
390 | 392 |
return pyver.replace("_", "~").replace("rc", "~rc") + "-1" |
391 | 393 |
|
392 | 394 |
|
395 |
def get_python_version(): |
|
396 |
v = vcs_info() |
|
397 |
b = base_version(v) |
|
398 |
mode = build_mode() |
|
399 |
return python_version(b, v, mode) |
|
400 |
|
|
401 |
|
|
393 | 402 |
def debian_version(base_version, vcs_info, mode): |
394 | 403 |
p = python_version(base_version, vcs_info, mode) |
395 | 404 |
return debian_version_from_python_version(p) |
396 | 405 |
|
397 | 406 |
|
407 |
def get_debian_version(): |
|
408 |
v = vcs_info() |
|
409 |
b = base_version(v) |
|
410 |
mode = build_mode() |
|
411 |
return debian_version(b, v, mode) |
|
412 |
|
|
413 |
|
|
398 | 414 |
def user_info(): |
399 | 415 |
import getpass |
400 | 416 |
import socket |
... | ... | |
410 | 426 |
|
411 | 427 |
""" |
412 | 428 |
|
429 |
paths = [root] + module.split(".") + ["%s.py" % name] |
|
430 |
module_filename = os.path.join(*paths) |
|
431 |
|
|
413 | 432 |
v = vcs_info() |
414 | 433 |
if not v: |
415 | 434 |
# Return early if not in development environment |
435 |
log.error("Can not compute version outside of a git repository." |
|
436 |
" Will not update %s version file" % module_filename) |
|
416 | 437 |
return |
417 | 438 |
b = base_version(v) |
418 | 439 |
mode = build_mode() |
419 |
paths = [root] + module.split(".") + ["%s.py" % name] |
|
420 |
module_filename = os.path.join(*paths) |
|
421 | 440 |
version = python_version(b, v, mode) |
422 | 441 |
content = """ |
423 | 442 |
__version__ = "%(version)s" |
424 | 443 |
__version_info__ = %(version_info)s |
425 | 444 |
__version_vcs_info__ = %(vcs_info)s |
426 | 445 |
__version_user_info__ = "%(user_info)s" |
427 |
""" % dict(version=version, version_info=version.split("."),
|
|
446 |
""" % dict(version=version, version_info=version.split("."), |
|
428 | 447 |
vcs_info=pprint.PrettyPrinter().pformat(dict(v._asdict())), |
429 | 448 |
user_info=user_info()) |
430 | 449 |
|
431 | 450 |
module_file = file(module_filename, "w+") |
432 | 451 |
module_file.write(content) |
433 | 452 |
module_file.close() |
453 |
return module_filename |
|
434 | 454 |
|
435 | 455 |
|
436 |
if __name__ == "__main__":
|
|
456 |
def main():
|
|
437 | 457 |
v = vcs_info() |
438 | 458 |
b = base_version(v) |
439 | 459 |
mode = build_mode() |
... | ... | |
448 | 468 |
print python_version(b, v, mode) |
449 | 469 |
elif arg == "debian": |
450 | 470 |
print debian_version(b, v, mode) |
471 |
|
|
472 |
if __name__ == "__main__": |
|
473 |
sys.exit(main()) |
Also available in: Unified diff