Skip to content

QUADS 2.0.5

Latest
Compare
Choose a tag to compare
@sadsfae sadsfae released this 19 Sep 12:26
· 1 commit to latest since this release

About 2.0.5

🍂 With Summer behind us and Autumn on the way we've got a new bugfix and minor feature release of the QUADS 2.x series. This release is a bugfix and minor feature release that also ensures compatibility with the latest versions of the Flask framework.

This will most likely be the last QUADS release that utilizes Wordpress as the QUADS wiki component as the upcoming 2.1 versions of QUADS will centralize all dynamic wiki and inventory directly into QUADS itself via quads-web, greatly simplifying the architecture and new installations.

Major Feature Highlights

  • Support for Flask 3.0+
  • Multiple roles support added to authentication
  • Huge performance improvement to quads --regen-heatmap
  • SELinux support
  • Filtering is supported on the available API endpoint
  • Systems availability WebUI updates and fixes
  • Packaging Fixes
  • Many other bug fixes

Development Statistics

  • 25+ x peer-reviewed Gerrithub patchsets
  • 70 x changes files with 794 additions and 386 deletions
  • This is the 15th release of QUADS since 23-June 2016 when 1.0 was released

Full Change List

Checking Configuration File Differences

  • It's a good idea to diff the updated quads.yml with your existing one to make note of any breaking changes
diff -u /opt/quads/conf/quads.{yml,yml.rpmnew}

Breaking Changes and Migrations

System Requirements

  • Fedora Server 39 or higher is required if using our RPM packages
  • Recommended VM with 8 x vcpu and 8 x GB of memory.

Migrating from 1.1.8

  • QUADS 2.0+ schema and database is incompatible with the 1.1 series and there are many, many intrinsic design differences and changes
  • Due to the the new architecture, design and system/code changes you should migrate to a new host for QUADS 2.0
  • We have developed migration tools to assist in moving from a production QUADS 1.1 to a QUADS 2.0.0 deployment
  • New installations do not need this.

On existing QUADS 1.1 Host

  • You should first save and export your current hosts and metadata because you'll need to import them on your QUADS 2.0 host
quads-cli --export-host-details
Metadata successfully exported to /tmp/tmp6nuzaq_9.
Metadata successfully exported.
  • Copy this file over to your QUADS 2.0.5 host
  • Next, you need to use the 1.1 host current schedules export tool export your schedules
cd /opt/quads
python quads/tools/export_current_schedules.py --output 1.1-schedules.yml
  • Now copy this over to the QUADS 2.0.5 host too

On New QUADS 2.0.5 Host

  • Import your hosts data from the first step, the file tmp6nuzaq_9 was our export from the other host.
quads --define-host-details --metadata /tmp/tmp6nuzaq_9
  • Once all of your hosts are re-created, check they have their correct interfaces defined and metadata
  • Proceed to import their current schedules
python /usr/lib/python3.12/site-packages/quads/tools/import_current_schedules.py --input 1.1-schedules.yml
  • Check that everything looks good:
quads --ls-hosts
quads --summary

Note that the RPM attached this release may contain some additional fixes since the 2.0.5 release in the future.

If you run into issues or have questions please open an Github issue or find us on libera.chat IRC #quads