Bugfix: Explicitly cast returned versions as string for comparisons
All checks were successful
/ build (push) Successful in 41s
All checks were successful
/ build (push) Successful in 41s
This commit is contained in:
parent
7d9efdbc28
commit
5c49b6ad83
@ -57,7 +57,7 @@ def find_package_version_with_tag(repo: str, tag: str) -> str:
|
||||
tag_id = data.get("id")
|
||||
if tag_id:
|
||||
logger.info(f"[DockerHub] Found tag '{tag}' for repo '{repo}', ID: {tag_id}")
|
||||
return tag_id
|
||||
return str(tag_id)
|
||||
else:
|
||||
logger.debug(f"[DockerHub] Tag '{tag}' not found for repo '{repo}'")
|
||||
return None
|
||||
|
||||
@ -38,7 +38,7 @@ def find_package_version_with_tag(org: str, package: str, target_tag: str) -> st
|
||||
tags = version.get("metadata", {}).get("container", {}).get("tags", [])
|
||||
if target_tag in tags:
|
||||
logger.info(f"[GitHub] Found tag '{target_tag}' for {package} on page {page}, version ID: {version['id']}")
|
||||
return version["id"]
|
||||
return str(version["id"])
|
||||
|
||||
page += 1
|
||||
logger.debug(f"[GitHub] Tag '{target_tag}' not found on page {page-1}, moving to page {page}")
|
||||
|
||||
22
src/main.py
22
src/main.py
@ -67,18 +67,19 @@ def handle_suwayomi(
|
||||
|
||||
try:
|
||||
logger.info("[App] Suwayomi handler invoked")
|
||||
latest_online_version = find_package_version_with_tag_github("Suwayomi", "tachidesk", "stable")
|
||||
logger.debug(f"[App] Fetched latest Suwayomi version from GitHub: {latest_online_version}")
|
||||
online_version = find_package_version_with_tag_github("Suwayomi", "tachidesk", "stable")
|
||||
logger.debug(f"[App] Fetched latest Suwayomi version from GitHub: {online_version}")
|
||||
|
||||
cursor = db.cursor()
|
||||
cursor.execute("SELECT latest_version FROM docker_repositories WHERE app='suwayomi'")
|
||||
local_state = cursor.fetchone()
|
||||
logger.debug(f"[App] Local Suwayomi version from DB: {local_state}")
|
||||
local_version = str(local_state[0]) if local_state and local_state[0] is not None else None
|
||||
logger.debug(f"[App] Comparing versions: local='{local_version}' vs online='{online_version}'")
|
||||
|
||||
if local_state and latest_online_version != local_state[0]:
|
||||
if local_version != online_version:
|
||||
logger.debug("[App] Version mismatch detected. Updating database.")
|
||||
cursor.execute ("UPDATE docker_repositories SET latest_version=%s WHERE app='suwayomi'",
|
||||
(latest_online_version,))
|
||||
(online_version,))
|
||||
db.commit()
|
||||
logger.info("[App] New Suwayomi version recorded in database")
|
||||
send_notification("New Suwayomi version has been found")
|
||||
@ -101,18 +102,19 @@ def handle_pihole(
|
||||
):
|
||||
try:
|
||||
logger.info("[App] Pi-hole handler invoked")
|
||||
latest_online_version = find_package_version_with_tag_dockerhub("pihole/pihole", "latest")
|
||||
logger.debug(f"Fetched latest Pi-hole version from Docker Hub: {latest_online_version}")
|
||||
online_version = find_package_version_with_tag_dockerhub("pihole/pihole", "latest")
|
||||
logger.debug(f"Fetched latest Pi-hole version from Docker Hub: {online_version}")
|
||||
|
||||
cursor = db.cursor()
|
||||
cursor.execute("SELECT latest_version FROM docker_repositories WHERE app='pihole'")
|
||||
local_state = cursor.fetchone()
|
||||
logger.debug(f"[App] Local Pi-hole version from DB: {local_state}")
|
||||
local_version = str(local_state[0]) if local_state and local_state[0] is not None else None
|
||||
logger.debug(f"[App] Comparing versions: local='{local_version}' vs online='{online_version}'")
|
||||
|
||||
if local_state and latest_online_version != local_state[0]:
|
||||
if local_version != online_version:
|
||||
logger.debug("[App] Version mismatch detected. Updating database.")
|
||||
cursor.execute ("UPDATE docker_repositories SET latest_version=%s WHERE app='pihole'",
|
||||
(latest_online_version,))
|
||||
(online_version,))
|
||||
db.commit()
|
||||
logger.info("[App] New Pi-hole version recorded in database")
|
||||
send_notification("New Pi-hole version has been found")
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user