Skip to content

QUADS 2.1.6

Latest
Compare
Choose a tag to compare
@sadsfae sadsfae released this 10 Dec 11:02
· 11 commits to latest since this release

About 2.1.6

🎄 Just before Christmas this release brings several major admin and tooling features as well as more production-tested bug-fixes within the 2.1 series. This is primarily a small feature release with a few bug fixes too, plus some performance improvements for quads-web when dealing with a large amount of hosts (>1000).

Major Feature Highlights

  • New tenant contact tool: notify_tenant.py
  • New commands --ls-notifications and --mod-notifications are available.
  • lab_name now allows you to set your QUADS environment name within the quads-web service
  • Visual heatmaps are now rendered in-band of flask / quads-web
  • Visual heatmaps should render the full month now
  • quads-web now uses async to speed up content renders
  • quads-web ajax lazy loading will abort to load other link navigation faster
  • quads-web now loads jquery assets locally and does not require access to the internet
  • quads-web and its /available endpoint for searching system availability can now have its Date Range manually edited.
  • Several other bug fixes

Development Statistics

  • 23 x peer-reviewed Gerrithub patch-sets
  • 31 x changed files with 930 additions and 484 deletions.
  • This is the 18th 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

  • A supported version of Fedora Server is required if using our RPM packages
  • Recommended VM with 8 x vcpu and 8 x GB of memory.
  • For full features, an existing Foreman that manages your DNS, DHCP, PXE and systems lifecycle

Migrating from 2.1.5

  • New configuration value lab_name is required in /opt/quads/conf/quads.yml

Migrating from 2.0.5

  • Several conf/quads.yml changes have been completed removed or changed.
  • Nginx vhost configuration files have changed.

Migrating from 1.1.8

Configuration File Changes

Removed Values from 2.1
wp_wiki: https://wiki.example.com
wp_username: wikiadmin
wp_password: wikipassword
wp_wiki_main_title: Lab Dashboard
wp_wiki_main_page_id: 4
wp_wiki_assignments_title: assignments
wp_wiki_assignments_page_id: 357
wp_wiki_vlans_title: Public VLAN Allocations
wp_wiki_vlans_page_id: 14244
wp_wiki_git_manage: false
wp_wiki_git_repo_path: /opt/quads/git/wiki
wiki_url: https://wiki.example.com
Changed Values in 2.1
json_web_path: /opt/quads/web/instack
visual_web_dir: /opt/quads/web/visual
New Values in 2.1
web_content_path: /opt/quads/web
web_exclude_dirs: .git static instack visual any-git-content-dir-you-have README.md
quads_url:  https://quads.example.com
lab_name: Lab

Nginx Proxy Changes in 2.1

We are now routing URL and API endpoints directly through Flask @app.route functionality therefore if you were using a modified TLS/SSL vhost configuration file you'll need to set it up again with the new format.

systemctl stop nginx
cd /etc/nginx/conf.d/
mv apiv3_ssl.conf apiv3_ssl.conf.2.0.old
cp apiv3_ssl.conf.example apiv3_ssl.conf
servername=$(hostname) ; sed -i -e "s/quads.example.com/$servername/" /etc/nginx/conf.d/apiv3_ssl.conf
systemctl start nginx

At this point if you are using TLS you'll need to re-edit your apiv3_ssl.conf file again with the correct TLS key and certificate names

systemctl restart nginx

Known Issues

  • None at this time

Packaging and Support

Note that the RPM attached this release may contain some additional fixes since the 2.1.6 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