From 237a2c09defb05cb8b8f2cec7722bd4e3d103cd9 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 13 Jun 2024 18:49:16 -0600 Subject: [PATCH] 9273-bugs-on-the-registry-due-the-home-page-project --- .DS_Store | Bin 10244 -> 10244 bytes wordpress-prod-release-validation.py | 28 ++++++++++++++++++--------- 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/.DS_Store b/.DS_Store index fe1832debb2fa40accd595a6c968c29c7bbc82de..632ae7b13a9a504908a95fde47671b6294d89501 100644 GIT binary patch delta 231 zcmZn(XbG6$&nUAoU^hRb%w!&ctoo$#;)0}{{3Hejh8;--Ihn;J1_sv{nV4Bv+1NSQ zIk-7ugER8WgG&-iN{gKmi=siiko^3dBp5p}DJ(O!JYGP=IX|x?F*7f<2&^G9B^9V7 zCOk7QCBNJ$zceqU7_2uKBEiAQ!5J?gQSDl7Vql`9U}|7ktD{hDX=I?IU}9`mTg%BI ts;qAv6rY`wo0s1ObQ};cGD2tuUMLNtx;JMDoaNihuJDUxv!MtxGXTF`Kyv^9 delta 36 scmZn(XbG6$&nUeyU^hRb^kg1^tj%tM2l*y8T-eO6@QY>hMNwvE0PLO&)c^nh diff --git a/wordpress-prod-release-validation.py b/wordpress-prod-release-validation.py index 317059e..d69a2f3 100644 --- a/wordpress-prod-release-validation.py +++ b/wordpress-prod-release-validation.py @@ -1,15 +1,12 @@ import requests from bs4 import BeautifulSoup, Comment import sys -import logging +import time from urllib.parse import urljoin from github_writer import GitHubWriter from requests.adapters import HTTPAdapter from requests.packages.urllib3.util.retry import Retry -# Configure logging -logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s') - def create_session_with_retries(): session = requests.Session() retries = Retry(total=3, backoff_factor=1, status_forcelist=[500, 502, 503, 504]) @@ -23,7 +20,6 @@ def fetch_url(session, url): response.raise_for_status() return response except requests.exceptions.RequestException as e: - logging.error(f"Failed to fetch {url}: {e}") return None def validate_version(soup, version): @@ -43,10 +39,24 @@ def validate_assets(url, version, github_writer, env): return False soup = BeautifulSoup(response.content, 'html.parser') - - if not validate_version(soup, version): - github_writer.write_summary_and_fail(f"Version {version} not found in {url}.", env) - return False + + # Retry mechanism for validate_version + max_retries = 5 + for attempt in range(max_retries): + if validate_version(soup, version): + break + else: + if attempt < max_retries - 1: + github_writer.write_summary(f"Version {version} not found. Retrying... ({attempt + 1}/{max_retries})", env) + time.sleep(5) + response = fetch_url(session, url) + if not response: + github_writer.write_summary_and_fail(f"Failed to fetch {url}.", env) + return False + soup = BeautifulSoup(response.content, 'html.parser') + else: + github_writer.write_summary_and_fail(f"Version {version} not found in {url} after {max_retries} attempts.", env) + return False # Collect all asset URLs assets = []