Merge pull request #9922 from xmatthias/ci/native_m1

Ci - Run on native macos ARM runner
This commit is contained in:
Matthias
2024-03-10 13:08:03 +01:00
committed by GitHub
3 changed files with 17 additions and 12 deletions

View File

@@ -124,8 +124,11 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ "macos-latest", "macos-13" ]
os: [ "macos-latest", "macos-13", "macos-14" ]
python-version: ["3.9", "3.10", "3.11", "3.12"]
exclude:
- os: "macos-14"
python-version: "3.9"
steps:
- uses: actions/checkout@v4
@@ -154,7 +157,7 @@ jobs:
run: |
cd build_helpers && ./install_ta-lib.sh ${HOME}/dependencies/; cd ..
- name: Installation - macOS
- name: Installation - macOS (Brew)
run: |
# brew update
# TODO: Should be the brew upgrade
@@ -177,6 +180,9 @@ jobs:
rm /usr/local/bin/python3.12-config || true
brew install hdf5 c-blosc libomp
- name: Installation (python)
run: |
python -m pip install --upgrade pip wheel
export LD_LIBRARY_PATH=${HOME}/dependencies/lib:$LD_LIBRARY_PATH
export TA_LIBRARY_PATH=${HOME}/dependencies/lib

View File

@@ -25,10 +25,15 @@ def is_mac() -> bool:
return "Darwin" in machine
def is_arm() -> bool:
machine = platform.machine()
return "arm" in machine or "aarch64" in machine
@pytest.fixture(autouse=True)
def patch_torch_initlogs(mocker) -> None:
if is_mac():
if is_mac() and not is_arm():
# Mock torch import completely
import sys
import types

View File

@@ -1,5 +1,4 @@
import logging
import platform
import shutil
from pathlib import Path
from unittest.mock import MagicMock
@@ -15,13 +14,8 @@ from freqtrade.optimize.backtesting import Backtesting
from freqtrade.persistence import Trade
from freqtrade.plugins.pairlistmanager import PairListManager
from tests.conftest import EXMS, create_mock_trades, get_patched_exchange, log_has_re
from tests.freqai.conftest import (get_patched_freqai_strategy, is_mac, is_py12, make_rl_config,
mock_pytorch_mlp_model_training_parameters)
def is_arm() -> bool:
machine = platform.machine()
return "arm" in machine or "aarch64" in machine
from tests.freqai.conftest import (get_patched_freqai_strategy, is_arm, is_mac, is_py12,
make_rl_config, mock_pytorch_mlp_model_training_parameters)
def can_run_model(model: str) -> None:
@@ -243,7 +237,7 @@ def test_extract_data_and_train_model_Classifiers(mocker, freqai_conf, model):
def test_start_backtesting(mocker, freqai_conf, model, num_files, strat, caplog):
can_run_model(model)
test_tb = True
if is_mac():
if is_mac() and not is_arm():
test_tb = False
freqai_conf.get("freqai", {}).update({"save_backtest_models": True})