Bug 1342987

Summary: Review Request: openstack-vitrage - OpenStack RCA (Root Cause Analysis) Engine
Product: [Community] RDO Reporter: Eyal <eyalb1>
Component: Package ReviewAssignee: Matthias Runge <mrunge>
Status: CLOSED CURRENTRELEASE QA Contact: hguemar
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: trunkCC: aguetta, apevec, brault, eyalb1, jpena, lmadsen, mrunge, mschuppe, tapio.tallgren
Target Milestone: ---Flags: mrunge: rdo-review+
Target Release: trunk   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-03-09 13:43:16 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1391892    
Bug Blocks: 1373513, 1410778    

Description Eyal 2016-06-06 09:44:24 UTC
Packaging for Vitrage URL: https://github.com/ALU-CloudBand/vitrage

SPEC URL: https://github.com/ALU-CloudBand/vitrage/blob/master/openstack-vitrage.spec

Wiki project URL: https://wiki.openstack.org/wiki/Vitrage

Description: This project contains Vitrage Root Cause Analysis Engine

Comment 1 hguemar 2016-07-04 10:50:13 UTC
Could you package latest stable? Please post link to raw spec file (here: https://raw.githubusercontent.com/ALU-CloudBand/vitrage/master/openstack-vitrage.spec) + src.rpm so we can use automated reviewing tool.


* s/pypi_name/service/

* python-oslo-config has an epoch (2), should be added to the Requirements

* same for python-keystoneclient (epoch: 1)

* if tests subpackage pull pull python-vitrage, then no need to include license in the former. Requirement is to ensure that it is installed in any combination of subpackages installed

* can vitrage use oslo-config-generation to generate config files?

Comment 2 Eyal 2016-07-04 12:30:16 UTC
Packaging for Vitrage URL: https://github.com/ALU-CloudBand/vitrage

SPEC URL: https://github.com/ALU-CloudBand/vitrage/blob/master/openstack-vitrage.spec

SRPM URL: https://github.com/ALU-CloudBand/vitrage/blob/master/openstack-vitrage-0.2.0-0.src.rpm?raw=true

Wiki project URL: https://wiki.openstack.org/wiki/Vitrage

Description: This project contains Vitrage Root Cause Analysis Engine

* s/pypi_name/service/ [Done]

* python-oslo-config has an epoch (2), should be added to the Requirements [Done]

* same for python-keystoneclient (epoch: 1) [Done]

* if tests subpackage pull pull python-vitrage, then no need to include license in the former. Requirement is to ensure that it is installed in any combination of subpackages installed [Done]

* can vitrage use oslo-config-generation to generate config files? [yes Done]

Comment 3 Javier Peña 2016-09-12 11:16:56 UTC
During a test build, it failed with the following message:

+ oslo-config-generator --config-file=etc/vitrage/vitrage-config-generator.conf
Traceback (most recent call last):
  File "/usr/bin/oslo-config-generator", line 10, in <module>
    sys.exit(main())
  File "/usr/lib/python2.7/site-packages/oslo_config/generator.py", line 479, in main
    generate(conf)
  File "/usr/lib/python2.7/site-packages/oslo_config/generator.py", line 461, in generate
    groups = _get_groups(_list_opts(conf.namespace))
  File "/usr/lib/python2.7/site-packages/oslo_config/generator.py", line 377, in _list_opts
    loaders = _get_raw_opts_loaders(namespaces)
  File "/usr/lib/python2.7/site-packages/oslo_config/generator.py", line 349, in _get_raw_opts_loaders
    invoke_on_load=False)
  File "/usr/lib/python2.7/site-packages/stevedore/named.py", line 69, in __init__
    verify_requirements)
  File "/usr/lib/python2.7/site-packages/stevedore/extension.py", line 171, in _load_plugins
    self._on_load_failure_callback(self, ep, err)
  File "/usr/lib/python2.7/site-packages/stevedore/extension.py", line 163, in _load_plugins
    verify_requirements,
  File "/usr/lib/python2.7/site-packages/stevedore/named.py", line 146, in _load_one_plugin
    verify_requirements,
  File "/usr/lib/python2.7/site-packages/stevedore/extension.py", line 191, in _load_one_plugin
    plugin = ep.resolve()
  File "/usr/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2235, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "/builddir/build/BUILD/vitrage-0.2.0/vitrage/opts.py", line 27, in <module>
    import vitrage.rpc
  File "/builddir/build/BUILD/vitrage-0.2.0/vitrage/rpc.py", line 18, in <module>
    import oslo_messaging as messaging
ImportError: No module named oslo_messaging
error: Bad exit status from /var/tmp/rpm-tmp.Cn7uMb (%build)
    Bad exit status from /var/tmp/rpm-tmp.Cn7uMb (%build)
RPM build errors:
Child return code was: 1

It looks like some build requirements are missing, and they are needed to create the configuration file (also possibly the documentation).

Comment 4 Eyal 2016-09-12 12:13:28 UTC
updated the spec file with 

BuildRequires:    python-oslo-messaging

Comment 5 Leif Madsen 2016-10-13 18:50:55 UTC
I was working through this a bit by trying to build it with DLRN, and ran into a dependency issue with SymPy (doesn't appear to be packaged with CentOS).

I also had to make a few changes so that the .spec file would work with dlrn. You can see the changes here:

https://github.com/leifmadsen/vitrage/commit/517a51509d6ec417b4762f8cb93951e0e0114c7c

Comment 6 Eyal 2016-10-16 08:35:10 UTC
I found the sympy rpm here

http://rpm.pbone.net/index.php3/stat/4/idpl/31075242/dir/redhat_el_7/com/sympy-0.7.6-2.el7.noarch.rpm.html

note that it has also dependencies:
 python-gmpy2
 python-matplotlib
 python-pyglet
 python-fastcache
 python-mpmath

which I also needed to download

Comment 7 Alan Pevec 2016-10-17 23:57:44 UTC
> I found the sympy rpm here
added to RDO common repo:
http://cbs.centos.org/koji/buildinfo?buildID=12768

> note that it has also dependencies:

>  python-gmpy2
added to RDO common repo:
http://cbs.centos.org/koji/buildinfo?buildID=12771

>  python-matplotlib
This one is base EL7 https://fedoraproject.org/wiki/EPEL/epel7

>  python-pyglet
added to RDO common repo:
http://cbs.centos.org/koji/buildinfo?buildID=12773

>  python-fastcache
added to RDO common repo:
http://cbs.centos.org/koji/buildinfo?buildID=12770
and its dep pycmd:
http://cbs.centos.org/koji/buildinfo?buildID=12769

>  python-mpmath
added to RDO common repo:
http://cbs.centos.org/koji/buildinfo?buildID=12772

Comment 8 Matthias Runge 2016-10-27 13:14:47 UTC
adding the links to SPEC and SRPM in a form that fedora-review can benefit from it

SPEC: https://raw.githubusercontent.com/ALU-CloudBand/vitrage/master/openstack-vitrage.spec 

SRPM URL: https://github.com/ALU-CloudBand/vitrage/blob/master/openstack-vitrage-0.2.0-0.src.rpm?raw=true

Comment 9 Matthias Runge 2016-10-31 12:24:54 UTC
There is a missing build dependency to oslo-config-generator

Comment 10 Eyal 2016-10-31 12:52:21 UTC
added

BuildRequires:    python-oslo-config

Comment 11 Matthias Runge 2016-10-31 16:18:18 UTC
Can you please refresh the srpm? Btw. your packaged version is 0.2.0, where upstream has 1.3.0. (Yes I know, that doesn't really matter for RDO)


While building: 
+ PYTHONPATH=.
+ oslo-config-generator --config-file=etc/vitrage/vitrage-config-generator.conf
Traceback (most recent call last):
  File "/usr/bin/oslo-config-generator", line 10, in <module>
    sys.exit(main())
  File "/usr/lib/python2.7/site-packages/oslo_config/generator.py", line 479, in main
    generate(conf)
  File "/usr/lib/python2.7/site-packages/oslo_config/generator.py", line 461, in generate
    groups = _get_groups(_list_opts(conf.namespace))
  File "/usr/lib/python2.7/site-packages/oslo_config/generator.py", line 377, in _list_opts
    loaders = _get_raw_opts_loaders(namespaces)
  File "/usr/lib/python2.7/site-packages/oslo_config/generator.py", line 349, in _get_raw_opts_loaders
    invoke_on_load=False)
  File "/usr/lib/python2.7/site-packages/stevedore/named.py", line 69, in __init__
    verify_requirements)
  File "/usr/lib/python2.7/site-packages/stevedore/extension.py", line 171, in _load_plugins
    self._on_load_failure_callback(self, ep, err)
  File "/usr/lib/python2.7/site-packages/stevedore/extension.py", line 163, in _load_plugins
    verify_requirements,
  File "/usr/lib/python2.7/site-packages/stevedore/named.py", line 146, in _load_one_plugin
    verify_requirements,
  File "/usr/lib/python2.7/site-packages/stevedore/extension.py", line 191, in _load_one_plugin
    plugin = ep.resolve()
  File "/usr/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2274, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "/builddir/build/BUILD/vitrage-1.3.0/vitrage/opts.py", line 22, in <module>
    import vitrage.clients
  File "/builddir/build/BUILD/vitrage-1.3.0/vitrage/clients.py", line 15, in <module>
    import keystoneauth1.identity.v2 as v2
ImportError: No module named keystoneauth1.identity.v2
error: Bad exit status from /var/tmp/rpm-tmp.pKRzTh (%build)

it looks like you're missing keystoneauth1 as dependency as well.

Comment 12 Matthias Runge 2016-10-31 19:35:22 UTC
it doesn't build in it's current form. 

A few changes were necessary, see 
https://raw.githubusercontent.com/mrunge/openstack-vitrage/master/openstack-vitrage.spec

I strongly suggest to move the client to a separate package, see https://bugzilla.redhat.com/show_bug.cgi?id=1379786

The checks are currently not being executed. It's currently blocking on python-vitrageclient not available (yet)

SPEC: http://www.matthias-runge.de/fedora/openstack-vitrage.spec
SRPM: http://www.matthias-runge.de/fedora/openstack-vitrage-1.3.0-1.src.rpm

Comment 13 Eyal 2016-11-01 13:20:58 UTC
Are you sure vitrage client is needed for building

I think it's needed just for packaging the tests

I also didn't see the python-keystoneauth1 rpm build dependency in you spec file

Comment 14 Leif Madsen 2016-11-01 13:35:14 UTC
Not sure if this is useful, but this is what I needed to do to get through some of the build process, but this may be superceded by the work Matthias has done. I haven't had a chance to look through his changes yet.

https://github.com/ALU-CloudBand/vitrage/pull/1

Comment 15 Alan Pevec 2016-12-09 17:18:28 UTC
Is the current draft spec ready for the initial import review in RDO gerrit?

