Spaces:
Paused
Paused
Fix: Add ImportLDraw auto-download and verification logic
Browse files- Dockerfile +16 -0
Dockerfile
CHANGED
|
@@ -64,6 +64,22 @@ WORKDIR $HOME/app
|
|
| 64 |
# 复制项目文件
|
| 65 |
COPY --chown=user . $HOME/app
|
| 66 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 67 |
# 安装 Python 依赖
|
| 68 |
RUN pip install --no-cache-dir --upgrade pip && \
|
| 69 |
pip install --no-cache-dir -r requirements.txt
|
|
|
|
| 64 |
# 复制项目文件
|
| 65 |
COPY --chown=user . $HOME/app
|
| 66 |
|
| 67 |
+
# 验证 ImportLDraw 插件,若不存在则下载
|
| 68 |
+
RUN if [ ! -d "$HOME/app/code/ImportLDraw" ] || [ ! -f "$HOME/app/code/ImportLDraw/__init__.py" ]; then \
|
| 69 |
+
echo "⚠️ ImportLDraw not found in repo, downloading..."; \
|
| 70 |
+
wget -q https://github.com/TobyLobster/ImportLDraw/archive/refs/tags/v1.2.1.zip -O /tmp/importldraw.zip && \
|
| 71 |
+
unzip -q /tmp/importldraw.zip -d /tmp/ && \
|
| 72 |
+
mv /tmp/ImportLDraw-1.2.1 $HOME/app/code/ImportLDraw && \
|
| 73 |
+
rm /tmp/importldraw.zip && \
|
| 74 |
+
echo "✅ ImportLDraw downloaded successfully"; \
|
| 75 |
+
else \
|
| 76 |
+
echo "✅ ImportLDraw found in repo"; \
|
| 77 |
+
fi
|
| 78 |
+
|
| 79 |
+
# 验证插件已正确部署
|
| 80 |
+
RUN ls -la $HOME/app/code/ImportLDraw/__init__.py || \
|
| 81 |
+
(echo "❌ ImportLDraw deployment failed" && exit 1)
|
| 82 |
+
|
| 83 |
# 安装 Python 依赖
|
| 84 |
RUN pip install --no-cache-dir --upgrade pip && \
|
| 85 |
pip install --no-cache-dir -r requirements.txt
|