-
Notifications
You must be signed in to change notification settings - Fork 29
Expand file tree
/
Copy pathContainerfile.c9s-tests
More file actions
58 lines (50 loc) · 1.6 KB
/
Copy pathContainerfile.c9s-tests
File metadata and controls
58 lines (50 loc) · 1.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
FROM quay.io/centos/centos:stream9
RUN dnf -y install epel-release \
&& dnf config-manager --set-enabled crb \
&& dnf -y update
RUN dnf -y install --allowerasing \
curl \
gcc \
gcc-c++ \
git \
krb5-devel \
python3-rpm \
rpm-build \
rpmdevtools \
rpmautospec-rpm-macros \
rpmlint \
python3.11 \
python3.11-pip \
python3.11-devel \
&& dnf clean all
# Create Python 3.11 virtual environment and install Python packages
RUN python3.11 -m venv --system-site-packages /opt/beeai-venv \
&& /opt/beeai-venv/bin/pip install --upgrade pip \
&& /opt/beeai-venv/bin/pip install --no-cache-dir \
"litellm!=1.82.7,!=1.82.8" \
beeai-framework[vertexai,mcp,duckduckgo]==0.1.79 \
openinference-instrumentation-beeai \
arize-phoenix-otel \
aiohttp \
redis \
sentry-sdk \
specfile \
pytest \
pytest-asyncio \
flexmock \
koji \
GitPython \
tomli-w
# Verify no malicious litellm_init.pth was introduced by compromised litellm packages (e.g. 1.82.7, 1.82.8)
RUN MALICIOUS=$(find /usr /opt -name "litellm_init.pth" 2>/dev/null); \
if [ -n "$MALICIOUS" ]; then \
echo "SECURITY ALERT: malicious litellm_init.pth detected: $MALICIOUS"; \
exit 1; \
fi
# Make venv Python the default
ENV PATH=/opt/beeai-venv/bin:$PATH
RUN git config --global user.email "ymir-tests@example.com" \
&& git config --global user.name "Ymir Tests"
# Set PYTHONPATH so ymir namespace package can be imported
ENV PYTHONPATH=/src:$PYTHONPATH
WORKDIR /src