Skip to content

NTDF-RTMP Protocol Implementation (POC) #182

NTDF-RTMP Protocol Implementation (POC)

NTDF-RTMP Protocol Implementation (POC) #182

Workflow file for this run

name: Rust
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
env:
CARGO_TERM_COLOR: always
jobs:
check:
runs-on: ubuntu-latest
services:
redis:
image: redis:7-alpine
ports:
- 6379:6379
options: >-
--health-cmd "redis-cli ping"
--health-interval 10s
--health-timeout 5s
--health-retries 5
steps:
- uses: actions/checkout@v4
- uses: moonrepo/setup-rust@v1
with:
components: clippy, rustfmt
- name: test
run: cargo test --verbose
- name: lint
# Exclude fairplay feature: requires Apple SDK binaries not in repository
# Only lint arkavo-rs package: excludes fpssdk (Apple copyrighted vendor code)
run: cargo clippy --package arkavo-rs --lib --bin arks -- -D warnings -A mismatched-lifetime-syntaxes
- name: format
run: |
# Format check excluding vendor/ (copyrighted Apple SDK code)
cargo fmt --check --package arkavo-rs
cargo fmt --check --package fairplay-wrapper
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: moonrepo/setup-rust@v1
with:
targets: x86_64-unknown-linux-gnu
- name: Build
run: |
cargo build --release --target x86_64-unknown-linux-gnu --bin arks
strip target/x86_64-unknown-linux-gnu/release/arks
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: x86_64-unknown-linux-gnu-build
path: target/x86_64-unknown-linux-gnu/release/arks
bench:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: moonrepo/setup-rust@v1
with:
targets: x86_64-unknown-linux-gnu
- name: Run benchmark
run: cargo bench --bench benchmarks | tee output.txt