QUADS 2.0 is Here!

🍻  Just in time for Summer, QUADS 2.0 is here after a year of concurrent development alongside the 1.1 series. QUADS 2.0 is a major evolution in the architecture and design of QUADS, featuring the complete move from CherryPy to Flask, MongoDB to SQLAlchemy/Postgresql and incorporating our long-awaited APIv3.


About 2.0

APIv3 offers a fully open, RESTful JSON API with RBAC model and token auth to enable and empower near limitless tenant automation and new features that are on the horizon such as self-scheduling and our “Providers” framework for expanding and managing QUADS resources into abstracted and seamless hybrid cloud landscapes.

QUADS 2.0 is a substantial major version release and complete architecture and design revamp

Major Feature Highlights

  • New APIv3 with token auth for protected calls
  • Full move to Flask and a Postgresql database backend via SQLAlchemy
  • QUADS is now broken out into three services: quads-server, quads-web and quads-db
  • Removal of python3-wordpress-xmlrpc, it’s now done via native Python
  • Incorporation of gunicorn and separate flask listeners/services for quads-web and quads-server
  • Replacement of Apache with Nginx for reverse proxy of API and services
  • Major QUADS service commands are now called directly from the CLI rather than tools
  • Massive unit test coverage of nearly 100% across the codebase
  • Enormous refactoring and overhaul of database structure and schema

Full Change List

Development Statistics

  • 85 x peer-reviewed Gerrithub patchsets
  • 523 x unit tests added
  • 247 changed files with 24,850 additions and 6,627 deletions
  • Over 128 x Github issues closed (RFE and bugs)
  • This is the 14th release of QUADS since 23-June 2016 when 1.0 was released

Please see the Breaking Changes and Migrations section of the Github release notes for information on migrating from a QUADS 1.1 series deployment to QUADS 2.0

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.