diff options
author | Thomas Waldmann <tw@waldmann-edv.de> | 2024-03-15 15:12:48 +0100 |
---|---|---|
committer | Thomas Waldmann <tw@waldmann-edv.de> | 2024-03-15 16:38:30 +0100 |
commit | 28bd4d1bc61532b80d4581d0b2526f02884835f0 (patch) | |
tree | 78a1a599ffc9cd64f7d845ab23ca92d523f2137b | |
parent | d84118a9db89a21ee4f365e585cd1e61271c9bb3 (diff) |
github CI: misc updates
- move most Linux tests to ubuntu 22.04
- macOS: run on macos-14 (on Apple Silicon!)
- macOS: use OpenSSL 3.0 from brew
- macOS: run with Python 3.11
- pip install -e .: add -v
- trigger CI run for changed .toml files
- use up-to-date github actions
- remove libb2 references - since borg 1.2, we use blake2 indirectly via python stdlib
-rw-r--r-- | .github/workflows/ci.yml | 31 | ||||
-rw-r--r-- | .github/workflows/codeql-analysis.yml | 12 | ||||
-rw-r--r-- | .github/workflows/windows.yml | 2 | ||||
-rw-r--r-- | Brewfile | 2 | ||||
-rw-r--r-- | docs/global.rst.inc | 1 |
5 files changed, 24 insertions, 24 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 616a6e238..7445fad5d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,6 +11,7 @@ on: - '**.c' - '**.h' - '**.yml' + - '**.toml' - '**.cfg' - '**.ini' - 'requirements.d/*' @@ -23,6 +24,7 @@ on: - '**.c' - '**.h' - '**.yml' + - '**.toml' - '**.cfg' - '**.ini' - 'requirements.d/*' @@ -35,7 +37,7 @@ jobs: timeout-minutes: 5 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: chartboost/ruff-action@v1 pytest: @@ -48,38 +50,38 @@ jobs: - os: ubuntu-20.04 python-version: '3.9' toxenv: py39-fuse2 - - os: ubuntu-20.04 + - os: ubuntu-22.04 python-version: '3.10' toxenv: py310-fuse3 - - os: ubuntu-20.04 + - os: ubuntu-22.04 python-version: '3.11' toxenv: py311-fuse2 - os: ubuntu-22.04 python-version: '3.12' toxenv: py312-fuse3 - - os: macos-12 - python-version: '3.9' - toxenv: py39-none # note: no fuse testing, due to #6099, see also #6196. + - os: macos-14 + python-version: '3.11' + toxenv: py311-none # note: no fuse testing, due to #6099, see also #6196. env: # Configure pkg-config to use OpenSSL from Homebrew - PKG_CONFIG_PATH: "/usr/local/opt/openssl@1.1/lib/pkgconfig:$PKG_CONFIG_PATH" + PKG_CONFIG_PATH: "/usr/local/opt/openssl@3.0/lib/pkgconfig:$PKG_CONFIG_PATH" TOXENV: ${{ matrix.toxenv }} runs-on: ${{ matrix.os }} timeout-minutes: 180 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: # just fetching 1 commit is not enough for setuptools-scm, so we fetch all fetch-depth: 0 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Cache pip - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: ~/.cache/pip key: ${{ runner.os }}-pip-${{ hashFiles('requirements.d/development.txt') }} @@ -93,7 +95,6 @@ jobs: sudo apt-get update sudo apt-get install -y libssl-dev libacl1-dev liblz4-dev libzstd-dev pkg-config build-essential sudo apt-get install -y libxxhash-dev || true - sudo apt-get install -y libb2-dev || true sudo apt-get install -y libfuse-dev fuse || true # Required for Python llfuse module sudo apt-get install -y libfuse3-dev fuse3 || true # Required for Python pyfuse3 module @@ -109,20 +110,20 @@ jobs: env: # we already have that in the global env, but something is broken and overwrites that. # so, set it here, again. - PKG_CONFIG_PATH: "/usr/local/opt/openssl@1.1/lib/pkgconfig:$PKG_CONFIG_PATH" + PKG_CONFIG_PATH: "/usr/local/opt/openssl@3.0/lib/pkgconfig:$PKG_CONFIG_PATH" run: | - pip install -e . + pip install -ve . - name: run pytest via tox env: # we already have that in the global env, but something is broken and overwrites that. # so, set it here, again. - PKG_CONFIG_PATH: "/usr/local/opt/openssl@1.1/lib/pkgconfig:$PKG_CONFIG_PATH" + PKG_CONFIG_PATH: "/usr/local/opt/openssl@3.0/lib/pkgconfig:$PKG_CONFIG_PATH" run: | # do not use fakeroot, but run as root. avoids the dreaded EISDIR sporadic failures. see #2482. #sudo -E bash -c "tox -e py" tox --skip-missing-interpreters - name: Upload coverage to Codecov - uses: codecov/codecov-action@v1 + uses: codecov/codecov-action@v4 env: OS: ${{ runner.os }} python: ${{ matrix.python-version }} diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 3d0dfe89d..35bca42d6 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -14,7 +14,7 @@ on: jobs: analyze: name: Analyze - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 permissions: actions: read contents: read @@ -29,16 +29,16 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: # just fetching 1 commit is not enough for setuptools-scm, so we fetch all fetch-depth: 0 - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: - python-version: 3.9 + python-version: 3.11 - name: Cache pip - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: ~/.cache/pip key: ${{ runner.os }}-pip-${{ hashFiles('requirements.d/development.txt') }} @@ -64,6 +64,6 @@ jobs: python3 -m venv ../borg-env source ../borg-env/bin/activate pip3 install -r requirements.d/development.txt - pip3 install -e . + pip3 install -ve . - name: Perform CodeQL Analysis uses: github/codeql-action/analyze@v2 diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index f42df65a8..ce7f6f2ce 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -8,7 +8,7 @@ jobs: run: shell: msys2 {0} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - uses: msys2/setup-msys2@v2 @@ -2,7 +2,7 @@ brew 'pkg-config' brew 'zstd' brew 'lz4' brew 'xxhash' -brew 'openssl@1.1' +brew 'openssl@3.0' # osxfuse (aka macFUSE) is only required for "borg mount", # but won't work on github actions' workers. diff --git a/docs/global.rst.inc b/docs/global.rst.inc index 14725f731..b0a1f05d1 100644 --- a/docs/global.rst.inc +++ b/docs/global.rst.inc @@ -15,7 +15,6 @@ .. _libattr: https://savannah.nongnu.org/projects/attr/ .. _liblz4: https://github.com/Cyan4973/lz4 .. _libzstd: https://github.com/facebook/zstd -.. _libb2: https://github.com/BLAKE2/libb2 .. _OpenSSL: https://www.openssl.org/ .. _`Python 3`: https://www.python.org/ .. _Buzhash: https://en.wikipedia.org/wiki/Buzhash |