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>
49 lines
2.0 KiB
Docker
49 lines
2.0 KiB
Docker
# Pre-baked cross-compiler for Windows amd64 Tauri releases (runs on Linux amd64).
|
|
# All MinGW and Node.js dependencies are installed once here; CI jobs skip apt-get entirely.
|
|
# Rebuild when: Rust toolchain version changes, Node.js major version changes,
|
|
# OpenSSL major version changes (used via OPENSSL_STATIC=1), or Tauri CLI changes
|
|
# that affect bundler system deps.
|
|
# Tag format: rust<VER>-node<VER>
|
|
FROM rust:1.88-slim
|
|
|
|
RUN apt-get update -qq \
|
|
&& apt-get install -y -qq --no-install-recommends \
|
|
ca-certificates \
|
|
mingw-w64 \
|
|
curl \
|
|
nsis \
|
|
perl \
|
|
make \
|
|
jq \
|
|
git \
|
|
&& curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
|
|
&& apt-get install -y --no-install-recommends nodejs \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg \
|
|
| dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg \
|
|
&& chmod go+r /usr/share/keyrings/githubcli-archive-keyring.gpg \
|
|
&& echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" \
|
|
> /etc/apt/sources.list.d/github-cli.list \
|
|
&& apt-get update -qq \
|
|
&& apt-get install -y -qq --no-install-recommends gh \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Pre-build libsodium for x86_64-pc-windows-gnu so libsodium-sys-stable
|
|
# does not attempt a network download at cargo build time (no DNS in CI containers).
|
|
RUN set -eu \
|
|
&& SODIUM_VER="1.0.20" \
|
|
&& curl -fsSL "https://download.libsodium.org/libsodium/releases/libsodium-${SODIUM_VER}.tar.gz" \
|
|
| tar -xz -C /tmp \
|
|
&& cd "/tmp/libsodium-${SODIUM_VER}" \
|
|
&& ./configure \
|
|
--host=x86_64-w64-mingw32 \
|
|
--prefix=/usr/x86_64-w64-mingw32 \
|
|
--disable-shared \
|
|
--enable-static \
|
|
&& make -j"$(nproc)" \
|
|
&& make install \
|
|
&& rm -rf "/tmp/libsodium-${SODIUM_VER}"
|
|
|
|
RUN rustup target add x86_64-pc-windows-gnu
|