mirror of
https://github.com/windmill-labs/windmill.git
synced 2026-08-19 08:01:25 +00:00
ef89a51f3a
* test: add bun executor tests with minimal production code changes - Add comprehensive bun job tests (bun_jobs.rs) covering: - Basic execution, error handling, annotation modes - Relative imports, deeply nested imports - Dedicated worker protocol for both Node.js and Bun runtimes - Builder tests for lockfile generation (import scanning) - Minimize changes to bun_executor.rs by exposing: - RELATIVE_BUN_LOADER and RELATIVE_BUN_BUILDER constants - build_loader() function and LoaderMode enum - BUN_DEDICATED_WORKER_ARGS constant - generate_dedicated_worker_wrapper() function - Tests call production code directly (build_loader) instead of duplicating script generation logic Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * nit * fix: reuse BUN_PATH/NODE_BIN_PATH from windmill-worker, add node to CI - Tests now use exported BUN_PATH and NODE_BIN_PATH constants instead of duplicating env var logic - Update backend-test.yml: - Upgrade bun to v1.3.8 - Add setup-node action - Add NODE_BIN_PATH to cargo test command Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * add private repo test * fix private repo test * try fix again * fix --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
69 lines
2.3 KiB
Plaintext
69 lines
2.3 KiB
Plaintext
ARG RUST_IMAGE=rust:1.80-slim-bookworm
|
|
ARG PYTHON_IMAGE=python:3.11.4-slim-bookworm
|
|
|
|
|
|
FROM ${RUST_IMAGE} as builder
|
|
|
|
RUN apt-get update && apt-get install -y git libssl-dev pkg-config
|
|
|
|
RUN apt-get -y update \
|
|
&& apt-get install -y \
|
|
curl
|
|
|
|
ENV SQLX_OFFLINE=true
|
|
|
|
|
|
RUN mkdir -p /frontend/build
|
|
RUN apt-get update \
|
|
&& apt-get install -y ca-certificates tzdata libpq5 cmake unzip\
|
|
make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev \
|
|
libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libxml2-dev \
|
|
libxmlsec1-dev libffi-dev liblzma-dev mecab-ipadic-utf8 libgdbm-dev libc6-dev git libprotobuf-dev libnl-route-3-dev \
|
|
libv8-dev nodejs npm clang libclang-dev\
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
|
|
RUN wget https://golang.org/dl/go1.21.5.linux-amd64.tar.gz && tar -C /usr/local -xzf go1.21.5.linux-amd64.tar.gz
|
|
ENV PATH="${PATH}:/usr/local/go/bin"
|
|
ENV GO_PATH=/usr/local/go/bin/go
|
|
|
|
# UV
|
|
RUN curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.9.24/uv-installer.sh | sh && mv /usr/local/cargo/bin/uv /usr/local/bin/uv
|
|
|
|
ENV TZ=Etc/UTC
|
|
|
|
ENV PYTHON_VERSION 3.11.4
|
|
|
|
# Python
|
|
RUN wget https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}.tgz \
|
|
&& tar -xf Python-${PYTHON_VERSION}.tgz && cd Python-${PYTHON_VERSION}/ && ./configure --enable-optimizations \
|
|
&& make -j 4 && make install
|
|
|
|
RUN /usr/local/bin/python3 -m pip install pip-tools
|
|
|
|
# Bun
|
|
COPY --from=oven/bun:1.3.8 /usr/local/bin/bun /usr/bin/bun
|
|
|
|
ARG TARGETPLATFORM
|
|
|
|
# Deno
|
|
RUN curl -Lsf https://github.com/denoland/deno/releases/download/v2.0.2/deno-x86_64-unknown-linux-gnu.zip -o deno.zip
|
|
# RUN [ "$TARGETPLATFORM" == "linux/arm64" ] && curl -Lsf https://github.com/denoland/deno/releases/download/v2.0.0/deno-aarch64-unknown-linux-gnu.zip -o deno.zip || true
|
|
RUN unzip deno.zip && rm deno.zip && mv deno /usr/bin/deno
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -y postgresql-client --allow-unauthenticated
|
|
|
|
RUN rustup component add rustfmt
|
|
|
|
# C#
|
|
RUN wget https://dot.net/v1/dotnet-install.sh -O dotnet-install.sh \
|
|
&& chmod +x dotnet-install.sh \
|
|
&& ./dotnet-install.sh --channel 9.0 --install-dir /usr/share/dotnet \
|
|
&& ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet \
|
|
&& rm dotnet-install.sh
|
|
|
|
|
|
# Nushell
|
|
COPY --from=ghcr.io/nushell/nushell:0.101.0-bookworm /usr/bin/nu /usr/bin/nu
|