HARMONY-2237: Remove gdal-async from the harmony dockerfile installation.#877
HARMONY-2237: Remove gdal-async from the harmony dockerfile installation.#877chris-durbin merged 2 commits intomainfrom
Conversation
|
Important Review skippedReview was skipped due to path filters ⛔ Files ignored due to path filters (8)
CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
📝 WalkthroughWalkthroughThe services/harmony Dockerfile has been simplified by removing the Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
📝 Coding Plan
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
services/harmony/Dockerfile (1)
7-7: Consider adding--no-install-recommendsto reduce image size.Static analysis flags this as a best practice for Docker images. Adding this flag prevents apt from installing recommended but non-essential packages, reducing image bloat.
♻️ Suggested improvement
-RUN apt-get update && apt-get install -y sqlite3 libsqlite3-dev python3 python3-pip python3-venv libpq-dev build-essential +RUN apt-get update && apt-get install -y --no-install-recommends sqlite3 libsqlite3-dev python3 python3-pip python3-venv libpq-dev build-essential🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@services/harmony/Dockerfile` at line 7, Update the Dockerfile RUN command that calls apt-get install (the RUN line installing sqlite3 libsqlite3-dev python3 python3-pip python3-venv libpq-dev build-essential) to include the --no-install-recommends flag so apt does not pull recommended packages, reducing image size; ensure the modified RUN uses apt-get install -y --no-install-recommends and still performs apt-get update beforehand and cleans up apt lists afterward as appropriate.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In `@services/harmony/Dockerfile`:
- Line 7: Update the Dockerfile RUN command that calls apt-get install (the RUN
line installing sqlite3 libsqlite3-dev python3 python3-pip python3-venv
libpq-dev build-essential) to include the --no-install-recommends flag so apt
does not pull recommended packages, reducing image size; ensure the modified RUN
uses apt-get install -y --no-install-recommends and still performs apt-get
update beforehand and cleans up apt lists afterward as appropriate.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 7078346a-33aa-40c2-96b0-f397f5f892e2
📒 Files selected for processing (1)
services/harmony/Dockerfile
flamingbear
left a comment
There was a problem hiding this comment.
The changes make sense, I was able to build all of the images including -m1.
I deployed to Harmony-In-A-Box and ran some regression tests against it. I also reverified the tests from the orginal harmony pr that removes gdal-async and the tiff outputs looks visually similar and the NetCDF files have equivalent hashes with earthdata-hashdiff.
Jira Issue ID
HARMONY-2237
Description
Building the harmony docker image was failing causing a failure during UAT deployment (since we build the image in that environment but not in SIT).
The root cause is that package.json and package-lock.json no longer refers to gdal-async but we were running an
npm install gdal-asyncfollowed bynpm ciwhich complained because the package.json and package-lock.json were now out of sync.Local Test Steps
npm run buildandnpm run build-m1from the services/harmony directory. Make sure both complete successfully.PR Acceptance Checklist
Summary by CodeRabbit