huskies: rename project from storkit to huskies
Rename all references from storkit to huskies across the codebase: - .storkit/ directory → .huskies/ - Binary name, Cargo package name, Docker image references - Server code, frontend code, config files, scripts - Fix script/test to build frontend before cargo clippy/test so merge worktrees have frontend/dist available for RustEmbed Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
+17
-17
@@ -1,8 +1,8 @@
|
||||
# Story Kit – single-container runtime
|
||||
# Huskies – single-container runtime
|
||||
# All components (server, agents, web UI) run inside this container.
|
||||
# The target project repo is bind-mounted at /workspace.
|
||||
#
|
||||
# Build: docker build -t storkit -f docker/Dockerfile .
|
||||
# Build: docker build -t huskies -f docker/Dockerfile .
|
||||
# Run: docker compose -f docker/docker-compose.yml up
|
||||
#
|
||||
# Tested with: OrbStack (recommended on macOS), Docker Desktop (slower bind mounts)
|
||||
@@ -37,11 +37,11 @@ RUN curl -LsSf https://get.nexte.st/latest/linux | tar zxf - -C /usr/local/bin
|
||||
RUN npm install -g @anthropic-ai/claude-code
|
||||
|
||||
# ── Working directory ────────────────────────────────────────────────
|
||||
# /app holds the storkit source (copied in at build time for the binary).
|
||||
# /app holds the huskies source (copied in at build time for the binary).
|
||||
# /workspace is where the target project repo gets bind-mounted at runtime.
|
||||
WORKDIR /app
|
||||
|
||||
# ── Build the storkit server binary ─────────────────────────────────
|
||||
# ── Build the huskies server binary ─────────────────────────────────
|
||||
# Copy the full project tree so `cargo build` and `npm run build` (via
|
||||
# build.rs) can produce the release binary with embedded frontend assets.
|
||||
COPY . .
|
||||
@@ -51,7 +51,7 @@ RUN cd frontend && npm ci
|
||||
|
||||
# Build the release binary (build.rs runs npm run build for the frontend)
|
||||
RUN cargo build --release \
|
||||
&& cp target/release/storkit /usr/local/bin/storkit
|
||||
&& cp target/release/huskies /usr/local/bin/huskies
|
||||
|
||||
# ── Runtime stage (smaller image) ───────────────────────────────────
|
||||
FROM debian:bookworm-slim AS runtime
|
||||
@@ -91,8 +91,8 @@ ENV CARGO_HOME="/usr/local/cargo"
|
||||
# cargo-nextest
|
||||
COPY --from=base /usr/local/bin/cargo-nextest /usr/local/bin/cargo-nextest
|
||||
|
||||
# The storkit binary
|
||||
COPY --from=base /usr/local/bin/storkit /usr/local/bin/storkit
|
||||
# The huskies binary
|
||||
COPY --from=base /usr/local/bin/huskies /usr/local/bin/huskies
|
||||
|
||||
# Copy the full source tree so rebuild_and_restart can do `cargo build`
|
||||
# from the workspace root (CARGO_MANIFEST_DIR is baked into the binary).
|
||||
@@ -102,21 +102,21 @@ COPY --from=base /app /app
|
||||
# ── Non-root user ────────────────────────────────────────────────────
|
||||
# Claude Code refuses --dangerously-skip-permissions (bypassPermissions)
|
||||
# when running as root. Create a dedicated user so agents can launch.
|
||||
RUN groupadd -r storkit \
|
||||
&& useradd -r -g storkit -m -d /home/storkit storkit \
|
||||
&& mkdir -p /home/storkit/.claude \
|
||||
&& chown -R storkit:storkit /home/storkit \
|
||||
&& chown -R storkit:storkit /usr/local/cargo /usr/local/rustup \
|
||||
&& chown -R storkit:storkit /app \
|
||||
RUN groupadd -r huskies \
|
||||
&& useradd -r -g huskies -m -d /home/huskies huskies \
|
||||
&& mkdir -p /home/huskies/.claude \
|
||||
&& chown -R huskies:huskies /home/huskies \
|
||||
&& chown -R huskies:huskies /usr/local/cargo /usr/local/rustup \
|
||||
&& chown -R huskies:huskies /app \
|
||||
&& mkdir -p /workspace/target /app/target \
|
||||
&& chown storkit:storkit /workspace/target /app/target
|
||||
&& chown huskies:huskies /workspace/target /app/target
|
||||
|
||||
# ── Entrypoint ───────────────────────────────────────────────────────
|
||||
# Validates required env vars (GIT_USER_NAME, GIT_USER_EMAIL) and
|
||||
# configures git identity before starting the server.
|
||||
COPY docker/entrypoint.sh /usr/local/bin/entrypoint.sh
|
||||
|
||||
USER storkit
|
||||
USER huskies
|
||||
WORKDIR /workspace
|
||||
|
||||
# ── Ports ────────────────────────────────────────────────────────────
|
||||
@@ -125,8 +125,8 @@ EXPOSE 3001
|
||||
|
||||
# ── Volumes (defined in docker-compose.yml) ──────────────────────────
|
||||
# /workspace – bind mount: target project repo
|
||||
# /home/storkit/.claude – named volume: Claude Code sessions/state
|
||||
# /home/huskies/.claude – named volume: Claude Code sessions/state
|
||||
# /usr/local/cargo/registry – named volume: cargo dependency cache
|
||||
|
||||
ENTRYPOINT ["entrypoint.sh"]
|
||||
CMD ["storkit", "/workspace"]
|
||||
CMD ["huskies", "/workspace"]
|
||||
|
||||
Reference in New Issue
Block a user