About 2.1.5
🦃 Building on our 2.1 design this release brings a slew of production-tested bugfixes, performance improvements and a few features too just in time for Thanksgiving!
Major Feature Highlights
- Major
quads-web
UI performance improvements using Ajax / lazy loading quads-web
updates for/available
UIquads-web
navigation bar is now rendered at service start time- Several major cloud define and notifications bugs fixed after running 2.1.0 for quite some time in production
quads --foreman-rbac
now runs from the move_and_rebuild phase- QUADS Badfish library will now auto unmount ISO media for Dell systems
verify_switch_conf
fixeslshw
and metadata import fixes and updates- Refactoring to use SQLAlchemy DB calls in some places over direct API for heavy lifting
- Contributing sandbox steps remove container orchestration, focus on venv workflows for easy testing
- Pre-commit hooks are now in place for development workflows
Development Statistics
- 36 x peer-reviewed Gerrithub patch-sets
- 112 x changes files with 2,558 additions and 2,049 deletions
- This is the 17th release of QUADS since 23-June 2016 when 1.0 was released
Full Change List
- A full list of changes can be found here
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 1.1.8
- You should follow the upgrade instructions from 2.0.5 for the steps and data migration needed to move to 2.1.
Migrating from 2.0.5
- Several
conf/quads.yml
changes have been completed removed or changed. - Nginx vhost configuration files have changed.
Migrating from 2.1.0
- No changes
Configuration File Changes
- The following configuration variables are now removed:
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
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.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