[168 Blocker] Fix query-watchman hook installation#359
Closed
derrickstolee wants to merge 3 commits intomicrosoft:masterfrom
Closed
[168 Blocker] Fix query-watchman hook installation#359derrickstolee wants to merge 3 commits intomicrosoft:masterfrom
derrickstolee wants to merge 3 commits intomicrosoft:masterfrom
Conversation
In microsoft#349, we updated where the hooks were being copied from. Instead of the local .git/hooks directory, we copy from the installed templates directory. This allowws us to grab the latest hook associated with our Git version. However, I neglected testing thoroughly on Mac, and the path was not rooted. This causes the config step to log an error because the path starts at the current working directory, not from root. Adjust the ConfigStep to return a 'false' result when this step fails, which will cause the RunVerbTests to fail if we cannot set the hook as expected. The test does not verify the hook is placed because we only place it if Watchman is installed. However, we still have an issue with this approach, because our Git installer does not update the templates directory correctly! We do not include the v2 fsmonitor hook. Instead, use the raw hook data. Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
We appear to have an issue where we are not updating the installed templates on Mac. That can be resolved separately, but it is safest to be completely in control of our hook data. Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
b6aafa5 to
efb9095
Compare
Contributor
Author
|
/azp run microsoft.scalar |
|
Azure Pipelines successfully started running 1 pipeline(s). |
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Contributor
Author
|
After digging in a LOT I found the correct PATH for the templates. Closing this for now and will open a new one. |
derrickstolee
added a commit
that referenced
this pull request
Mar 28, 2020
…k location In #349, we updated where the hooks were being copied from. Instead of the local .git/hooks directory, we copy from the installed templates directory. This allowws us to grab the latest hook associated with our Git version. However, I neglected testing thoroughly on Mac, and the path was not rooted. This causes the config step to log an error because the path starts at the current working directory, not from root. Adjust the ConfigStep to return a 'false' result when this step fails, which will cause the RunVerbTests to fail if we cannot set the hook as expected. The test does not verify the hook is placed because we only place it if Watchman is installed. Also, I noticed that the templates directory was wrong! Our installer puts the templates in a different place than another version of Git. Perhaps that version was installed by XCode or something, but that caused the confusion. (Replaced #359)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
In #349, we updated where the hooks were being copied from. Instead of
the local .git/hooks directory, we copy from the installed templates
directory. This allowws us to grab the latest hook associated with our
Git version.
However, I neglected testing thoroughly on Mac, and the path was not
rooted. This causes the config step to log an error because the path
starts at the current working directory, not from root.
Adjust the ConfigStep to return a 'false' result when this step fails,
which will cause the RunVerbTests to fail if we cannot set the hook as
expected.
The test does not verify the hook is placed because we only place it if
Watchman is installed.
But that's not all! It turns out that our Git installer on Mac does
not update the templates directory with the new hook! So we must
rely on the raw data being shipped with Scalar instead.