feat(docker): update .dockerignore for improved file management; enhance Dockerfile with better debugging outputs and verification steps

This commit is contained in:
pacnpal
2025-01-28 23:37:50 -05:00
parent 0b59d7ac1f
commit c0bc1ffbf8
2 changed files with 29 additions and 68 deletions

View File

@@ -1,65 +1,24 @@
# Version control
.git
.gitignore
.gitattributes
# Ignore everything by default
*
# Python
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
venv/
env/
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST
# IDE
.idea/
.vscode/
*.swp
*.swo
.project
.pydevproject
.settings/
*.sublime-workspace
*.sublime-project
# Test
.pytest_cache/
.coverage
htmlcov/
.tox/
.nox/
coverage.xml
*.cover
*.py,cover
.hypothesis/
# Project specific
rules_backup/
.env
# Keep these files
!src/
# Explicitly allow required files
!src/simpleguardhome/
!src/simpleguardhome/**
!requirements.txt
!setup.py
!pyproject.toml
!MANIFEST.in
!LICENSE
!README.md
!docker-entrypoint.sh
# Still exclude these even if in allowed directories
**/__pycache__
**/*.pyc
**/*.pyo
**/*.pyd
**/.Python
**/*.so
**/*.egg
**/*.egg-info
**/*.egg-info/

View File

@@ -39,20 +39,21 @@ WORKDIR /app
COPY --from=builder /usr/local/lib/python3.11/site-packages/ /usr/local/lib/python3.11/site-packages/
COPY --from=builder /usr/local/bin/ /usr/local/bin/
# Debug: Show current state
# Debug: Show initial state
RUN echo "Initial directory structure:" && \
tree /app || true
# Copy project files
COPY . /app/
# First copy the package source directory
COPY src/ /app/src/
# Debug: Show copied files
RUN echo "After copying project files:" && \
# Copy project files
COPY pyproject.toml setup.py MANIFEST.in README.md LICENSE docker-entrypoint.sh ./
# Debug: Verify directory structure
RUN echo "After copying files:" && \
tree /app && \
echo "Listing src directory:" && \
ls -la /app/src && \
echo "Listing package directory:" && \
ls -la /app/src/simpleguardhome
echo "Verifying package directory:" && \
ls -la /app/src/simpleguardhome/
# Set permissions
RUN chmod -R 755 /app && \
@@ -69,7 +70,8 @@ RUN set -ex && \
echo "Verifying installation..." && \
python3 -c "import sys; print('Python path:', sys.path)" && \
python3 -c "import simpleguardhome; print('Package found at:', simpleguardhome.__file__)" && \
python3 -c "from simpleguardhome.main import app; print('App imported successfully')"
python3 -c "from simpleguardhome.main import app; print('App imported successfully')" && \
echo "Package installation successful"
# Create rules backup directory
RUN mkdir -p /app/rules_backup && \