An agent scaler creates Joshua agents with a known tag baked in as AGENT_TAG. This prevents mismatching versions between the scaler and the agents
At the boot time, an agent scaler requests all running agents to exit after the current ensemble. This guarantees to recreate agents in case both agents and the scaler are updated.
Add a hidden command agent_tag in Joshua CLI. When ENABLE_DYNAMIC_AGENT_TAG argument is passed to the scaler, the scaler uses the agent tag stored in FDB.
Agent pods will have a proper app label as joshua-agent
Each agent writes its current ensemble in the Pod label ensemble
This PR contains the following new capabilities:
agent_tag
in Joshua CLI. WhenENABLE_DYNAMIC_AGENT_TAG
argument is passed to the scaler, the scaler uses the agent tag stored in FDB.app
label asjoshua-agent
ensemble