
The original CLI is based on click, but includes all options stacked on one main method. This is in contrast to other Airship CLIs such as Pegleg which utilizes click's nesting features to organize its CLI into multiple groups and commands that each have their own options. This change separates the Spyglass CLI into three different commands: generate intermediary, generate manifests, and generate manifests from intermediary. Adds a 'verbose' flag on Spyglass. Defaults plugin to 'tugboat'. Adds validation for options that apply specifically to tugboat or formation. Related docs change: https://review.opendev.org/#/c/650137/ Change-Id: I92e5f040d5205c3ab36ec1d46ecd57bc97849cef
47 lines
1.4 KiB
Python
Executable File
47 lines
1.4 KiB
Python
Executable File
# Copyright 2018 AT&T Intellectual Property. All other 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.
|
|
|
|
from setuptools import find_packages
|
|
from setuptools import setup
|
|
|
|
setup(
|
|
name='spyglass',
|
|
version='0.0.1',
|
|
description='Generate Airship specific yaml manifests from data sources',
|
|
url='https://opendev.org/airship/spyglass.git',
|
|
python_requires='>=3.5.0',
|
|
license='Apache 2.0',
|
|
packages=find_packages(),
|
|
install_requires=[
|
|
'jsonschema',
|
|
'Click',
|
|
'openpyxl',
|
|
'netaddr',
|
|
'pyyaml',
|
|
'jinja2',
|
|
],
|
|
entry_points={
|
|
'console_scripts': [
|
|
'spyglass=spyglass.cli:main',
|
|
],
|
|
'data_extractor_plugins': [
|
|
'formation='
|
|
'spyglass.data_extractor.plugins.formation:FormationPlugin',
|
|
'tugboat='
|
|
'spyglass.data_extractor.plugins.tugboat.tugboat:TugboatPlugin',
|
|
]
|
|
},
|
|
include_package_data=True,
|
|
)
|