Same issue than this one when upgrading agent from 8.3.2 to 8.3.3. The service fails because the symlink to the executable elastic-agent.exe points on a deleted elastic-agent.exe (or the old .exe, wich causes an error like Error: could not read overwrites: fail to read configuration C:\Program Files\Elastic\Agent\fleet.enc for the elastic-agent: fail to decode bytes: cipher: message authentication failed
).
I think that this is caused by the folder data/elastic-agent-xxxxx
changing his name after the upgrade, and the symlink not being updated.
For exemple, my previous agent exe was in data/elastic-agent-16c55b
and the symlink points on this, but the new one is in data/elastic-agent-0ffbed
.
This occured on at least this OS : Ubuntu 20.04.4 LTS and Windows Server 2019 Standard.
The workaround is to manually recreate the symlink, but this become quite painful with a lot of agent, and Fleet is supposed to avoid this.