This (re-)fixes https://github.com/voxpupuli/puppetboard/issues/220
Corner cases where new installations or empty environments will return
zero resources and zero nodes, this will result in a ZeroDivisionError.
Now if this happens setting the average-resources-per-node to zero.
This fixes https://github.com/voxpupuli/puppetboard/issues/234
The report_latest() function was effectively deprecated when PuppetDB
introduced the latest_report_hash field in the Nodes endpoint response
format in version 3.2. With the breaking changes to PuppetDB 4.0.0
support this function can be safely removed.
This fixes https://github.com/voxpupuli/puppetboard/issues/229
This menu provides a very user friendly interface for rendering the pagination
section, which is available in version 2.1.8. Updating the render_pagination
macro use the new HTML classes.
This fixes https://github.com/voxpupuli/puppetboard/issues/230
If there are any connection issues between PuppetBoard and the PuppetDB
instance there wasn't any obvious evidence in log files. This additional
logging added to utils.py logs errors whenever there is an HTTPError,
ConnectionError or EmptyResponseError in get_or_abort.
* puppetboard/app.py: Adding Radiator view
Part 2 of https://github.com/voxpupuli/puppetboard/issues/70
This is a refactoring of the changes in https://github.com/voxpupuli/puppetboard/pull/100.
Adds a simple Heads-Up Display of the last run statuses of managed nodes,
either environment filtered or not.
* puppetboard/app.py: Fixing environment filters and metric strings.
* The names of the population metrics have changes in PuppetDB 4.0, the initial
commit used the metric names from PuppetDB 2.x.
* The main nodes query did not include a query string to filter on environments.
* Update to Semantic UI 2.1.6
Basically I tried to rebuild the old layout as closely as possible.
It is a bit more mobile friendly but still misses Semantic UIs collapsable menu:
https://github.com/Semantic-Org/Semantic-UI/issues/157
+ ditch old tablesorter for recommended one
+ use em instead of percentage for status labels in macros
Overview:
+ sort overview by report date per default
+ slightly different colors
Facts:
+ template based approach to even out the columns in facts view
+ don't show empty containers
+ needed an additional variable in context
* get rid of unnecessary semantic src files
* more cleanup
* clean jquery-tablesort directory as well
* drop unused theme files
* remove symlinks in static/{js,css}
* semantic_update
+ bump to semantic 2.1.8
+ minor adjustments
- default-sort class in tables
- table type in inventory
- fixed and wrapped table for reports
* updated screenshots
This fixes https://github.com/voxpupuli/puppetboard/issues/218
Adding environment filters to only report then number of managed nodes
and resources that are present in the current environment. Still using
the same metrics endpoint information for all environments.
I really did not want to resort to this but I could not find any answers
from previously asked questions on the subject. The template is properly
creating the csrf_token hidden field which is being submitted to the server,
but I could not figure out why it was not using it it.
This fixes https://github.com/voxpupuli/puppetboard/issues/198
This will not be permanent, will have to look into upgrading the flask-wtf
and WTForms packages to the latest versions.
Fixes https://github.com/voxpupuli/puppetboard/issues/209
The event_count queries for the reports in the reports() and reports_node()
functions were always filtering on environments, even if all environments, *,
were selected. This update removes the environment clause from the query
string if 'All Environments' are selected
Using new Node and Catalog fields available in pypuppetdb 0.2.1
With the latest_report_hash field available on the Node object the report_latest can be partially deprecated. Will hopefully be removed in the next major/minor release.
Showing the Code ID field in the catalogs page. This is currently
unused in PuppetDB as of 3.2.2 but may be useful when it will be used
If available, using the latest_report_hash field of the node object
in the index and nodes templates for the link to the latest report
available for the node.
Updating the report_latest function in app.py to query the nodes
endpoint and redirecting using the latest_report_hash field if available.
If not query the reports endpoint for the node's latest report.
Fixed https://github.com/puppet-community/puppetboard/issues/193
Fixed Semantic UI tables set a fixed position on the applied tables
that do not affect the alignment with narrow browser windows. Downside
of this approach is that users will have to scroll horizontally to view
the entire catalog comparison.
In the previous commit the environment loading was moving to each request
and that functionality change was not reflected in the error processor
functions (for 4xx and 5xx series errors)
Moving the global environment list from a global context to a functional
context because octomike reported that the environment list in his environment
was not being refreshed.
Adding CHANGELOG entries for 0.1.1 and this new change.
Allow to list all nodes again (remove environment filter)
Adding a configurable default environment setting in case some environments to not have a 'production' environment.
Adding a '*' option to remove environment filters.
puppetboard: Adding PuppetDB 3.x support
Some of the implementations here is:
- Environment Awareness with a dropdown menu to switch environments
- First implementation of pagination in the form of a macro for flexibility
- Use of the PuppetDB 3.x APIs, therefore PuppetDB 2.x compatibility is broken
@daenney would rather have the footer reference the Puppet Community organization
than completing removing this bar.
Also adding a reference in README.rst about the available Google Group
Moving the envs variable out of the functions scope to the global scope,
this enables each function to reference and use these values.
Adding a new function check_env() to standardize the way to ensure that
the request environment exists, if it doesn't then abort with a 404.
This reduces 16 blocks of code and is in line with @daenney's suggestions
This bar reduces the available vertical space and other maintainers feel
it better to remove it than to modify it.
Also reducing the specific mention of @daenney from README.rst since he
has steped down as main project maintainer.
b4f74e240d
Making catalog tables searchable
7a8ddde6ca
Navbar style/naming simplifications
e8fea997fd
Creating Semantic UI Menu for environment switching instead of select menu
Make Puppetboard work with the PuppetDB V4 api
This PR just enables the basic functionality of PuppetBoard with the new PyPuppetDB version. https://github.com/puppet-community/puppetboard/pull/176 includes this work as well as other work to make better utilization of the new library
Some excerpts from CHANGELOG.rst include:
- Increasing the pypuppetdb requirements from 0.1.x to 0.2.x
- The Reports page now lists reports from the reports endpoint instead of
a link to a PuppetDB issue with a feature request
- Adding a Catalogs page to view either individual node catalogs or compare
them against other nodes
- New environment awareness adds a new query parameter to all applicable
endpoints to filter results based on the current environment. If the
default environment 'production' is not available, or any other unavailable
environment, the user is redirected to the first known environment.
- Adding pagination functionality for reports (for now) based on the value of
the REPORTS_COUNT configuration option (used for the limit and the offset
calculation). Implementation also makes it possible for other UI enhancements.
- Removing the limit_reports function from puppetboard/utils.py since paging
parameters are now accepted by the pypuppetdb endpoint functions.
- Bumping the version to 0.1.0