mirror of
https://github.com/borgbackup/borg.git
synced 2026-06-10 09:21:44 -04:00
CI: add NetBSD workflow in netbsd.yml
This commit is contained in:
parent
13d6e774a0
commit
6dee31c968
1 changed files with 76 additions and 0 deletions
76
.github/workflows/netbsd.yml
vendored
Normal file
76
.github/workflows/netbsd.yml
vendored
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
name: CI NetBSD
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ master ]
|
||||
tags:
|
||||
- '2.*'
|
||||
pull_request:
|
||||
branches: [ master ]
|
||||
paths:
|
||||
- '**.py'
|
||||
- '**.pyx'
|
||||
- '**.c'
|
||||
- '**.h'
|
||||
- '**.yml'
|
||||
- '**.toml'
|
||||
- '**.cfg'
|
||||
- '**.ini'
|
||||
- 'requirements.d/*'
|
||||
- '!docs/**'
|
||||
|
||||
jobs:
|
||||
netbsd_tests:
|
||||
name: NetBSD tests
|
||||
runs-on: ubuntu-24.04
|
||||
timeout-minutes: 90
|
||||
continue-on-error: true
|
||||
|
||||
steps:
|
||||
- name: Check out repository
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
# setuptools-scm needs full history for versioning
|
||||
fetch-depth: 0
|
||||
fetch-tags: true
|
||||
|
||||
- name: Run on NetBSD
|
||||
id: netbsd
|
||||
uses: cross-platform-actions/action@v0.29.0
|
||||
with:
|
||||
operating_system: netbsd
|
||||
version: '10.1'
|
||||
shell: bash
|
||||
cpu_count: 3
|
||||
memory: 6G
|
||||
run: |
|
||||
set -euxo pipefail
|
||||
# Configure pkgin repository based on architecture.
|
||||
arch="$(uname -m)"
|
||||
sudo -E mkdir -p /usr/pkg/etc/pkgin
|
||||
echo "http://ftp.NetBSD.org/pub/pkgsrc/packages/NetBSD/${arch}/10.1/All" | sudo tee /usr/pkg/etc/pkgin/repositories.conf > /dev/null
|
||||
sudo -E pkgin update || true
|
||||
sudo -E pkgin -y upgrade || true
|
||||
|
||||
# Base tools and libraries
|
||||
sudo -E pkgin -y install zstd lz4 xxhash git || true
|
||||
sudo -E pkgin -y install rust || true
|
||||
# Work around NetBSD 9.3 bug with .bash_profile in screen sessions
|
||||
# echo "export PROMPT_COMMAND=" >> ~/.bash_profile || true
|
||||
sudo -E pkgin -y install pkg-config || true
|
||||
# Python 3.11 and tools
|
||||
sudo -E pkgin -y install py311-pip py311-virtualenv || true
|
||||
sudo -E ln -sf /usr/pkg/bin/python3.11 /usr/pkg/bin/python3 || true
|
||||
sudo -E ln -sf /usr/pkg/bin/pip3.11 /usr/pkg/bin/pip3 || true
|
||||
sudo -E ln -sf /usr/pkg/bin/virtualenv-3.11 /usr/pkg/bin/virtualenv3 || true
|
||||
|
||||
# Create and activate a virtualenv
|
||||
python3 -m virtualenv .venv
|
||||
. .venv/bin/activate
|
||||
python -m pip install --upgrade pip
|
||||
# Install development/test dependencies
|
||||
pip install -r requirements.d/development.txt
|
||||
# Build Borg (editable)
|
||||
pip install -e .
|
||||
# Run tests; skip benchmarks
|
||||
pytest -v -n auto --benchmark-skip
|
||||
Loading…
Reference in a new issue