summaryrefslogtreecommitdiff
path: root/pbr/pbr_json.py
diff options
context:
space:
mode:
authorClark Boylan <clark.boylan@gmail.com>2014-12-19 09:45:16 -0800
committerJeremy Stanley <fungi@yuggoth.org>2014-12-20 00:32:11 +0000
commit0acee45efb9852599f0604ce1539febc350a50c0 (patch)
tree61ce63e0df319aab51ec8b64f5289601fe32f00c /pbr/pbr_json.py
parente7d2825d39fce2111d0d413e63e553603a0e56fb (diff)
downloadpbr-0acee45efb9852599f0604ce1539febc350a50c0.tar.gz
Move write_pbr_json to avoid issues with nose0.10.5
Put write_pbr_json in pbr.pbr_json so that you do not need to import pbr.packaging to use it. This avoids python3 errors with nose where nose is imported by pbr before it is converted to python3 by 2to3 under python3. Also port the pbr.git refactor from the master branch. Co-Authored-By: Jeremy Stanley <fungi@yuggoth.org> Change-Id: I1c420fed609bc60bbfdf78eb219e067ccab1a61e (cherry picked from commit 3550e89db42002e226ea70b1d0314a319b2ecd10)
Diffstat (limited to 'pbr/pbr_json.py')
-rw-r--r--pbr/pbr_json.py32
1 files changed, 32 insertions, 0 deletions
diff --git a/pbr/pbr_json.py b/pbr/pbr_json.py
new file mode 100644
index 0000000..2290103
--- /dev/null
+++ b/pbr/pbr_json.py
@@ -0,0 +1,32 @@
+# Copyright 2011 OpenStack LLC.
+# Copyright 2012-2013 Hewlett-Packard Development Company, L.P.
+# All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+import json
+
+from pbr import git
+
+
+def write_pbr_json(cmd, basename, filename):
+ git_dir = git._run_git_functions()
+ if not git_dir:
+ return
+ values = dict()
+ git_version = git.get_git_short_sha(git_dir)
+ is_release = git.get_is_release(git_dir)
+ if git_version is not None:
+ values['git_version'] = git_version
+ values['is_release'] = is_release
+ cmd.write_file('pbr', filename, json.dumps(values))