mirror of
https://github.com/harivansh-afk/sandbox-agent.git
synced 2026-04-15 06:04:43 +00:00
Rename Foundry handoffs to tasks (#239)
* Restore foundry onboarding stack * Consolidate foundry rename * Create foundry tasks without prompts * Rename Foundry handoffs to tasks
This commit is contained in:
parent
d30cc0bcc8
commit
d75e8c31d1
281 changed files with 9242 additions and 4356 deletions
42
foundry/docker/backend.dev.Dockerfile
Normal file
42
foundry/docker/backend.dev.Dockerfile
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
# syntax=docker/dockerfile:1.7
|
||||
|
||||
FROM oven/bun:1.3
|
||||
|
||||
ARG GIT_SPICE_VERSION=v0.23.0
|
||||
ARG SANDBOX_AGENT_VERSION=0.3.0
|
||||
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
ca-certificates \
|
||||
curl \
|
||||
git \
|
||||
gh \
|
||||
nodejs \
|
||||
npm \
|
||||
openssh-client \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN npm install -g pnpm@10.28.2
|
||||
|
||||
RUN set -eux; \
|
||||
arch="$(dpkg --print-architecture)"; \
|
||||
case "$arch" in \
|
||||
amd64) spice_arch="x86_64" ;; \
|
||||
arm64) spice_arch="aarch64" ;; \
|
||||
*) echo "Unsupported architecture for git-spice: $arch" >&2; exit 1 ;; \
|
||||
esac; \
|
||||
tmpdir="$(mktemp -d)"; \
|
||||
curl -fsSL "https://github.com/abhinav/git-spice/releases/download/${GIT_SPICE_VERSION}/git-spice.Linux-${spice_arch}.tar.gz" -o "${tmpdir}/git-spice.tgz"; \
|
||||
tar -xzf "${tmpdir}/git-spice.tgz" -C "${tmpdir}"; \
|
||||
install -m 0755 "${tmpdir}/gs" /usr/local/bin/gs; \
|
||||
ln -sf /usr/local/bin/gs /usr/local/bin/git-spice; \
|
||||
rm -rf "${tmpdir}"
|
||||
|
||||
RUN curl -fsSL "https://releases.rivet.dev/sandbox-agent/${SANDBOX_AGENT_VERSION}/install.sh" | sh
|
||||
|
||||
ENV PATH="/root/.local/bin:${PATH}"
|
||||
ENV SANDBOX_AGENT_BIN="/root/.local/bin/sandbox-agent"
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
CMD ["bash", "-lc", "git config --global --add safe.directory /app >/dev/null 2>&1 || true; pnpm install --force --frozen-lockfile --filter @sandbox-agent/foundry-backend... && exec bun foundry/packages/backend/src/index.ts start --host 0.0.0.0 --port 7741"]
|
||||
49
foundry/docker/backend.preview.Dockerfile
Normal file
49
foundry/docker/backend.preview.Dockerfile
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
# syntax=docker/dockerfile:1.7
|
||||
|
||||
FROM oven/bun:1.3
|
||||
|
||||
ARG GIT_SPICE_VERSION=v0.23.0
|
||||
ARG SANDBOX_AGENT_VERSION=0.3.0
|
||||
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
ca-certificates \
|
||||
curl \
|
||||
git \
|
||||
gh \
|
||||
nodejs \
|
||||
npm \
|
||||
openssh-client \
|
||||
&& npm install -g pnpm@10.28.2 \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN set -eux; \
|
||||
arch="$(dpkg --print-architecture)"; \
|
||||
case "$arch" in \
|
||||
amd64) spice_arch="x86_64" ;; \
|
||||
arm64) spice_arch="aarch64" ;; \
|
||||
*) echo "Unsupported architecture for git-spice: $arch" >&2; exit 1 ;; \
|
||||
esac; \
|
||||
tmpdir="$(mktemp -d)"; \
|
||||
curl -fsSL "https://github.com/abhinav/git-spice/releases/download/${GIT_SPICE_VERSION}/git-spice.Linux-${spice_arch}.tar.gz" -o "${tmpdir}/git-spice.tgz"; \
|
||||
tar -xzf "${tmpdir}/git-spice.tgz" -C "${tmpdir}"; \
|
||||
install -m 0755 "${tmpdir}/gs" /usr/local/bin/gs; \
|
||||
ln -sf /usr/local/bin/gs /usr/local/bin/git-spice; \
|
||||
rm -rf "${tmpdir}"
|
||||
|
||||
RUN curl -fsSL "https://releases.rivet.dev/sandbox-agent/${SANDBOX_AGENT_VERSION}/install.sh" | sh
|
||||
|
||||
ENV PATH="/root/.local/bin:${PATH}"
|
||||
ENV SANDBOX_AGENT_BIN="/root/.local/bin/sandbox-agent"
|
||||
|
||||
WORKDIR /workspace/quebec
|
||||
|
||||
COPY quebec /workspace/quebec
|
||||
COPY rivet-checkout /workspace/rivet-checkout
|
||||
|
||||
RUN pnpm install --frozen-lockfile
|
||||
RUN pnpm --filter @sandbox-agent/foundry-shared build
|
||||
RUN pnpm --filter @sandbox-agent/foundry-client build
|
||||
RUN pnpm --filter @sandbox-agent/foundry-backend build
|
||||
|
||||
CMD ["bash", "-lc", "git config --global --add safe.directory /workspace/quebec >/dev/null 2>&1 || true; exec bun packages/backend/dist/index.js start --host 0.0.0.0 --port 7841"]
|
||||
11
foundry/docker/frontend.dev.Dockerfile
Normal file
11
foundry/docker/frontend.dev.Dockerfile
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
# syntax=docker/dockerfile:1.7
|
||||
|
||||
FROM node:22-bookworm-slim
|
||||
|
||||
# Install pnpm into the image so we can run as a non-root user at runtime.
|
||||
# Using npm here avoids Corepack's first-run download behavior.
|
||||
RUN npm install -g pnpm@10.28.2
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
CMD ["bash", "-lc", "pnpm install --force --frozen-lockfile --filter @sandbox-agent/foundry-frontend... && cd foundry/packages/frontend && exec pnpm vite --host 0.0.0.0 --port 4173"]
|
||||
23
foundry/docker/frontend.preview.Dockerfile
Normal file
23
foundry/docker/frontend.preview.Dockerfile
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
# syntax=docker/dockerfile:1.7
|
||||
|
||||
FROM node:22-bookworm-slim AS build
|
||||
|
||||
RUN npm install -g pnpm@10.28.2
|
||||
|
||||
WORKDIR /workspace/quebec
|
||||
|
||||
COPY quebec /workspace/quebec
|
||||
COPY rivet-checkout /workspace/rivet-checkout
|
||||
|
||||
RUN pnpm install --frozen-lockfile
|
||||
RUN pnpm --filter @sandbox-agent/foundry-shared build
|
||||
RUN pnpm --filter @sandbox-agent/foundry-client build
|
||||
RUN pnpm --filter @sandbox-agent/foundry-frontend-errors build
|
||||
RUN pnpm --filter @sandbox-agent/foundry-frontend build
|
||||
|
||||
FROM nginx:1.27-alpine
|
||||
|
||||
COPY quebec/docker/nginx.preview.conf /etc/nginx/conf.d/default.conf
|
||||
COPY --from=build /workspace/quebec/packages/frontend/dist /usr/share/nginx/html
|
||||
|
||||
EXPOSE 4273
|
||||
31
foundry/docker/nginx.preview.conf
Normal file
31
foundry/docker/nginx.preview.conf
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
server {
|
||||
listen 4273;
|
||||
server_name _;
|
||||
|
||||
root /usr/share/nginx/html;
|
||||
index index.html;
|
||||
|
||||
location /api/rivet/ {
|
||||
proxy_pass http://backend:7841/api/rivet/;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
}
|
||||
|
||||
location = /api/rivet {
|
||||
proxy_pass http://backend:7841/api/rivet;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
}
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ /index.html;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue