tomaae / homeassistant-truenas

TrueNAS integration for Home Assistant
Apache License 2.0
191 stars 16 forks source link

[Bug] Integration fails with Electric Eel - chart error #170

Open Berserkir-Wolf opened 1 month ago

Berserkir-Wolf commented 1 month ago

Describe the issue

Using the beta version of TrueNAS-SCALE, the API for 'chart/release' fails with: TrueNAS 192.168.10.11 unable to fetch data "chart/release" (404) This persists through reboots of both systems - it appears to be related to an API change in Electric Eel, likely relating to the changes to how containers are handled.

Generating a new API key also has the same error, which suggests it's not credential validation causing it, but likely an endpoint has changed. Looking further into the repo and the API itself, it is to do with the app releases section specifically. Bypassing that gets the normal data loading properly, just minus the container/app information. (changing line 1123 in coordinator.py to remove the 'not' part allows for regular data to resume flow).

How to reproduce the issue

Steps to reproduce the behavior:

  1. Upgrade to 'Electric Eel' (beta)
  2. Restart HAss
  3. See error (unavailable entities)

Alternately: Attempt to re-add to HAss, and get the specific error.

Expected behavior

TrueNAS information shows up in HA.

Screenshots

Software versions

Diagnostics data

Traceback/Error logs

Additional context

awptechnologies commented 1 month ago

Same issue here after the electric eel update this integration no longer works. I reinstalled it and it accepted my host and api key but it fails to load. Worked fine until new truenas update train.

awptechnologies commented 1 month ago

how do i make this fix and add it back to home assistant with the fix?

Berserkir-Wolf commented 1 month ago

how do i make this fix and add it back to home assistant with the fix?

You need to alter the 'coordinator.py' file in the custom components folder. If you installed using HACS, the file is located in custom_components/truenas/coordinator.py.

Line 1123 normally reads: if not self._is_scale:

If you remove the "not" part, it should read: if self._is_scale:

Then restart HA to load the modified version. It's not a fix, but it gets most stats back online until a proper fix is available (which I expect will require more changes from TrueNAS to finish the apps API on the new version).

github-actions[bot] commented 4 weeks ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

Berserkir-Wolf commented 3 weeks ago

Commenting to keep this open for monitoring. RC of truenas releases in the next few days, so will see if the issue persists in the Release Candidate version.

debsahu commented 2 weeks ago

Commenting to keep this open for monitoring. RC of truenas releases in the next few days, so will see if the issue persists in the Release Candidate version.

Issue is still there in RC1

Berserkir-Wolf commented 2 weeks ago

Confirmed, bug remains - removing the 'bypass' for the check causes the issue to reoccur.

lyricnz commented 2 weeks ago

Updated truenas to EE RC1, which broke the integration (installed+working). Lots of errors like

2024-10-03 09:39:54.577 ERROR (MainThread) [homeassistant.util.logging] Exception in async_update_controller when dispatching
 'update_sensors': (<custom_components.portainer.coordinator.PortainerCoordinator object at 0x7fbf5c04dfd0>,)
Traceback (most recent call last):
  File "/config/custom_components/truenas/entity.py", line 68, in async_update_controller
    data = coordinator.data[entity_description.data_path]
           ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
KeyError: 'system_info'

and KeyError: 'pool'

tomaae commented 2 weeks ago

No surprise there, since they are moving from k3s to docker. API documentation is not available right now, so probably after release we can get it updated to work with EE. You will probably make it work by hashing out apps related updates in main coordinator thread.

Berserkir-Wolf commented 2 weeks ago

Yeah, or changing the scale check as I mentioned earlier so it just doesn't do those particular checks. Given it's now a Release Candidate version, I'd say API docs shouldn't be too far away - RC should be feature complete, in theory.

mstepuch commented 4 days ago

Error still there

mcouture87 commented 4 days ago

issue still exists in RC2