Note that to proceed with Step 2. in https://www.rdoproject.org/documentation/rdo-packaging/#how-to-add-a-new-package-to-rdo-trunk we need only licensecheck here. Rest of the specfile review can then happen in gerrit.
After it gets merged, we can add srpm/spec links back here just for final report using fedora-review tool.

Comment 16 Alan Pevec 2016-12-09 17:21:56 UTC
licensecheck output:

vitrage/.gitreview: *No copyright* UNKNOWN
vitrage/.testr.conf: *No copyright* UNKNOWN
vitrage/CONTRIBUTING.rst: *No copyright* UNKNOWN
vitrage/HACKING.rst: *No copyright* UNKNOWN
vitrage/LICENSE: *No copyright* Apache (v2.0)
vitrage/README.rst: *No copyright* UNKNOWN
vitrage/babel.cfg: *No copyright* UNKNOWN
vitrage/initial.txt: *No copyright* UNKNOWN
vitrage/openstack-common.conf: *No copyright* UNKNOWN
vitrage/requirements.txt: *No copyright* UNKNOWN
vitrage/run_vitrage_tempest.sh: *No copyright* UNKNOWN
vitrage/setup.cfg: *No copyright* Apache
vitrage/setup.py: Apache (v2.0) GENERATED FILE
vitrage/test-requirements.txt: *No copyright* UNKNOWN
vitrage/tox.ini: *No copyright* UNKNOWN
vitrage/devstack/README.rst: *No copyright* UNKNOWN
vitrage/devstack/apache-vitrage.template: *No copyright* UNKNOWN
vitrage/devstack/gate_hook.sh: Apache (v2.0)
vitrage/devstack/plugin.sh: *No copyright* UNKNOWN
vitrage/devstack/post_test_hook.sh: Apache (v2.0)
vitrage/devstack/pre_test_hook.sh: Apache (v2.0)
vitrage/devstack/settings: *No copyright* UNKNOWN
vitrage/vitrage/__init__.py: Apache (v2.0)
vitrage/vitrage/i18n.py: Apache (v2.0)
vitrage/vitrage/keystone_client.py: Apache (v2.0)
vitrage/vitrage/messaging.py: Apache (v2.0)
vitrage/vitrage/opts.py: Apache (v2.0)
vitrage/vitrage/os_clients.py: Apache (v2.0)
vitrage/vitrage/rpc.py: Apache (v2.0)
vitrage/vitrage/service.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/README.rst: *No copyright* UNKNOWN
vitrage/vitrage_tempest_tests/__init__.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/config.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/plugin.py: Apache (v2.0)
vitrage/doc/source/add-new-datasource.rst: *No copyright* UNKNOWN
vitrage/doc/source/alarm-severity-config.rst: *No copyright* UNKNOWN
vitrage/doc/source/conf.py: *No copyright* Apache (v2.0)
vitrage/doc/source/host_high_memory_consumption.yaml: *No copyright* UNKNOWN
vitrage/doc/source/index.rst: *No copyright* UNKNOWN
vitrage/doc/source/installation-and-configuration.rst: *No copyright* UNKNOWN
vitrage/doc/source/nagios-config.rst: *No copyright* UNKNOWN
vitrage/doc/source/nagios-devstack-installation.rst: *No copyright* UNKNOWN
vitrage/doc/source/notifier-aodh-plugin.rst: *No copyright* UNKNOWN
vitrage/doc/source/resource-state-config.rst: *No copyright* UNKNOWN
vitrage/doc/source/scenario-evaluator.rst: *No copyright* UNKNOWN
vitrage/doc/source/static-physical-config.rst: *No copyright* UNKNOWN
vitrage/doc/source/template_validation_status_code.rst: *No copyright* UNKNOWN
vitrage/doc/source/vitrage-api.rst: *No copyright* Apache (v2.0)
vitrage/doc/source/vitrage-first_steps.rst: *No copyright* UNKNOWN
vitrage/doc/source/vitrage-graph-design.rst: *No copyright* UNKNOWN
vitrage/doc/source/vitrage-template-format.rst: *No copyright* UNKNOWN
vitrage/doc/source/vitrage-use-cases.rst: *No copyright* UNKNOWN
vitrage/doc/source/zabbix_vitrage.rst: *No copyright* UNKNOWN
vitrage/etc/vitrage/README-vitrage.conf.txt: *No copyright* UNKNOWN
vitrage/etc/vitrage/alarms.sample.json: *No copyright* UNKNOWN
vitrage/etc/vitrage/api-paste.ini: *No copyright* UNKNOWN
vitrage/etc/vitrage/graph.sample.json: *No copyright* UNKNOWN
vitrage/etc/vitrage/policy.json: *No copyright* UNKNOWN
vitrage/etc/vitrage/rca.sample.json: *No copyright* UNKNOWN
vitrage/etc/vitrage/vitrage-config-generator.conf: *No copyright* UNKNOWN
vitrage/etc/vitrage/vitrage.conf.sample: *No copyright* UNKNOWN
vitrage/releasenotes/source/conf.py: *No copyright* Apache (v2.0)
vitrage/releasenotes/source/index.rst: *No copyright* UNKNOWN
vitrage/releasenotes/source/unreleased.rst: *No copyright* UNKNOWN
vitrage/vitrage/api/__init__.py: Apache (v2.0)
vitrage/vitrage/api/app.py: *No copyright* Apache (v2.0)
vitrage/vitrage/api/app.wsgi: *No copyright* Apache (v2.0)
vitrage/vitrage/api/hooks.py: *No copyright* Apache (v2.0)
vitrage/vitrage/api/policy.py: *No copyright* Apache (v2.0)
vitrage/vitrage/api_handler/__init__.py: Apache (v2.0)
vitrage/vitrage/api_handler/service.py: Apache (v2.0)
vitrage/vitrage/cmd/__init__.py: Apache (v2.0)
vitrage/vitrage/cmd/api.py: Apache (v2.0)
vitrage/vitrage/cmd/graph.py: Apache (v2.0)
vitrage/vitrage/cmd/notifier.py: Apache (v2.0)
vitrage/vitrage/common/__init__.py: Apache (v2.0)
vitrage/vitrage/common/constants.py: Apache (v2.0)
vitrage/vitrage/common/exception.py: Apache (v2.0)
vitrage/vitrage/common/utils.py: Apache (v2.0)
vitrage/vitrage/datasources/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/alarm_driver_base.py: Apache (v2.0)
vitrage/vitrage/datasources/alarm_properties.py: Apache (v2.0)
vitrage/vitrage/datasources/alarm_transformer_base.py: Apache (v2.0)
vitrage/vitrage/datasources/driver_base.py: Apache (v2.0)
vitrage/vitrage/datasources/launcher.py: Apache (v2.0)
vitrage/vitrage/datasources/listener_service.py: Apache (v2.0)
vitrage/vitrage/datasources/rescheduler.py: Apache (v2.0)
vitrage/vitrage/datasources/resource_transformer_base.py: Apache (v2.0)
vitrage/vitrage/datasources/services.py: Apache (v2.0)
vitrage/vitrage/datasources/transformer_base.py: Apache (v2.0)
vitrage/vitrage/db/__init__.py: Apache (v2.0)
vitrage/vitrage/entity_graph/__init__.py: Apache (v2.0)
vitrage/vitrage/entity_graph/initialization_status.py: Apache (v2.0)
vitrage/vitrage/entity_graph/service.py: Apache (v2.0)
vitrage/vitrage/entity_graph/transformer_manager.py: Apache (v2.0)
vitrage/vitrage/evaluator/__init__.py: Apache (v2.0)
vitrage/vitrage/evaluator/base.py: Apache (v2.0)
vitrage/vitrage/evaluator/scenario_evaluator.py: Apache (v2.0)
vitrage/vitrage/evaluator/scenario_repository.py: Apache (v2.0)
vitrage/vitrage/evaluator/template_data.py: Apache (v2.0)
vitrage/vitrage/evaluator/template_fields.py: Apache (v2.0)
vitrage/vitrage/graph/__init__.py: Apache (v2.0)
vitrage/vitrage/graph/filter.py: Apache (v2.0)
vitrage/vitrage/graph/query.py: Apache (v2.0)
vitrage/vitrage/graph/utils.py: Apache (v2.0)
vitrage/vitrage/notifier/__init__.py: Apache (v2.0)
vitrage/vitrage/notifier/service.py: Apache (v2.0)
vitrage/vitrage/tests/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/base.py: Apache (v2.0)
vitrage/vitrage/utils/__init__.py: Apache (v2.0)
vitrage/vitrage/utils/datetime.py: Apache (v2.0)
vitrage/vitrage/utils/file.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/__init__.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/base_mock.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/run_vitrage_env.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/stop_vitrage_env.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/utils.py: Apache (v2.0)
vitrage/devstack/files/tempest/tempest.conf: Apache (v2.0)
vitrage/doc/source/images/add_aodh_alarm_flow.png: UNKNOWN
vitrage/doc/source/images/add_aodh_alarm_graph.png: UNKNOWN
vitrage/doc/source/images/add_nova_instance_flow.png: UNKNOWN
vitrage/doc/source/images/add_nova_instance_graph.png: UNKNOWN
vitrage/doc/source/images/complex_rca_graph.png: UNKNOWN
vitrage/doc/source/images/low_level_design.png: UNKNOWN
vitrage/doc/source/images/nagios_causes_deduced_flow.png: UNKNOWN
vitrage/doc/source/images/nagios_causes_deduced_graph.png: UNKNOWN
vitrage/doc/source/images/rca_flow.png: UNKNOWN
vitrage/doc/source/images/rca_graph.png: UNKNOWN
vitrage/doc/source/images/vitrage_graph_architecture.png: UNKNOWN
vitrage/etc/vitrage/datasources_values/aodh.yaml: *No copyright* UNKNOWN
vitrage/etc/vitrage/datasources_values/cinder.volume.yaml: *No copyright* UNKNOWN
vitrage/etc/vitrage/datasources_values/heat.stack.yaml: *No copyright* UNKNOWN
vitrage/etc/vitrage/datasources_values/nagios.yaml: *No copyright* UNKNOWN
vitrage/etc/vitrage/datasources_values/neutron.network.yaml: *No copyright* UNKNOWN
vitrage/etc/vitrage/datasources_values/neutron.port.yaml: *No copyright* UNKNOWN
vitrage/etc/vitrage/datasources_values/nova.host.yaml: *No copyright* UNKNOWN
vitrage/etc/vitrage/datasources_values/nova.instance.yaml: *No copyright* UNKNOWN
vitrage/etc/vitrage/datasources_values/nova.zone.yaml: *No copyright* UNKNOWN
vitrage/etc/vitrage/datasources_values/openstack.cluster.yaml: *No copyright* UNKNOWN
vitrage/etc/vitrage/datasources_values/static_physical.yaml: *No copyright* UNKNOWN
vitrage/etc/vitrage/datasources_values/switch.yaml: *No copyright* UNKNOWN
vitrage/etc/vitrage/datasources_values/vitrage.yaml: *No copyright* UNKNOWN
vitrage/etc/vitrage/datasources_values/zabbix.yaml: *No copyright* UNKNOWN
vitrage/etc/vitrage/templates.sample/host_high_cpu_load_scenarios.yaml: *No copyright* UNKNOWN
vitrage/vitrage/api/controllers/rest.py: Apache (v2.0)
vitrage/vitrage/api/controllers/root.py: *No copyright* Apache (v2.0)
vitrage/vitrage/api_handler/apis/__init__.py: Apache (v2.0)
vitrage/vitrage/api_handler/apis/alarm.py: Apache (v2.0)
vitrage/vitrage/api_handler/apis/base.py: Apache (v2.0)
vitrage/vitrage/api_handler/apis/rca.py: Apache (v2.0)
vitrage/vitrage/api_handler/apis/template.py: Apache (v2.0)
vitrage/vitrage/api_handler/apis/topology.py: Apache (v2.0)
vitrage/vitrage/datasources/aodh/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/aodh/driver.py: Apache (v2.0)
vitrage/vitrage/datasources/aodh/properties.py: Apache (v2.0)
vitrage/vitrage/datasources/aodh/transformer.py: Apache (v2.0)
vitrage/vitrage/datasources/cinder/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/consistency/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/consistency/transformer.py: Apache (v2.0)
vitrage/vitrage/datasources/heat/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/nagios/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/nagios/config.py: Apache (v2.0)
vitrage/vitrage/datasources/nagios/driver.py: Apache (v2.0)
vitrage/vitrage/datasources/nagios/parser.py: Apache (v2.0)
vitrage/vitrage/datasources/nagios/properties.py: Apache (v2.0)
vitrage/vitrage/datasources/nagios/transformer.py: Apache (v2.0)
vitrage/vitrage/datasources/neutron/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/neutron/base.py: Apache (v2.0)
vitrage/vitrage/datasources/nova/__init__.py: *No copyright* Apache (v2.0)
vitrage/vitrage/datasources/nova/nova_driver_base.py: Apache (v2.0)
vitrage/vitrage/datasources/static/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/static/driver.py: Apache (v2.0)
vitrage/vitrage/datasources/static/transformer.py: Apache (v2.0)
vitrage/vitrage/datasources/static_physical/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/static_physical/driver.py: Apache (v2.0)
vitrage/vitrage/datasources/static_physical/transformer.py: Apache (v2.0)
vitrage/vitrage/datasources/zabbix/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/zabbix/driver.py: Apache (v2.0)
vitrage/vitrage/datasources/zabbix/properties.py: Apache (v2.0)
vitrage/vitrage/datasources/zabbix/transformer.py: Apache (v2.0)
vitrage/vitrage/entity_graph/consistency/__init__.py: Apache (v2.0)
vitrage/vitrage/entity_graph/consistency/consistency_enforcer.py: Apache (v2.0)
vitrage/vitrage/entity_graph/consistency/service.py: Apache (v2.0)
vitrage/vitrage/entity_graph/mappings/__init__.py: Apache (v2.0)
vitrage/vitrage/entity_graph/mappings/alarm_handler.py: Apache (v2.0)
vitrage/vitrage/entity_graph/mappings/datasource_info_mapper.py: Apache (v2.0)
vitrage/vitrage/entity_graph/mappings/handler_base.py: Apache (v2.0)
vitrage/vitrage/entity_graph/mappings/operational_alarm_severity.py: Apache (v2.0)
vitrage/vitrage/entity_graph/mappings/operational_resource_state.py: Apache (v2.0)
vitrage/vitrage/entity_graph/mappings/resource_handler.py: Apache (v2.0)
vitrage/vitrage/entity_graph/processor/__init__.py: Apache (v2.0)
vitrage/vitrage/entity_graph/processor/base.py: Apache (v2.0)
vitrage/vitrage/entity_graph/processor/entity_graph.py: Apache (v2.0)
vitrage/vitrage/entity_graph/processor/notifier.py: Apache (v2.0)
vitrage/vitrage/entity_graph/processor/processor.py: Apache (v2.0)
vitrage/vitrage/entity_graph/processor/processor_utils.py: Apache (v2.0)
vitrage/vitrage/evaluator/actions/__init__.py: Apache (v2.0)
vitrage/vitrage/evaluator/actions/action_executor.py: Apache (v2.0)
vitrage/vitrage/evaluator/actions/base.py: Apache (v2.0)
vitrage/vitrage/evaluator/actions/evaluator_event_transformer.py: Apache (v2.0)
vitrage/vitrage/evaluator/actions/priority_tools.py: Apache (v2.0)
vitrage/vitrage/evaluator/template_validation/__init__.py: Apache (v2.0)
vitrage/vitrage/evaluator/template_validation/base.py: Apache (v2.0)
vitrage/vitrage/evaluator/template_validation/status_messages.py: Apache (v2.0)
vitrage/vitrage/evaluator/template_validation/template_content_validator.py: Apache (v2.0)
vitrage/vitrage/evaluator/template_validation/template_syntax_validator.py: Apache (v2.0)
vitrage/vitrage/graph/algo_driver/__init__.py: Apache (v2.0)
vitrage/vitrage/graph/algo_driver/algorithm.py: Apache (v2.0)
vitrage/vitrage/graph/algo_driver/networkx_algorithm.py: Apache (v2.0)
vitrage/vitrage/graph/algo_driver/sub_graph_matching.py: Apache (v2.0)
vitrage/vitrage/graph/driver/__init__.py: Apache (v2.0)
vitrage/vitrage/graph/driver/elements.py: Apache (v2.0)
vitrage/vitrage/graph/driver/graph.py: Apache (v2.0)
vitrage/vitrage/graph/driver/networkx_graph.py: Apache (v2.0)
vitrage/vitrage/graph/driver/notifier.py: Apache (v2.0)
vitrage/vitrage/notifier/plugins/__init__.py: Apache (v2.0)
vitrage/vitrage/notifier/plugins/base.py: Apache (v2.0)
vitrage/vitrage/tests/functional/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/base.py: Apache (v2.0)
vitrage/vitrage/tests/mocks/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/mocks/entity_model.py: Apache (v2.0)
vitrage/vitrage/tests/mocks/mock_driver.py: Apache (v2.0)
vitrage/vitrage/tests/mocks/mock_transformer.py: Apache (v2.0)
vitrage/vitrage/tests/mocks/trace_generator.py: Apache (v2.0)
vitrage/vitrage/tests/mocks/utils.py: Apache (v2.0)
vitrage/vitrage/tests/unit/__init__.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/__init__.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/base.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/scenario/__init__.py: Apache (v2.0)
vitrage/vitrage/api/controllers/v1/__init__.py: Apache (v2.0)
vitrage/vitrage/api/controllers/v1/alarm.py: Apache (v2.0)
vitrage/vitrage/api/controllers/v1/rca.py: Apache (v2.0)
vitrage/vitrage/api/controllers/v1/resource.py: *No copyright* Apache (v2.0)
vitrage/vitrage/api/controllers/v1/root.py: *No copyright* Apache (v2.0)
vitrage/vitrage/api/controllers/v1/template.py: Apache (v2.0)
vitrage/vitrage/api/controllers/v1/topology.py: Apache (v2.0)
vitrage/vitrage/datasources/cinder/volume/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/cinder/volume/driver.py: Apache (v2.0)
vitrage/vitrage/datasources/cinder/volume/properties.py: Apache (v2.0)
vitrage/vitrage/datasources/cinder/volume/transformer.py: Apache (v2.0)
vitrage/vitrage/datasources/heat/stack/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/heat/stack/driver.py: Apache (v2.0)
vitrage/vitrage/datasources/heat/stack/transformer.py: Apache (v2.0)
vitrage/vitrage/datasources/neutron/network/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/neutron/network/driver.py: Apache (v2.0)
vitrage/vitrage/datasources/neutron/network/transformer.py: Apache (v2.0)
vitrage/vitrage/datasources/neutron/port/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/neutron/port/driver.py: Apache (v2.0)
vitrage/vitrage/datasources/neutron/port/transformer.py: Apache (v2.0)
vitrage/vitrage/datasources/nova/host/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/nova/host/driver.py: Apache (v2.0)
vitrage/vitrage/datasources/nova/host/transformer.py: Apache (v2.0)
vitrage/vitrage/datasources/nova/instance/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/nova/instance/driver.py: Apache (v2.0)
vitrage/vitrage/datasources/nova/instance/transformer.py: Apache (v2.0)
vitrage/vitrage/datasources/nova/zone/__init__.py: Apache (v2.0)
vitrage/vitrage/datasources/nova/zone/driver.py: Apache (v2.0)
vitrage/vitrage/datasources/nova/zone/transformer.py: Apache (v2.0)
vitrage/vitrage/datasources/zabbix/auxiliary/readme: *No copyright* UNKNOWN
vitrage/vitrage/datasources/zabbix/auxiliary/zabbix_vitrage.py: Apache (v2.0)
vitrage/vitrage/evaluator/actions/recipes/__init__.py: Apache (v2.0)
vitrage/vitrage/evaluator/actions/recipes/action_steps.py: Apache (v2.0)
vitrage/vitrage/evaluator/actions/recipes/add_causal_relationship.py: Apache (v2.0)
vitrage/vitrage/evaluator/actions/recipes/base.py: Apache (v2.0)
vitrage/vitrage/evaluator/actions/recipes/mark_down.py: Apache (v2.0)
vitrage/vitrage/evaluator/actions/recipes/raise_alarm.py: Apache (v2.0)
vitrage/vitrage/evaluator/actions/recipes/set_state.py: Apache (v2.0)
vitrage/vitrage/notifier/plugins/aodh/__init__.py: Apache (v2.0)
vitrage/vitrage/notifier/plugins/aodh/aodh_notifier.py: Apache (v2.0)
vitrage/vitrage/notifier/plugins/nova/__init__.py: Apache (v2.0)
vitrage/vitrage/notifier/plugins/nova/nova_notifier.py: Apache (v2.0)
vitrage/vitrage/tests/functional/api/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/api/test_versions.py: Apache (v2.0)
vitrage/vitrage/tests/functional/api_handler/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/api_handler/test_apis.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/base.py: Apache (v2.0)
vitrage/vitrage/tests/functional/entity_graph/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/evaluator/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/evaluator/test_action_executor.py: Apache (v2.0)
vitrage/vitrage/tests/functional/evaluator/test_scenario_evaluator.py: Apache (v2.0)
vitrage/vitrage/tests/resources/datasources_values/nagios.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/datasources_values/nova.host.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/datasources_values/nova.instance.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/datasources_values/nova.zone.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/datasources_values/vitrage.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/nagios/nagios-mock.html: UNKNOWN
vitrage/vitrage/tests/resources/nagios/nagios_conf.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/static_datasources/switch_to_host_datasource.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/static_datasources/switch_to_switch_datasource.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/zabbix/zabbix_conf.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/unit/datasources/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/test_datasource_update_method.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/test_rescheduler_functions.py: Apache (v2.0)
vitrage/vitrage/tests/unit/entity_graph/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/entity_graph/base.py: Apache (v2.0)
vitrage/vitrage/tests/unit/entity_graph/test_transformer_manager.py: Apache (v2.0)
vitrage/vitrage/tests/unit/evaluator/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/evaluator/test_scenario_repository.py: Apache (v2.0)
vitrage/vitrage/tests/unit/evaluator/test_template_content_validator.py: Apache (v2.0)
vitrage/vitrage/tests/unit/evaluator/test_template_data.py: Apache (v2.0)
vitrage/vitrage/tests/unit/evaluator/test_template_syntax_validator.py: Apache (v2.0)
vitrage/vitrage/tests/unit/graph/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/graph/base.py: Apache (v2.0)
vitrage/vitrage/tests/unit/graph/test_graph.py: Apache (v2.0)
vitrage/vitrage/tests/unit/graph/test_graph_algo.py: Apache (v2.0)
vitrage/vitrage/tests/unit/notifier/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/notifier/test_notifier.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/alarms/__init__.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/alarms/base.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/alarms/test_alarms.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/datasources/__init__.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/datasources/test_aodh.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/datasources/test_cinder_volume.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/datasources/test_heat_stack.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/datasources/test_neutron.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/datasources/test_nova.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/datasources/test_static_physical.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/rca/__init__.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/rca/base.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/rca/test_rca.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/templates/__init__.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/templates/base.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/templates/test_template.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/topology/__init__.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/topology/base.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/api/topology/test_topology.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/resources/heat/heat_template.yaml: *No copyright* UNKNOWN
vitrage/vitrage_tempest_tests/tests/resources/heat/policy.json-tempest: *No copyright* UNKNOWN
vitrage/vitrage_tempest_tests/tests/resources/static_physical/static_physical_configuration.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/functional/api/v1/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/api/v1/test_authentication.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/aodh/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/aodh/test_aodh.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/cinder/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/cinder/test_cinder_volume.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/heat/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/heat/test_heat_stack.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/nagios/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/nagios/test_nagios.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/neutron/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/neutron/test_neutron_network.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/neutron/test_neutron_port.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/nova/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/nova/test_nova_datasources.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/static_physical/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/datasources/static_physical/test_static_physical.py: Apache (v2.0)
vitrage/vitrage/tests/functional/entity_graph/consistency/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/entity_graph/consistency/test_consistency.py: Apache (v2.0)
vitrage/vitrage/tests/functional/entity_graph/processor/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/entity_graph/processor/test_processor.py: Apache (v2.0)
vitrage/vitrage/tests/functional/entity_graph/states/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/functional/entity_graph/states/test_datasource_info_mapper.py: Apache (v2.0)
vitrage/vitrage/tests/resources/datasources_values/erroneous_values/nagios.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/datasources_values/erroneous_values/nova.host.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/datasources_values/erroneous_values/nova.instance.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/driver/driver_consistency_update_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/driver/driver_host_snapshot_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/driver/driver_inst_snapshot_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/driver/driver_inst_snapshot_static.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/driver/driver_inst_update_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/driver/driver_nagios_snapshot_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/driver/driver_nagios_snapshot_static.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/driver/driver_stack_snapshot_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/driver/driver_stack_update_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/driver/driver_switch_snapshot_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/driver/driver_volume_snapshot_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/driver/driver_volume_update_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/driver/driver_zabbix_snapshot_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/driver/driver_zone_snapshot_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/transformer/transformer_aodh_snapshot_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/transformer/transformer_host_snapshot_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/transformer/transformer_host_snapshot_static.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/transformer/transformer_inst_snapshot_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/transformer/transformer_inst_snapshot_static.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/transformer/transformer_zone_snapshot_dynamic.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/mock_configurations/transformer/transformer_zone_snapshot_static.json: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/static_datasources/changes_datasources/switch_to_host_datasource.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/static_datasources/changes_datasources/switch_to_switch_datasource.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/templates/consistency/deduced_alarm_on_instance.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/templates/evaluator/causal_basic.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/templates/evaluator/deduced_alarm.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/templates/evaluator/deduced_state.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/templates/evaluator/deduced_state_2.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/templates/general/basic.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/resources/templates/general/host_high_cpu_load_to_instance_cpu_suboptimal.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/unit/datasources/aodh/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/aodh/test_aodh_transformer.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/cinder/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/cinder/test_cinder_volume_transformer.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/consistency/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/consistency/test_consistency_transformer.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/heat/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/heat/test_heat_stack_transformer.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/nagios/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/nagios/mock_driver.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/nagios/nagios_base_test.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/nagios/test_nagios_config.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/nagios/test_nagios_driver.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/nagios/test_nagios_parser.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/nagios/test_nagios_transformer.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/neutron/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/nova/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/nova/test_nova_host_transformer.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/nova/test_nova_instance_transformer.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/nova/test_nova_zone_transformer.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/static/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/static/test_static_driver.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/static/test_static_transformer.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/static_physical/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/static_physical/test_static_physical_driver.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/static_physical/test_static_physical_transformer.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/zabbix/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/zabbix/mock_driver.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/zabbix/test_zabbix_configuration.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/zabbix/test_zabbix_driver.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/zabbix/test_zabbix_transformer.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/zabbix/zabbix_base_test.py: Apache (v2.0)
vitrage/vitrage/tests/unit/entity_graph/processor/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/entity_graph/processor/base.py: Apache (v2.0)
vitrage/vitrage/tests/unit/entity_graph/processor/test_entity_graph.py: Apache (v2.0)
vitrage/vitrage/tests/unit/entity_graph/processor/test_processor.py: Apache (v2.0)
vitrage/vitrage/tests/unit/entity_graph/states/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/entity_graph/states/test_datasource_info_mapper.py: Apache (v2.0)
vitrage/vitrage/tests/unit/evaluator/recipes/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/evaluator/recipes/test_add_causal_relationship_recipe.py: Apache (v2.0)
vitrage/vitrage/tests/unit/evaluator/recipes/test_mark_down.py: Apache (v2.0)
vitrage/vitrage/tests/unit/evaluator/recipes/test_raise_alarm.py: Apache (v2.0)
vitrage/vitrage/tests/unit/evaluator/recipes/test_set_state_recipe.py: Apache (v2.0)
vitrage/vitrage_tempest_tests/tests/resources/templates/api/corrupted_template.yaml: *No copyright* UNKNOWN
vitrage/vitrage_tempest_tests/tests/resources/templates/api/host_aodh_alarm_for_rca.yaml: *No copyright* UNKNOWN
vitrage/vitrage_tempest_tests/tests/resources/templates/api/nagios_alarm_for_alarms.yaml: *No copyright* UNKNOWN
vitrage/vitrage/tests/unit/datasources/neutron/network/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/neutron/network/test_neutron_network_transformer.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/neutron/port/__init__.py: Apache (v2.0)
vitrage/vitrage/tests/unit/datasources/neutron/port/test_neutron_port_transformer.py: Apache (v2.0)

