diff options
author | Derrick Stolee <dstolee@microsoft.com> | 2021-08-24 15:44:00 +0000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2021-08-24 14:16:58 -0700 |
commit | a16eb6b1ff333f3e26b99f17ef3bb7dbf8135f39 (patch) | |
tree | 73cdc9fb261381f02e7d3db79bcebc6ee5358117 /t/t4124-apply-ws-rule.sh | |
parent | maintenance: create `launchctl` configuration using a lock file (diff) | |
download | tgif-a16eb6b1ff333f3e26b99f17ef3bb7dbf8135f39.tar.xz |
maintenance: skip bootout/bootstrap when plist is registered
On macOS, we use launchctl to manage the background maintenance
schedule. This uses a set of .plist files to describe the schedule, but
these files are also registered with 'launchctl bootstrap'. If multiple
'git maintenance start' commands run concurrently, then they can collide
replacing these schedule files and registering them with launchctl.
To avoid extra launchctl commands, do a check for the .plist files on
disk and check if they are registered using 'launchctl list <name>'.
This command will return with exit code 0 if it exists, or exit code 113
if it does not.
We can test this behavior using the GIT_TEST_MAINT_SCHEDULER environment
variable.
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t4124-apply-ws-rule.sh')
0 files changed, 0 insertions, 0 deletions