mirror of
https://opendev.org/openstack/ansible-collections-openstack.git
synced 2026-07-28 10:44:29 +00:00
Merge "Add a tool to build collections with pbr"
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,3 +1,4 @@
|
|||||||
.tox
|
.tox
|
||||||
build_artifact
|
build_artifact
|
||||||
ansible_collections
|
ansible_collections
|
||||||
|
galaxy.yml
|
||||||
|
|||||||
@@ -98,6 +98,7 @@ then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# install collections
|
# install collections
|
||||||
|
tox -ebuild
|
||||||
ansible-galaxy collection build --force . --output-path ./build_artifact
|
ansible-galaxy collection build --force . --output-path ./build_artifact
|
||||||
ansible-galaxy collection install $(ls build_artifact/openstack-cloud-*) --force
|
ansible-galaxy collection install $(ls build_artifact/openstack-cloud-*) --force
|
||||||
pushd ci/
|
pushd ci/
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
pbr
|
||||||
ansible
|
ansible
|
||||||
pycodestyle
|
pycodestyle
|
||||||
flake8
|
flake8
|
||||||
@@ -5,4 +6,4 @@ pylint
|
|||||||
voluptuous
|
voluptuous
|
||||||
yamllint
|
yamllint
|
||||||
rstcheck
|
rstcheck
|
||||||
|
ruamel.yaml
|
||||||
|
|||||||
47
tools/build.py
Executable file
47
tools/build.py
Executable file
@@ -0,0 +1,47 @@
|
|||||||
|
#!/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()
|
||||||
6
tox.ini
6
tox.ini
@@ -26,9 +26,15 @@ commands = stestr run {posargs}
|
|||||||
commands =
|
commands =
|
||||||
flake8
|
flake8
|
||||||
|
|
||||||
|
[testenv:build]
|
||||||
|
commands =
|
||||||
|
{toxinidir}/tools/build.py
|
||||||
|
ansible-galaxy collection build --force {toxinidir} --output-path {toxinidir}/build_artifact
|
||||||
|
|
||||||
[testenv:linters]
|
[testenv:linters]
|
||||||
passenv = *
|
passenv = *
|
||||||
commands =
|
commands =
|
||||||
|
{toxinidir}/tools/build.py
|
||||||
ansible-galaxy collection build --force {toxinidir} --output-path {toxinidir}/build_artifact
|
ansible-galaxy collection build --force {toxinidir} --output-path {toxinidir}/build_artifact
|
||||||
/bin/bash -c "ansible-galaxy collection install $(ls {toxinidir}/build_artifact/openstack-cloud-*) --force -p {toxinidir}"
|
/bin/bash -c "ansible-galaxy collection install $(ls {toxinidir}/build_artifact/openstack-cloud-*) --force -p {toxinidir}"
|
||||||
/bin/bash -c "cd ansible_collections/openstack/cloud && ansible-test sanity"
|
/bin/bash -c "cd ansible_collections/openstack/cloud && ansible-test sanity"
|
||||||
|
|||||||
Reference in New Issue
Block a user