I got following error messages while deploy ceph-dashboard: "charm missing from disk"

runned commands:

juju deploy cs:~openstack-charmers/ceph-dashboard
juju add-relation ceph-dashboard:dashboard ceph-mon:dashboard
juju add-relation ceph-dashboard:certificates vault:certificates

juju status ceph-dashboard:

Model      Controller       Cloud/Region    Version  SLA          Timestamp
openstack  maas-controller  mymaas/default  2.9.28   unsupported  09:40:24+08:00

App             Version  Status  Scale  Charm           Channel      Rev  Exposed  Message
ceph-dashboard           error       3  ceph-dashboard  stable         3  no       hook failed: "install"
ceph-mon        17.1.0   active      3  ceph-mon        quincy/edge  106  no       Unit is ready and clustered

Unit                 Workload  Agent  Machine  Public address  Ports  Message
ceph-mon/0           active    idle   0/lxd/0  10.0.0.161             Unit is ready and clustered
  ceph-dashboard/4   error     idle            10.0.0.161             hook failed: "install"
ceph-mon/1*          active    idle   1/lxd/0  10.0.0.185             Unit is ready and clustered
  ceph-dashboard/5   error     idle            10.0.0.185             hook failed: "install"
ceph-mon/2           active    idle   2/lxd/0  10.0.0.179             Unit is ready and clustered
  ceph-dashboard/3*  error     idle            10.0.0.179             hook failed: "install"

ssh to the related unit and check the log:

cat -n /var/log/jujuunit-ceph-dashboard-5.log

