Horizon UI for Monasca
Go to file
Doug Hellmann b526e21436 add lower-constraints job
Create a tox environment for running the unit tests against the lower
bounds of the dependencies.

Create a lower-constraints.txt to be used to enforce the lower bounds
in those tests.

Add openstack-tox-lower-constraints job to the zuul configuration.

See http://lists.openstack.org/pipermail/openstack-dev/2018-March/128352.html
for more details.

monasca-ui specific changes:
- Unlike other projects, monasca-ui does not support python3 unit tests yet.
  python2.7 is used as basepython. This should be updated to python3 later.
- Bump the the minimum version of python-monascaclient to 1.8.0
  to pass test_client unit tests.
- nose-exclude needs to bumped to 0.5.0 to run all existing unit tests.

lower-constraints.txt is modified to match the latest horizon requirements
https://review.openstack.org/#/c/555491/:
- unit tests fails with Django 1.8. It passes with Django 1.11.
  Horizon Rocky bumped the Django min version to >=1.11, so it makes sense
  to bump the Django min version to 1.11.
- django-babel needs to bumped to 0.6.2 to support Django 1.11 and 2.0.

https://review.openstack.org/555402 allows us to bump lower requirements.

Co-Authored-By: Akihiro Motoki <amotoki@gmail.com>
Change-Id: Ifd967b598db259429cc83046ae88abaf3d50e081
Depends-On: https://review.openstack.org/555034
Depends-On: https://review.openstack.org/555402
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
Signed-off-by: Akihiro Motoki <amotoki@gmail.com>
2018-04-10 16:42:22 +00:00
debian Initial installer work 2014-04-29 14:09:19 -06:00
grafana-dashboards Extended grafana dashboard to display dimensions. 2017-09-01 10:38:30 +02:00
monitoring Merge "Fix missing metric names for Alarm" 2018-04-09 09:37:16 +00:00
tools Avoid tox-install.sh 2018-03-14 21:08:44 +01:00
.gitignore Fix functions of translation 2016-02-19 18:26:21 +09:00
.gitreview Update .gitreview for new namespace 2015-10-17 22:31:15 +00:00
.zuul.yaml add lower-constraints job 2018-04-10 16:42:22 +00:00
babel-django.cfg This is a preparation for using Zanata 2016-01-28 15:34:06 +09:00
babel-djangojs.cfg This is a preparation for using Zanata 2016-01-28 15:34:06 +09:00
ChangeLog Updates for grafana 2. 2016-03-24 10:23:46 -06:00
LICENSE pypi packaging files 2014-05-30 16:52:14 -06:00
lower-constraints.txt add lower-constraints job 2018-04-10 16:42:22 +00:00
manage.py Add Apache 2.0 license to source file 2017-01-16 08:11:05 +00:00
mkdocs.yml Change repositories from stackforge to openstack 2015-10-19 09:59:14 +05:30
README.md Update README file to add description about running tests 2018-03-20 10:20:19 +01:00
requirements.txt add lower-constraints job 2018-04-10 16:42:22 +00:00
run_tests.sh Move coverage reports to cover directory 2018-03-16 14:54:20 +01:00
setup.cfg Changed author and author-email 2016-11-14 12:36:07 +05:30
setup.py Updated from global requirements 2017-03-02 11:47:16 +00:00
test-requirements.txt Drop mox3 from test-requirements.txt 2018-03-23 10:11:52 -04:00
tox.ini add lower-constraints job 2018-04-10 16:42:22 +00:00

Team and repository tags

Team and repository tags

monasca-ui

Monasca UI is implemented as a horizon plugin that adds panels to horizon. It is installed into devstack by monasca-vagrant.

#Deployment Set Up

#Development Environment Set Up

##Get the Code

git clone https://git.openstack.org/openstack/monasca-ui.git  # clone monasca-ui
git clone https://git.openstack.org/openstack/horizon.git  # clone horizon
git clone https://github.com/twc-openstack/grafana.git  # clone grafana
git clone https://github.com/twc-openstack/grafana-plugins.git # clone grafana plugins

##Set up Horizon

Since Monasca UI is a horizon plugin the first step is to get their development environment set up.

cd horizon
./run_tests.sh
cp openstack_dashboard/local/local_settings.py.example openstack_dashboard/local/local_settings.py

Pro Tip: Make sure you have horizon running correctly before proceeding. For more details go to http://docs.openstack.org/developer/horizon/quickstart.html#setup

##Set up Monasca-UI

  • Edit openstack_dashboard/local/local_settings.py to modify the OPENSTACK_HOST IP address to point to devstack.
  • Add monasca-client to requirements.txt. Get the latest version from https://pypi.python.org/pypi/python-monascaclient
  • Link monasca into Horizon:
ln -sf $(pwd)/../monasca-ui/monitoring/enabled/_50_admin_add_monitoring_panel.py \
    $(pwd)/openstack_dashboard/enabled/_50_admin_add_monitoring_panel.py
ln -sf $(pwd)/../monasca-ui/monitoring/conf/monitoring_policy.json \
    $(pwd)/openstack_dashboard/conf/monitoring_policy.json
ln -sfF $(pwd)/../monasca-ui/monitoring $(pwd)/monitoring
./run_tests #load monasca-client into virtualenv

##Set up Grafana 2.6

##Start Server

./run_tests.sh --runserver

##Removing notification panel If you want to disable the notification panel copy over _70_remove_monasca_notification_panel to the openstack_dashboard/enabled directory

Style checks

To check if the code follows python coding style, run the following command from the root directory of this project:

$ tox -e pep8

Coverage checks

To measure the code coverage, run the following command from the root directory of this project:

$ tox -e cover

Unit tests

To run all the unit test cases, run the following command from the root directory of this project:

$ tox -e py27

#License

Copyright (c) 2014 Hewlett-Packard Development Company, L.P.

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.