Skip to content

Hash Reports#997

Open
matt852 wants to merge 12 commits intonautobot:developfrom
matt852:26-hash-reports
Open

Hash Reports#997
matt852 wants to merge 12 commits intonautobot:developfrom
matt852:26-hash-reports

Conversation

@matt852
Copy link
Copy Markdown
Contributor

@matt852 matt852 commented Sep 12, 2025

Add config hashes and hash reports

Closes: #26

What's Changed

This feature adds config hashes and hash reports. The config hashes are generated for any non-compliant config, both actual and intended config. The reporting page will show any groups of two or more devices that share identical hashes. It will not show individual has groups where only one device has it (aka no matches with other devices).

Screenshots

Screenshot 2025-09-12 at 4 41 12 PM Screenshot 2025-09-12 at 4 41 21 PM Screenshot 2025-09-12 at 4 41 28 PM
  • Explanation of Change(s)
  • Added change log fragment(s) (for more information see the documentation)
  • Attached Screenshots, Payload Example
  • Unit, Integration Tests
  • Documentation Updates (when adding/changing features)
  • Outline Remaining Work, Constraints from Design

@itdependsnetworks
Copy link
Copy Markdown
Contributor

First off thanks for this!! Will take a but to review, would be good to get screenshots as well.

On the hash report page, I added a button to automatically generate remediation config plans for a matching config group. However, I struggled a little with getting it to use the same pop-up model that is used when adding a config plan. Instead, my button automatically runs the job and redirect to the job result page.

We should either

  • user job button
  • Figure out the modal issue

@matt852 matt852 marked this pull request as draft September 12, 2025 20:06
@matt852
Copy link
Copy Markdown
Contributor Author

matt852 commented Sep 12, 2025

@itdependsnetworks Screenshots attached. Leaving in Draft mode for now as I'm looking for feedback on the models and PR overall before I continue further.

Thanks!

@itdependsnetworks
Copy link
Copy Markdown
Contributor

attached where?

@matt852
Copy link
Copy Markdown
Contributor Author

matt852 commented Sep 13, 2025

attached where?

Forgot to save them. In the original comments now.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Sep 25, 2025

Coverage report

Click to see where and how coverage changed

FileStatementsMissingCoverageCoverage
(new stmts)
Lines missing
  nautobot_golden_config
  filters.py 166, 187, 242, 280-327
  forms.py
  jobs.py 562-563
  models.py 488-489
  navigation.py
  tables.py 609
  urls.py
  views.py 813-816, 824-825, 866, 939-946, 949, 962-963, 999-1000, 1005-1020
  nautobot_golden_config/api
  serializers.py
  urls.py
  views.py
  nautobot_golden_config/utilities
  hash_utils.py
Project Total  

This report was generated by python-coverage-comment-action

@matt852 matt852 marked this pull request as ready for review September 25, 2025 20:44
@matt852
Copy link
Copy Markdown
Contributor Author

matt852 commented Dec 19, 2025

Rebased and tested with NB v3.0.0

@itdependsnetworks
Copy link
Copy Markdown
Contributor

@matt852 thanks!! Will try and look to give this a proper review early in Jan.

@matt852
Copy link
Copy Markdown
Contributor Author

matt852 commented Apr 28, 2026

@itdependsnetworks @jeffkala Updates applied:

  • Reduced new Javascript code and consolidated to use existing Modal logic
  • Truncated hashes displayed to the first 7 characters
  • Updated filtering on Hash pages
  • Updated device count for hash grouping to use existing pattern of white number in a blue box

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Hash Reports

2 participants