Files
labs/labs.sh
michelle@shelltr.me ef2a6b31ad Initial commit
2025-06-07 14:04:07 -07:00

51 lines
1.7 KiB
Bash
Executable File

#!/bin/bash
# Define image name
IMAGE_NAME="pandoc-report-generator"
PDF_MAKE_DIR="./pdf_make" # Path to your Dockerfile and generate_reports.sh
LABS_DIR="./labs" # Path to your labs directory
echo "--- Debug Info ---"
echo "Current Working Directory: $(pwd)"
echo "Image Name (variable): '$IMAGE_NAME'"
echo "PDF Make Directory (variable): '$PDF_MAKE_DIR'"
echo "Labs Directory (variable): '$LABS_DIR'"
echo "Absolute Labs Mount Path: '$(pwd)/$LABS_DIR'"
echo "--------------------"
echo "--- Building Docker image: $IMAGE_NAME ---"
# Build the Docker image from the pdf_make directory
docker build -t "$IMAGE_NAME" "$PDF_MAKE_DIR"
BUILD_STATUS=$?
echo "Build command exited with status: $BUILD_STATUS"
if [ $BUILD_STATUS -ne 0 ]; then
echo "ERROR: Docker image build failed. Exiting."
exit 1
fi
echo "--- Running report generation inside Docker container ---"
# This single-line docker run command is the most robust way to avoid shell parsing issues.
# It explicitly sets the entrypoint and mounts the /labs directory.
docker run --rm --entrypoint /bin/sh -v "$(pwd)/$LABS_DIR:/labs" "$IMAGE_NAME" /app/generate_reports.sh
RUN_STATUS=$?
echo "Run command exited with status: $RUN_STATUS"
if [ $RUN_STATUS -ne 0 ]; then
echo "ERROR: Report generation failed inside Docker container."
exit 1
fi
echo "--- All operations completed successfully. ---"
# --- New Step: Verify Output on Host ---
echo "--- Verifying generated PDFs on host ---"
find "$LABS_DIR" -type f -name "LAB-REPORT.pdf"
if [ $? -eq 0 ]; then
echo "PDFs should now be available in your '$LABS_DIR' directory."
else
echo "No PDFs found or an error occurred during verification."
fi