About Badfish

Badfish is a vendor-agnostic, redfish-based API tool used to consolidate management of IPMI and out-of-band interfaces for common server hardware vendors.  Badfish is also a popular song from Sublime, this may be a coincidence – are you a badfish too?

Why Badfish?
We wrote Badfish because more and more vendors are starting to standardize on the redfish API.  We run a very large, diverse infrastructure with lots of different vendor technologies and we were tired of tooling differences, limitations and a lack of consistency in approaches to systems automation.

Badfish can be used as a standalone tool but is also bundled into QUADS to manage boot interface ordering/management and other features starting in the 1.1 codebase.


  • Management of interface boot order for Dell systems
  • One-time PXE operations for Dell hardware
  • Gathering firmware and hardware inventory for Dell systems
  • Pulling Dell system configuration into XML
  • Flexible logging for IPMI/out-of-band operations
  • Further features to include SuperMicro are in active development

Project Details

  • Language:  Python
  • License:  GPLv3
  • Documentation:  Github
  • CI/Tests:  Travis
  • Installation Methods: Github source, Docker, Python Setuptools
  • Platforms:  Linux, BSD, OSX, Windows
  • Requirements:  Docker or Python3

Core Development Team

  • Gonzalo Rafuls
  • Will Foster
  • Kambiz Aghaiepour
    • kambiz on IRC & kambiz-aghaiepour on Github