From: John Mulligan Date: Mon, 9 Mar 2026 20:04:06 +0000 (-0400) Subject: mgr/cephadm: add custom choose_next_action to jaeger agent service X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=2a83489b01228bf87065489a99d334d8c8038a90;p=ceph.git mgr/cephadm: add custom choose_next_action to jaeger agent service The jaeger agent service must always be redeployed instead of reconfigured when the dependencies have changed. Signed-off-by: John Mulligan --- diff --git a/src/pybind/mgr/cephadm/services/jaeger.py b/src/pybind/mgr/cephadm/services/jaeger.py index cde78769aa7c..c8bb3565db8b 100644 --- a/src/pybind/mgr/cephadm/services/jaeger.py +++ b/src/pybind/mgr/cephadm/services/jaeger.py @@ -3,6 +3,7 @@ from cephadm.services.cephadmservice import CephadmService, CephadmDaemonDeployS from ceph.deployment.service_spec import TracingSpec, ServiceSpec from .service_registry import register_cephadm_service from mgr_util import build_url +from cephadm import utils if TYPE_CHECKING: from ..module import CephadmOrchestrator @@ -49,6 +50,30 @@ class JaegerAgentService(CephadmService): daemon_spec.deps = self.get_dependencies(self.mgr) return daemon_spec + manages_own_next_action = True + + def choose_next_action( + self, + scheduled_action: utils.Action, + daemon_type: Optional[str], + spec: Optional[ServiceSpec], + curr_deps: List[str], + last_deps: List[str], + ) -> utils.Action: + """Given the scheduled_action, service spec, daemon_type, and + current and previous dependency lists return the next action that + this service would prefer cephadm take. + """ + action = super().choose_next_action( + scheduled_action, daemon_type, spec, curr_deps, last_deps + ) + # changes to jaeger-agent deps affect the way the unit.run for + # the daemon is written, which we rewrite on redeploy, but not + # on reconfig. + if action is utils.Action.RECONFIG: + action = utils.Action.REDEPLOY + return action + @register_cephadm_service class JaegerCollectorService(CephadmService):