From 341284df5f5fd27a54c5485adb38e817730f7f2b Mon Sep 17 00:00:00 2001 From: atalman Date: Fri, 26 Jan 2024 11:17:03 -0800 Subject: [PATCH] Add call to check-wheel-contents --- analytics/validate_pypi_staging.py | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/analytics/validate_pypi_staging.py b/analytics/validate_pypi_staging.py index a7104c314..fd5026a9e 100644 --- a/analytics/validate_pypi_staging.py +++ b/analytics/validate_pypi_staging.py @@ -2,12 +2,13 @@ import os.path import shutil +import subprocess import tempfile import zipfile + import boto3 import botocore - PLATFORMS = [ "manylinux1_x86_64", "manylinux2014_aarch64", @@ -72,6 +73,22 @@ def validate_file_metadata(build: str, package: str, version: str): tmp_file = f"{temp_dir}/{os.path.basename(build)}" s3.download_file(Bucket=S3_PYPI_STAGING, Key=build, Filename=tmp_file) print(f"Downloaded: {tmp_file} {get_size(tmp_file)}") + + try: + check_wheels = subprocess.run( + ["check-wheel-contents", tmp_file, "--ignore", "W002,W009,W004"], + capture_output=True, + text=True, + check=True, + encoding="utf-8", + ) + print(check_wheels.stdout) + print(check_wheels.stderr) + except subprocess.CalledProcessError as e: + exit_code = e.returncode + stderror = e.stderr + print(exit_code, stderror) + with zipfile.ZipFile(f"{temp_dir}/{os.path.basename(build)}", "r") as zip_ref: zip_ref.extractall(f"{temp_dir}")