hcp: don't continue if HEAD doesn't exist #13165
Merged
+6
−5
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 HCP's metadata package, especially the VCS/git parts, we keep the current HEAD for a repository, along with the state it is in, in order to report it to HCP Packer when the build completes.
However, when a build is run on a template from an empty Git repository, and HCP Packer is enabled, the code would crash when trying to get the information on the current HEAD, as it doesn't exist.
The git library we use returns an error in such a case, but this was ignored, leading to a crash when attempting to get the hash to this reference later on.
This commit fixes the problem by NOT ignoring the error to get the head, and immediately stop processing the git data as it doesn't yet exist.