
OpenStack in general uses git tags to drive versioning of artifacts. This is important because of our code review driven workflow, since patches don't necessarily land in a predictable sequence, so flows requiring a version number in a file to be updated at a specific time are problematic. By having pbr generate the correct version number then putting that into the galaxy.yml file, we can match the behavior without too much undue burden. Also ignore build_artifact directory. Change-Id: Id02fee682fb5a4b6fd6dcb0644848e6d1269e19b
48 lines
1.3 KiB
Python
Executable File
48 lines
1.3 KiB
Python
Executable File
#!/usr/bin/env python
|
|
# Copyright 2019 Red Hat, Inc.
|
|
#
|
|
# 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.
|
|
|
|
# The next two lines are pointless for this file, but the collection
|
|
# linter freaks out if they are not there.
|
|
from __future__ import absolute_import, division, print_function
|
|
__metaclass__ = type
|
|
|
|
import pbr.version
|
|
|
|
from ruamel.yaml import YAML
|
|
|
|
|
|
def generate_version_info():
|
|
version_info = pbr.version.VersionInfo('openstack-cloud')
|
|
semantic_version = version_info.semantic_version()
|
|
release_string = semantic_version._long_version('-')
|
|
|
|
yaml = YAML()
|
|
yaml.explicit_start = True
|
|
yaml.indent(sequence=4, offset=2)
|
|
|
|
config = yaml.load(open('galaxy.yml.in'))
|
|
config['version'] = release_string
|
|
|
|
with open('galaxy.yml', 'w') as fp:
|
|
yaml.dump(config, fp)
|
|
|
|
|
|
def main():
|
|
generate_version_info()
|
|
|
|
|
|
if __name__ == '__main__':
|
|
main()
|