Conversation
📝 WalkthroughWalkthroughTwo Dockerfiles updated to change how R packages are installed. ir/ir-base/Dockerfile.ir now installs IRkernel from the Posit Package Manager CRAN mirror and calls IRkernel::installspec(). ir/ir-with-libs/Dockerfile.ir replaces many per-package R install commands with environment variables CRAN_REPO and R_PACKAGES and a single R -e invocation to install all packages, and consolidates apt-get into a single update/install/clean sequence while removing explicit per-package installation blocks. 🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Fix all issues with AI agents
In `@ir/ir-with-libs/Dockerfile.ir`:
- Around line 66-78: The Dockerfile removes Java runtime when purging
${BUILDDEPS}, breaking rJava at runtime; ensure a JRE package remains by
installing default-jre-headless separately and not removing it: add
default-jre-headless to the apt-get install step (outside of ${BUILDDEPS}) or
install it in the same RUN before the apt-get remove --purge -y ${BUILDDEPS}
line, and keep the apt-get remove call targeting only ${BUILDDEPS} so
default-jre-headless (needed by rJava) is preserved.
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Fix all issues with AI agents
In `@ir/ir-with-libs/Dockerfile.ir`:
- Around line 50-52: The CRAN repo is set to a moving "latest" snapshot via the
ENV CRAN_REPO variable; replace that value with a dated Posit Package Manager
snapshot URL to pin binaries for reproducible builds (update the ENV CRAN_REPO
entry in Dockerfile.ir to a specific snapshot date, e.g. use the Posit snapshot
path with a YYYY-MM-DD segment instead of "latest"). Ensure the ENV CRAN_REPO
assignment is updated wherever it appears so builds use the fixed dated
snapshot.
♻️ Duplicate comments (1)
ir/ir-with-libs/Dockerfile.ir (1)
66-81: rJava will miss a runtime Java after purge.
default-jdkis removed with${BUILDDEPS}, leaving no JRE forrJava. Keep a runtime JRE outside the purge.🔧 Minimal fix
+ENV RUNTIME_DEPS="default-jre-headless" RUN apt-get update \ - && apt-get install -y ${BUILDDEPS} \ + && apt-get install -y ${RUNTIME_DEPS} ${BUILDDEPS} \ && R -e " \ options( \ Ncpus = 4, \ HTTPUserAgent = sprintf('R/%s R (%s)', getRversion(), paste(getRversion(), R.version['platform'], R.version['arch'], R.version['os'])) \ ); \ install.packages( \ strsplit(Sys.getenv('R_PACKAGES'), '\\\\s+')[[1]], \ repos = Sys.getenv('CRAN_REPO'), \ dependencies = TRUE \ ) \ " \ && apt-get clean \ && apt-get remove --purge -y ${BUILDDEPS} \ && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.