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.
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
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
"Skips" were highlighted with orange on one page and yellow on another. This change makes them consistent, and switches the color to "black" for accessibility reasons. (The contrast between the shades of orange and red used for skips and errors was *very* low. Indistinguishable on some screens.)
A new endpoint in the header, Catalogs, takes the user to a page with a node
table similar to that in the nodes page. This table shows the node with a
link to the node page, the catalog timestamp with a link to the catalog
page and a small form with a select field to be used to compare the
catalog of this row's node with that of another node.
This makes use of the available catalog endpoints in pypuppetdb and PuppetDB
and displays to administrators the last compiled catalog for a node,
if the variable ENABLE_CATALOG is True (defaults to False)
Added inventory page showing a table similar to the "Nodes" one,
but containing any customizable set of facts.
A setting INVENTORY_FACTS has been added. It controls the list
of facts to be displayed along with a description for the header
of the table.
When there are more than 15 unique fact values it groups the least
commonly used into an other label.
Co-authored-by: Sage Imel <sage@cat.pdx.edu>
Co-authored-by: Ryan Niebur <ryan@cat.pdx.edu>
chart.js is poorly maintained and has been disabled. c3.js
has active development and removes the need for two charts
on the facts page.
Co-authored-by: Sage Imel <sage@cat.pdx.edu>
Co-authored-by: Ryan Niebur <ryan@cat.pdx.edu>
To align with added offline resources:
* Semantic UI from 0.12.0 to 0.16.1
(0.18.0 is not yet available on cdnjs.cloudflare.com)
* jQuery TableSorter from 2.13.3 to 2.17.2
* moment.js from 2.5.1 to 2.7.0