We just hit an issue. It’s pretty edge case, but thought I should report it regardless. Found in 22.214.171.1243.
1 - Person one enters a new variable but doesn’t click save.
2 - Person two enters a new variable but doesn’t click save.
3 - Person one saves. Their new variable is added.
4 - Person two saves. Their new variable is added, but person one’s new variable is removed.
We too have noticed this issue. There appears to be no concurrency checking when editing within Octopus. Another easy test is two users opening a step at the same time. One adds role ‘A’, the other role ‘B’. The role added by the last user to hit save will overwrite the first one.
Attempting to merge the changes in this case is quite difficult. We do put ETags on the documents; would it be better if we checked the etag and reported an error? “It looks like someone else has modified this variable set/deployment process”?
Yeah, the merge would suck. It’s pretty edge case so I don’t think it’s a big concern, but it did bite us yesterday.
An error message would be better than nothing, because then at least we know to ask around.
Or maybe go first in best dressed, i.e. “It looks like someone else has modified this variable set/deployment process - your changes have not been saved.” and refresh so they’re up to date and let them start again.
Unless you want to push Person 1’s changes down while Person 2 is still editing? More pain than it’s worth probably.