Skip to content

Merge pull request #24 from MechBot-2x/dependabot/github_actions/acti… #40

Merge pull request #24 from MechBot-2x/dependabot/github_actions/acti…

Merge pull request #24 from MechBot-2x/dependabot/github_actions/acti… #40

name: Neural Nexus CI
on:
push:
branches: [ main, develop ]
pull_request:
branches: [ main ]
env:
CARGO_TERM_COLOR: always
jobs:
test-rust:
name: 🦀 Rust Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt, clippy
- name: Cache dependencies
uses: actions/cache@v4
with:
path: |
~/.cargo/registry
~/.cargo/git
target
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
${{ runner.os }}-cargo-
- name: Check code format
run: cargo fmt --all -- --check
- name: Run tests
run: cargo test --all-features --workspace
test-python:
name: 🐍 Python Tests
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.8']
steps:
- uses: actions/checkout@v6
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
- name: Run basic Python checks
run: |
python -c "import sys; print('Python', sys.version)"
find . -name "*.py" -exec echo "Found Python file: {}" \;
build-docker:
name: 🐳 Build Docker Images
runs-on: ubuntu-latest
needs: [test-rust, test-python]
if: github.ref == 'refs/heads/main'
steps:
- uses: actions/checkout@v6
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build Docker images
run: |
docker compose --profile development build