Project is declaring, and is actually, APLv2 licensed.

Comment 17 Matthias Runge 2016-12-12 07:26:44 UTC
Apevec, at least the installation steps should be corrected. In its current form, it still replaces files installed by horizon (i.e. those files conflict, you can not remove vitrage-dashboard without damaging horizon).

There is a patch upstream already merged, which fixes that issue. My recommendation would be to tag a release and use that later version. For continuous builds, that should be ok.

Comment 18 Alan Pevec 2016-12-21 23:28:50 UTC
(In reply to Matthias Runge from comment #17)
> it still replaces files installed by horizon (i.e. those files
> conflict, you can not remove vitrage-dashboard without damaging horizon).

@Matthias, this is openstack-vitrage review not vitrage-dashboard.

So afaict we can proceed with the initial review in review.rdo Gerrit and iterate there.

Eyal, project has been created, please upload initial spec review on rpm-master branch:
https://review.rdoproject.org/r/#/admin/projects/openstack/vitrage-distgit

Comment 19 Javier Peña 2017-01-31 15:42:33 UTC
These are the spec and SRPM files, as reviewed in Gerrit:

Spec: https://raw.githubusercontent.com/rdo-packages/vitrage-distgit/rpm-master/openstack-vitrage.spec
SRPM: http://46.231.132.68:8080/v1/AUTH_b50e80d3969f441a8b7b1fe831003e0a/rdoartifacts/50/4150/10/gate/DLRN-rpmbuild/Z7277453e88b2420aa43794801647cf00/artifacts/centos/repos/52/37/5237b7193adbd83063be592292d82166404be437_dev/openstack-vitrage-1.4.1-0.20170131153502.5237b71.el7.centos.src.rpm

Please note that the SRPM has been generated by DLRN, so some differences are expected when running fedora-review (Source0, Version and Release will differ).

Comment 20 Eyal 2017-01-31 15:50:00 UTC
Now that rpm was generated by gerrit whats next ?
Do I need to change the rdo.yaml tags for vitrage ?
Can you please create a project for vitrage-dashboard so I can upload the
initial spec for gerrit review

see  https://bugzilla.redhat.com/show_bug.cgi?id=1390608

Comment 21 Javier Peña 2017-01-31 16:07:17 UTC
There are two steps left:

- Formally approve the bz (I expect Matthias will take care of it).
- Remove the under-review tag in rdo.yml and uncomment the ocata and ocata-uc tags. That's step 5 from https://www.rdoproject.org/documentation/rdo-packaging/#how-to-add-a-new-package-to-rdo-trunk

About vitrage-dashboard, the project was already created in https://review.rdoproject.org/r/4149. We need to move to the next step and create the review for the spec file (step 3 from the process

Comment 22 Eyal 2017-02-06 11:51:20 UTC
the tags were uncommented for the rdo.yaml
whats next ?
how can I get the latest rpms from the rdo ?
what do I need to so vitrage will be also in packstack and tripleO
https://www.rdoproject.org/rdo/matrix/

Comment 23 Javier Peña 2017-02-06 12:54:02 UTC
From this bug point's of view, we are done (I can close it if there are no more open questions after this reply).

The latest rpms from RDO Trunk are available from https://trunk.rdoproject.org/centos7/current/ .

About getting support in Packstack and TripleO, we first need to have a puppet-vitrage module (I see it's already there), then we need someone to contribute the required code to Packstack and TripleO.

Comment 24 Eyal 2017-03-09 13:33:51 UTC
can this review be closed now that it is done

Comment 25 Javier Peña 2017-03-09 13:43:16 UTC
Vitrage is part of the RDO Ocata release, closing.