1  2022-05-07 01:01:38 INFO juju unit_agent.go:277 Starting unit workers for "ceph-dashboard/5"
     2  2022-05-07 01:01:38 INFO juju.worker.apicaller connect.go:163 [6131d3] "unit-ceph-dashboard-5" successfully connected to "10.0.0.214:17070"
     3  2022-05-07 01:01:38 INFO juju.worker.apicaller connect.go:260 [6131d3] password changed for "unit-ceph-dashboard-5"
     4  2022-05-07 01:01:39 INFO juju.worker.apicaller connect.go:163 [6131d3] "unit-ceph-dashboard-5" successfully connected to "10.0.0.214:17070"
     5  2022-05-07 01:01:39 INFO juju.worker.migrationminion worker.go:140 migration phase is now: NONE
     6  2022-05-07 01:01:39 INFO juju.worker.logger logger.go:120 logger worker started
     7  2022-05-07 01:01:39 ERROR juju.worker.meterstatus runner.go:91 error running "meter-status-changed": charm missing from disk
     8  2022-05-07 01:01:39 INFO juju.worker.upgrader upgrader.go:219 no waiter, upgrader is done
     9  2022-05-07 01:01:39 INFO juju.worker.uniter uniter.go:334 unit "ceph-dashboard/5" started
    10  2022-05-07 01:01:39 INFO juju.worker.uniter uniter.go:637 resuming charm install
    11  2022-05-07 01:01:39 INFO juju.worker.uniter.charm bundles.go:78 downloading cs:~openstack-charmers/ceph-dashboard-3 from API server
    12  2022-05-07 01:01:41 INFO juju.worker.uniter uniter.go:352 hooks are retried true
    13  2022-05-07 01:01:41 INFO juju.worker.uniter.storage resolver.go:127 initial storage attachments ready
    14  2022-05-07 01:01:41 INFO juju.worker.uniter resolver.go:154 found queued "install" hook
    15  2022-05-07 01:01:42 INFO unit.ceph-dashboard/5.juju-log server.go:327 Running legacy hooks/install.
    16  2022-05-07 01:01:42 INFO unit.ceph-dashboard/5.juju-log server.go:327 Installing packages
    17  2022-05-07 01:01:46 INFO unit.ceph-dashboard/5.juju-log server.go:327 Installing ['ceph-mgr-dashboard'] with options: ['--option=Dpkg::Options::=--force-confold']
    18  2022-05-07 01:01:47 INFO unit.ceph-dashboard/5.juju-log server.go:327 Updating status
    19  2022-05-07 01:01:48 ERROR unit.ceph-dashboard/5.juju-log server.go:327 Uncaught exception while in charm code:
    20  Traceback (most recent call last):
    21    File "./src/charm.py", line 608, in <module>
    22      main(CephDashboardCharm)
    23    File "/var/lib/juju/agents/unit-ceph-dashboard-5/charm/venv/ops/main.py", line 406, in main
    24      _emit_charm_event(charm, dispatcher.event_name)
    25    File "/var/lib/juju/agents/unit-ceph-dashboard-5/charm/venv/ops/main.py", line 140, in _emit_charm_event
    26      event_to_emit.emit(*args, **kwargs)
    27    File "/var/lib/juju/agents/unit-ceph-dashboard-5/charm/venv/ops/framework.py", line 278, in emit
    28      framework._emit(event)
    29    File "/var/lib/juju/agents/unit-ceph-dashboard-5/charm/venv/ops/framework.py", line 722, in _emit
    30      self._reemit(event_path)
    31    File "/var/lib/juju/agents/unit-ceph-dashboard-5/charm/venv/ops/framework.py", line 767, in _reemit
    32      custom_handler(event)
    33    File "/var/lib/juju/agents/unit-ceph-dashboard-5/charm/venv/ops_openstack/core.py", line 105, in on_install
    34      self.install_pkgs()
    35    File "/var/lib/juju/agents/unit-ceph-dashboard-5/charm/venv/ops_openstack/core.py", line 102, in install_pkgs
    36      self.update_status()
    37    File "/var/lib/juju/agents/unit-ceph-dashboard-5/charm/venv/ops_openstack/core.py", line 144, in update_status
    38      _result = check()
    39    File "./src/charm.py", line 363, in check_dashboard
    40      if not check_f():
    41    File "/var/lib/juju/agents/unit-ceph-dashboard-5/charm/venv/charms_ceph/utils.py", line 3440, in is_mgr_module_enabled
    42      return module in enabled_manager_modules()
    43    File "/var/lib/juju/agents/unit-ceph-dashboard-5/charm/venv/charms_ceph/utils.py", line 3428, in enabled_manager_modules
    44      modules = json.loads(modules)
    45    File "/usr/lib/python3.8/json/__init__.py", line 357, in loads
    46      return _default_decoder.decode(s)
    47    File "/usr/lib/python3.8/json/decoder.py", line 337, in decode
    48      obj, end = self.raw_decode(s, idx=_w(s, 0).end())
    49    File "/usr/lib/python3.8/json/decoder.py", line 355, in raw_decode
    50      raise JSONDecodeError("Expecting value", s, err.value) from None
    51  json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
    52  2022-05-07 01:01:48 ERROR juju.worker.uniter.operation runhook.go:146 hook "install" (via hook dispatching script: dispatch) failed: exit status 1
    53  2022-05-07 01:01:48 INFO juju.worker.uniter resolver.go:150 awaiting error resolution for "install" hook
    54  2022-05-07 01:01:53 INFO juju.worker.uniter resolver.go:150 awaiting error resolution for "install" hook
    55  2022-05-07 01:01:53 INFO unit.ceph-dashboard/5.juju-log server.go:327 Running legacy hooks/install.
    ...
7  2022-05-07 01:01:39 ERROR juju.worker.meterstatus runner.go:91 error running "meter-status-changed": charm missing from disk

I have searched ‘charm missing from disk’ in google, but no answer was got.

What’s the problem and how to resolve it? Who can help me please?

:nauseated_face:

This error is returned when we detect that there is no charm on disk, for which the presence of the charm’s metadata.yaml is a proxy.

The check is made when running a hook, or executing an action.

This looks like an error in charm logic, which has caused the install hook to fail. The error from the meterstatus worker is a symptom of this failure.