Some checks failed
Test / rust-fmt-check (pull_request) Failing after 0s
Test / rust-clippy (pull_request) Failing after 1s
Test / rust-tests (pull_request) Failing after 0s
Test / frontend-typecheck (pull_request) Failing after 16s
Test / frontend-tests (pull_request) Failing after 18s
PR Review Automation / review (pull_request) Failing after 4m13s
Complete backport of all features from apollo_nxt-trcaa repository: - Three-tier shell execution safety system (Tier 1: auto, Tier 2: approve, Tier 3: deny) - Ollama function calling with tool use support - AI provider tool calling auto-detection - kubectl binary bundling and management - kubeconfig upload and context management - Shell approval modal with real-time UI - MCP protocol HTTP transport with custom headers - Enhanced security audit logging - Comprehensive test coverage (275+ tests) - Updated CI/CD workflows for Gitea Actions - Complete documentation (ADRs, wiki, release notes) Sanitization applied to all files: - Removed all MSI, Motorola, VNXT, Vesta references - Replaced internal infrastructure references with TFTSR equivalents - Updated all URLs and API endpoints - Sanitized commit history references in documentation Technical changes: - New modules: shell/classifier, shell/executor, shell/kubectl, shell/kubeconfig - Enhanced AI providers: ollama.rs, openai.rs with function calling - New Tauri commands: shell execution, kubeconfig management, tool calling detection - Database migrations: shell_execution_audit table - Frontend: ShellApprovalModal, ShellExecution, KubeconfigManager pages - CI/CD: kubectl bundling, multi-platform builds, Gitea Actions integration Version: 1.0.8 Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
45 lines
1.5 KiB
Makefile
45 lines
1.5 KiB
Makefile
GH_REPO := msicie/apollo_nxt-trcaa
|
|
TAG ?= v0.1.0-alpha
|
|
TARGET := aarch64-unknown-linux-gnu
|
|
|
|
# Build linux/arm64 release artifact natively inside a Docker container,
|
|
# then upload to the GitHub release for TAG.
|
|
.PHONY: release-arm64
|
|
release-arm64: build-arm64 upload-arm64
|
|
|
|
.PHONY: build-arm64
|
|
build-arm64:
|
|
docker run --rm \
|
|
--platform linux/arm64 \
|
|
-v "$(CURDIR):/workspace" \
|
|
-w /workspace \
|
|
rust:1.88-slim \
|
|
bash -c ' \
|
|
apt-get update -qq && \
|
|
apt-get install -y -qq libwebkit2gtk-4.1-dev libssl-dev libgtk-3-dev \
|
|
libayatana-appindicator3-dev librsvg2-dev patchelf pkg-config curl perl && \
|
|
curl -fsSL https://deb.nodesource.com/setup_22.x | bash - && \
|
|
apt-get install -y nodejs && \
|
|
npm ci --legacy-peer-deps && \
|
|
rustup target add $(TARGET) && \
|
|
cargo install tauri-cli --version "^2" --locked && \
|
|
CI=true cargo tauri build --target $(TARGET) && \
|
|
mkdir -p artifacts/linux-arm64 && \
|
|
find src-tauri/target/$(TARGET)/release/bundle \
|
|
-name "*.deb" -o -name "*.rpm" -o -name "*.AppImage" | \
|
|
xargs -I{} cp {} artifacts/linux-arm64/ \
|
|
'
|
|
@echo "Artifacts:"
|
|
@ls -lh artifacts/linux-arm64/
|
|
|
|
.PHONY: upload-arm64
|
|
upload-arm64:
|
|
@test -n "$(GH_TOKEN)" || (echo "ERROR: set GH_TOKEN env var"; exit 1)
|
|
@for f in artifacts/linux-arm64/*; do \
|
|
[ -f "$$f" ] || continue; \
|
|
NAME="linux-arm64-$$(basename $$f)"; \
|
|
echo "Uploading $$NAME..."; \
|
|
GH_TOKEN=$(GH_TOKEN) gh release upload $(TAG) "$$f#$$NAME" \
|
|
--repo $(GH_REPO) && echo "OK" || echo "FAIL: $$f"; \
|
|
done
|