Last modified: 2014-04-24 23:18:41 UTC
I setup a labs instance (logstash-deploy) to act as a combination puppet master, salt master and trebuchet deployment server for the logstash project. After several puppet runs to get everything to settle out (which was expected), there was a persistent failure from Deployment::Deployment_server/Exec[eventual_consistency_deploy ment_server_init]. The failure was caused by `salt-call deploy.deployment_server_init` failing to execute. When run manually, salt reported "Function deploy.deployment_server_init is not available". Ryan clued me into running `salt '*' saltutil.sync_all` manually to push the correct salt config from the salt master to itself. This resolved the problem and puppet completed successfully on the next run. Comparing the deployment::deployment_server class to the deployment::target class makes me think that there is some missing bootstrapping for a node that only has the deployment::deployment_server class applied to it. I think we had this same problem when setting up deployment-bastion too but it was masked by other problems that we worked through there.
Change 129368 had a related patch set uploaded by BryanDavis: Exec saltutil.sync_all when adding deployment_server grain https://gerrit.wikimedia.org/r/129368
Change 129368 merged by Ori.livneh: Exec saltutil.sync_all when adding deployment_server grain https://gerrit.wikimedia.org/r/129368