some changes..
This commit is contained in:
parent
ec82414987
commit
0ea02d58d9
1 changed files with 19 additions and 4 deletions
23
.zshrc
23
.zshrc
|
@ -201,18 +201,33 @@ __docker__() {
|
|||
local local_digest
|
||||
local_digest=$(docker image inspect "$image" --format '{{index .RepoDigests 0}}' 2>/dev/null)
|
||||
|
||||
# If no local digest exists, force check
|
||||
if [[ -z "$local_digest" ]]; then
|
||||
echo -e "${YELLOW}Image not present or digest unavailable. Update needed.${NC}"
|
||||
echo -e "${YELLOW}Image not present locally. Update needed.${NC}"
|
||||
updated=true
|
||||
continue
|
||||
fi
|
||||
|
||||
# Get remote image digest using manifest inspect
|
||||
# Get remote digest using pull --dry-run
|
||||
local remote_digest
|
||||
remote_digest=$(DOCKER_CLI_EXPERIMENTAL=enabled docker manifest inspect -v "$image" 2>/dev/null | jq -r '.Descriptor.digest' 2>/dev/null)
|
||||
remote_digest=$(docker pull --quiet --dry-run "$image" 2>/dev/null | awk '/Digest:/{print $2}')
|
||||
|
||||
# Fallback to manifest inspect if dry-run fails
|
||||
if [[ -z "$remote_digest" ]]; then
|
||||
remote_digest=$(DOCKER_CLI_EXPERIMENTAL=enabled docker manifest inspect -v "$image" 2>/dev/null | jq -r '.Descriptor.digest' 2>/dev/null)
|
||||
fi
|
||||
|
||||
if [[ -z "$remote_digest" ]]; then
|
||||
echo -e "${RED}Failed to retrieve remote digest. Skipping.${NC}"
|
||||
echo -e "${RED}Failed to retrieve remote digest. Performing forced check...${NC}"
|
||||
# Fallback method: Pull image and compare before/after digests
|
||||
local pre_pull_digest=$(docker image inspect "$image" --format '{{index .RepoDigests 0}}' 2>/dev/null)
|
||||
docker pull --quiet "$image" >/dev/null
|
||||
local post_pull_digest=$(docker image inspect "$image" --format '{{index .RepoDigests 0}}' 2>/dev/null)
|
||||
|
||||
if [[ "$pre_pull_digest" != "$post_pull_digest" ]]; then
|
||||
echo -e "${GREEN}Update found during forced pull${NC}"
|
||||
updated=true
|
||||
fi
|
||||
continue
|
||||
fi
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue