Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace use of pygit2 deprecated and removed (1.15.0) oid with id #673

Merged
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 16 additions & 15 deletions salt/utils/gitfs.py
Original file line number Diff line number Diff line change
Expand Up @@ -1683,7 +1683,7 @@ def _perform_checkout(checkout_ref, branch=True):
# remote ref.
self.repo.checkout(checkout_ref)
if branch:
self.repo.reset(oid, pygit2.GIT_RESET_HARD)
self.repo.reset(pygit2_id, pygit2.GIT_RESET_HARD)
return True
except GitLockError as exc:
if exc.errno == errno.EEXIST:
Expand Down Expand Up @@ -1714,11 +1714,11 @@ def _perform_checkout(checkout_ref, branch=True):
tag_ref = "refs/tags/" + tgt_ref
if remote_ref in refs:
# Get commit id for the remote ref
oid = self.peel(self.repo.lookup_reference(remote_ref)).id
pygit2_id = self.peel(self.repo.lookup_reference(remote_ref)).id
if local_ref not in refs:
# No local branch for this remote, so create one and point
# it at the commit id of the remote ref
self.repo.create_reference(local_ref, oid)
self.repo.create_reference(local_ref, pygit2_id)

try:
target_sha = self.peel(self.repo.lookup_reference(remote_ref)).hex
Expand Down Expand Up @@ -1749,7 +1749,8 @@ def _perform_checkout(checkout_ref, branch=True):
# cachedir).
head_ref = local_head.target
# If head_ref is not a string, it will point to a
# pygit2.Oid object and we are in detached HEAD mode.
# pygit2.id object (oid is deprecated and removed) and
# we are in detached HEAD mode.
# Therefore, there is no need to add a local reference. If
# head_ref == local_ref, then the local reference for HEAD
# in refs/heads/ already exists and again, no need to add.
Expand Down Expand Up @@ -1918,10 +1919,10 @@ def _traverse(tree, blobs, prefix):
the empty directories within it in the "blobs" list
"""
for entry in iter(tree):
if entry.oid not in self.repo:
if entry.id not in self.repo:
# Entry is a submodule, skip it
continue
blob = self.repo[entry.oid]
blob = self.repo[entry.id]
if not isinstance(blob, pygit2.Tree):
continue
blobs.append(
Expand All @@ -1940,8 +1941,8 @@ def _traverse(tree, blobs, prefix):
return ret
if self.root(tgt_env):
try:
oid = tree[self.root(tgt_env)].oid
tree = self.repo[oid]
pygit2_id = tree[self.root(tgt_env)].id
tree = self.repo[pygit2_id]
except KeyError:
return ret
if not isinstance(tree, pygit2.Tree):
Expand Down Expand Up @@ -2056,17 +2057,17 @@ def _traverse(tree, blobs, prefix):
the file paths and symlink info in the "blobs" dict
"""
for entry in iter(tree):
if entry.oid not in self.repo:
if entry.id not in self.repo:
# Entry is a submodule, skip it
continue
obj = self.repo[entry.oid]
obj = self.repo[entry.id]
if isinstance(obj, pygit2.Blob):
repo_path = salt.utils.path.join(
prefix, entry.name, use_posixpath=True
)
blobs.setdefault("files", []).append(repo_path)
if stat.S_ISLNK(tree[entry.name].filemode):
link_tgt = self.repo[tree[entry.name].oid].data
link_tgt = self.repo[tree[entry.name].id].data
blobs.setdefault("symlinks", {})[repo_path] = link_tgt
elif isinstance(obj, pygit2.Tree):
_traverse(
Expand All @@ -2085,8 +2086,8 @@ def _traverse(tree, blobs, prefix):
try:
# This might need to be changed to account for a root that
# spans more than one directory
oid = tree[self.root(tgt_env)].oid
tree = self.repo[oid]
pygit2_id = tree[self.root(tgt_env)].id
tree = self.repo[pygit2_id]
except KeyError:
return files, symlinks
if not isinstance(tree, pygit2.Tree):
Expand Down Expand Up @@ -2130,12 +2131,12 @@ def find_file(self, path, tgt_env):
# path's object ID will be the target of the symlink. Follow
# the symlink and set path to the location indicated
# in the blob data.
link_tgt = self.repo[entry.oid].data
link_tgt = self.repo[entry.id].data
path = salt.utils.path.join(
os.path.dirname(path), link_tgt, use_posixpath=True
)
else:
blob = self.repo[entry.oid]
blob = self.repo[entry.id]
if isinstance(blob, pygit2.Tree):
# Path is a directory, not a file.
blob = None
Expand Down