also m1 and arm64 for wheel checks (#11277)

* also m1 and arm64 for wheel checks

* account for self-hosted and pre-setup-python of m1 and arm64 runners

* &&

* python3

* report python version

* use docker on arm64 to get multiple python versions

* flush

* report more system information

* except pycryptodome for now

* more variables, simpler logic

* corrections

* switch to [macos, arm64]

* add python version to job name

* separate os and arch matrix axes

* reorder matrixing

* drop workflow name from job name

* oops

* skip python setup in docker cases

* drop the containers

* Update check_dependency_artifacts.py
This commit is contained in:
Kyle Altendorf 2022-04-26 10:48:04 -07:00 committed by GitHub
parent fd7c3c6363
commit f976c07c54
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 44 additions and 5 deletions

View File

@ -17,20 +17,45 @@ concurrency:
jobs:
check_dependency_artifacts:
name: Check Dependency Artifacts
runs-on: ${{ matrix.os }}
name: ${{ matrix.os.name }} ${{ matrix.arch.name }} ${{ matrix.python-version }}
runs-on: ${{ matrix.os.runs-on[matrix.arch.matrix] }}
strategy:
fail-fast: false
matrix:
os:
- name: Linux
matrix: linux
runs-on:
intel: ubuntu-latest
arm: [linux, arm64]
- name: macOS
matrix: macos
runs-on:
intel: macos-latest
arm: [macos, arm64]
arch:
- name: ARM64
matrix: arm
- name: Intel
matrix: intel
python-version: ['3.7', '3.8', '3.9']
os: [macOS-latest, ubuntu-latest]
exclude:
- os:
matrix: macos
python-version: '3.7'
- os:
matrix: macos
arch:
matrix: arm
python-version: '3.8'
steps:
- uses: Chia-Network/actions/clean-workspace@main
- name: Checkout Code
uses: actions/checkout@v3
- name: Setup Python environment
uses: actions/setup-python@v2
- uses: Chia-Network/actions/setup-python@main
with:
python-version: ${{ matrix.python-version }}

View File

@ -1,5 +1,6 @@
import os
import pathlib
import platform
import subprocess
import sys
import tempfile
@ -20,6 +21,8 @@ def excepted(path: pathlib.Path) -> bool:
def main() -> int:
with tempfile.TemporaryDirectory() as directory_string:
print(f"Working in: {directory_string}")
print()
directory_path = pathlib.Path(directory_string)
extras = ["upnp"]
@ -30,6 +33,17 @@ def main() -> int:
else:
package_and_extras = package_path_string
print("Downloading packages for Python version:")
lines = [
*sys.version.splitlines(),
"",
f"machine: {platform.machine()}",
f"platform: {platform.platform()}",
]
for line in lines:
print(f" {line}")
print(flush=True)
subprocess.run(
[
sys.executable,