Testing upgrade of salt on deployment-prep; this involves pinning the salt ppa repo, adding that repo to the apt sources list, doing the update, and testing.
|Declined||ArielGlenn||T102039 Disabling agent forwarding breaks dsh based restarts for Parsoid (required for deployments)|
|Declined||ArielGlenn||T63882 [Trebuchet] Salt times out on parsoid restarts|
|Declined||yuvipanda||T87803 Cannot use dsh-based restart of parsoid from tin anymore|
|Resolved||ArielGlenn||T88971 Upgrade salt to 2014.7 (investigating)|
|Resolved||ArielGlenn||T92276 upgrade salt on deployment-prep to 2014.7|
Salt-common, salt-master and salt-minion have been updated across deployment-prep. 2014.7 salt-syndic has been installed on deployment-salt. I have removed the salt ppa repo from sources list now. New deployment-prep instances will not get the latest salt but the old version minions can talk to the new master without problems.
Due to salt issue https://github.com/saltstack/salt/issues/18317 which will be fixed in the next minor release of 2014.7, git deploy sync in trebuchet-trigger does not work. I have edited /usr/share/pyshared/trigger/drivers/trebuchet/local.py in place on deployment-bastion, as that is the only location that trigger is installed. It was a two line workaround. This removes the ability to use the --force argument to git deploy sync, which is why I will not build packages and put them in the production repo.
Until the new salt point release comes out and is verified to work, I don't consider this upgrade complete, and we cannot move to upgrade in production, nor in the rest of labs.
As a workaround, we could rebuild the ppa package and add the three commits mentioned on issue 18317 then mark it with -wmf1 or something.
The commits are:
Or build a package using a snapshot or their branch 2014.7 which has them.
This upgrade is complete. While git deploy works fine, this is in part due to local modifications to code in the trigger package which were made during the previous upgrade. A more permanent fix is needed which will be tracked in another task.