Skip to content

Running server_identifier on self provided hardware in Q30 chassis leads to completely illegal state(s) #31

Description

@RegentOfOrigin

It's possible to purchase the non-HL chassis and provide our own motherboards, etc. However, this leads to a variety of illegal states:

/opt/45drives/tools/server_identifier: ipmitool fru command failed. IPMI is not present on this system. Attempting to pull info from DMI tables
Traceback (most recent call last):
  File "/opt/45drives/tools/server_identifier", line 992, in <module>
    main()
  File "/opt/45drives/tools/server_identifier", line 968, in main
    server["Alias Style"] = g_product_lut[server["Model"]][g_product_lut_idx["ALIAS_STYLE"]]
                            ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
KeyError: 'HomeLab-Default string'

caused by https://github.com/45Drives/tools/blame/master/tools/server_identifier#L709
dmi yields "Default string" for a lot of values, and it assumes HomeLab because I do not have an IPMI controller.

Then, if I manually add an entry for this key:

"HomeLab-Default string": [g_mobo_to_version_lut["Turbo"],0,2,"Q30","HOMELAB"],

dmap will fail, because:

/opt/45drives/tools/dmap: !! ERROR !! Invalid Chassis Size and Alias Style combination set in /etc/45drives/server_info/server_info.json
                          Valid Chassis Size Options for HOMELAB are: dict_keys(['HL15', 'HL4', 'HL8'])
                          You can manually edit this file by setting "Edit Mode": true
                          in /etc/45drives/server_info/server_info.json along with any other parameters

So I had to manually edit /etc/45drives/server_info/server_info.json to set "Alias Style" to "STORINATOR", which would have been relatively easily pre-determined just by the size.

Ideal outcome: Not having to manually edit the script or server_info.json after running server_identifier when using non-standard hardware.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions