Private
Public Access
1
0
Files
linux_patch_api/debian/rules
Echo 65cfb40abb
Some checks failed
CI/CD Pipeline / Code Format (push) Has been cancelled
CI/CD Pipeline / Clippy Lints (push) Has been cancelled
CI/CD Pipeline / Unit Tests (push) Has been cancelled
CI/CD Pipeline / Security Audit (push) Has been cancelled
CI/CD Pipeline / Build Release (x86_64-unknown-linux-gnu) (push) Has been cancelled
CI/CD Pipeline / Build Ubuntu Package (push) Has been cancelled
v1.0.0 Release - All Phases Complete
Phase 2: Core API Development
- 15 REST API endpoints (packages, patches, system, jobs, websocket)
- mTLS authentication layer (src/auth/mtls.rs)
- IP whitelist enforcement (src/auth/whitelist.rs)
- Job manager with async operation support
- WebSocket streaming for job status

Phase 3: Security Hardening
- Security testing: 16/16 tests passing
- Fuzz testing: 21 tests, all findings resolved
- Threat model validation (STRIDE matrix)
- TLS binding fix (critical vulnerability resolved)
- Security documentation complete

Phase 4: Production Readiness
- Performance benchmarking (all targets met)
- Package creation (.deb/.rpm structures)
- Documentation (README, API docs, deployment guide)
- Security hardening (6 vulnerabilities fixed)

Deliverables:
- API_DOCUMENTATION.md (889 lines)
- DEPLOYMENT_GUIDE.md (733 lines)
- SECURITY.md (346 lines)
- README.md (525 lines)
- debian/ package structure
- linux-patch-api.spec (RPM)
- install.sh installer script
- benches/api_benchmarks.rs
- Multiple security/performance reports

Security Status: 0 vulnerabilities remaining
Test Coverage: 31 unit tests, 21 integration tests
Build Status: Release optimized
2026-04-10 01:41:19 +00:00

38 lines
1.4 KiB
Makefile
Executable File

#!/usr/bin/make -f
# debian/rules for linux-patch-api
export DEB_CARGO_PACKAGE=linux-patch-api
export DEB_CARGO_BUILD_FLAGS=--release
%:
dh $@
override_dh_auto_build:
cargo build --release --target x86_64-unknown-linux-gnu
override_dh_auto_install:
dh_auto_install
# Create installation directories
mkdir -p debian/linux-patch-api/usr/bin
mkdir -p debian/linux-patch-api/etc/linux_patch_api
mkdir -p debian/linux-patch-api/lib/systemd/system
mkdir -p debian/linux-patch-api/var/log/linux_patch_api
mkdir -p debian/linux-patch-api/var/lib/linux_patch_api
# Install binary
cp target/x86_64-unknown-linux-gnu/release/linux-patch-api debian/linux-patch-api/usr/bin/
chmod 755 debian/linux-patch-api/usr/bin/linux-patch-api
# Install systemd service
cp configs/linux-patch-api.service debian/linux-patch-api/lib/systemd/system/
chmod 644 debian/linux-patch-api/lib/systemd/system/linux-patch-api.service
# Install example configs (will be copied to /etc on first install)
cp configs/config.yaml.example debian/linux-patch-api/etc/linux_patch_api/config.yaml.example
cp configs/whitelist.yaml.example debian/linux-patch-api/etc/linux_patch_api/whitelist.yaml.example
chmod 644 debian/linux-patch-api/etc/linux_patch_api/*.example
override_dh_strip_nondeterminism:
# Disable for reproducible builds with cargo
dh_strip_nondeterminism --disable
override_dh_shlibdeps:
dh_shlibdeps -- --dpkg-shlibdeps-params=--ignore-missing-info