@ -13,6 +13,7 @@
# License for the specific language governing permissions and limitations
# under the License.
import os
try :
import git
@ -22,7 +23,7 @@ except ImportError:
try :
from heat . vcsversion import version_info
except ImportError :
version_info = { ' sha ' : ' ' }
version_info = { }
HEAT_VERSION = ' 7 '
FINAL = False # This becomes true at Release Candidate time
@ -30,29 +31,33 @@ FINAL = False # This becomes true at Release Candidate time
def get_git_sha ( ) :
if not git :
return version_info [ ' sha ' ]
return version_info . get ( ' sha ' , ' ' )
try :
repo = git . Repo ( ' . ' )
except InvalidGitRepositoryError:
return version_info [ ' sha ' ]
except git. InvalidGitRepositoryError:
return version_info . get ( ' sha ' , ' ' )
return repo . head . commit . hexsha
def write_git_sha ( ) :
if not git :
return
sha = get_git_sha ( )
vcsversion_path = ' heat/vcsversion.py '
if sha :
with open ( ' heat/vcsversion.py ' , ' w ' ) as version_file :
with open ( vcsversion_path , ' w ' ) as version_file :
version_file . write ( """
# This file is automatically generated by heat's setup.py, so don't edit it. :)
version_info = {
' sha ' : ' %s '
}
""" % (sha))
else :
try :
os . remove ( vcsversion_path )
except OSError :
pass
def version_string ( type = ' short ' ) :