Skip to content

build: pin docker images#486

Merged
osm-vishnukyatannawar merged 2 commits intomainfrom
build/pin-docker-images
Feb 17, 2026
Merged

build: pin docker images#486
osm-vishnukyatannawar merged 2 commits intomainfrom
build/pin-docker-images

Conversation

@kshitij-k-osmosys
Copy link
Contributor

@kshitij-k-osmosys kshitij-k-osmosys commented Feb 16, 2026

API PR Checklist

Task Link

Osmosys Developers must include the Pinestem task link in the PR.

REST-2233

Pre-requisites

  • I have gone through the Contributing guidelines for Submitting a Pull Request (PR) and ensured that this is not a duplicate PR.
  • I have performed unit testing for the new feature added or updated to ensure the new features added are working as expected.
  • I have added/updated test cases to the test suite as applicable.
  • I have performed preliminary testing using the test suite to ensure that any existing features are not impacted and any new features are working as expected as a whole.
  • I have added/updated the required api docs as applicable.
  • I have added/updated the .env.example file with the required values as applicable.

PR Details

PR details have been updated as per the given format (see below)

  • PR title adheres to the format specified in guidelines (e.g., feat: add admin login endpoint)
  • Description has been added
  • Related changes have been added (optional)
  • Screenshots have been added (optional)
  • Query request and response examples have been added (as applicable, in case added or updated)
  • Documentation changes have been listed (as applicable)
  • Test suite/unit testing output is added (as applicable)
  • Pending actions have been added (optional)
  • Any other additional notes have been added (optional)

Additional Information

  • Appropriate label(s) have been added (ready for review should be added if the PR is ready to be reviewed)
  • Assignee(s) and reviewer(s) have been added (optional)

Note: Reviewer should ensure that the checklist and description have been populated and followed correctly, and the PR should be merged only after resolving all conversations and verifying that CI checks pass.


Description:

Pin osmox-postgres docker image to postgres:18
Pin osmox-redis docker image to redis:8.4

Related changes:

  1. Pin osmox-postgres docker image to postgres:18

For Postgres we had already made a shift in how we pick mountpoint in #482
So decided to continue using postgres 18 as base image

  1. Pin osmox-redis docker image to redis:8.4

Redis has added an open source license for versions starting from 8.0 onwards
So picked version one below latest i.e. redis:8.4

Screenshots:

image

Test suite/unit testing output:

Tested the following

Successful:

Test all API endpoints - working
Try sending mailgun notification - working
Try sending 360dialog notification - working
Try sending smtp email with attachment - working
Try sending twilio voice call - used an existing entry for testing - working
Try sending twilio whatsapp business message - used an existing entry in "TRACSHA -STG" for testing - working
Try sending plivo sms message - used an existing entry in "OQSHA -STG" for testing - working
Test the "test mode" functionality - working
Check if messages are processed for recipients which are added in "whitelist" - working
Check archive functionality of scheduler script - notifications archived successfully

Known Issues:

Check deleting archive notifications functionality of scheduler script


Additional notes:

We should keep a quarterly/semi annual reminder of updating image versions

Fixes the following issues

Links to images on Docker Hub

Summary by CodeRabbit

  • Chores
    • Updated PostgreSQL service to version 18
    • Updated Redis service to version 8.4

@coderabbitai
Copy link

coderabbitai bot commented Feb 16, 2026

📝 Walkthrough

Walkthrough

This PR pins Docker service image versions across three docker-compose files: PostgreSQL upgraded from latest to 18, and Redis upgraded from latest to 8.4. These explicit version tags replace floating latest tags in the database, Redis, and main application compose configurations.

Changes

Cohort / File(s) Summary
Docker Service Image Pins
apps/api/docker-compose.db.yml, apps/api/docker-compose.redis.yml, apps/api/docker-compose.yml
Pinned service image versions: PostgreSQL latest18 and Redis latest8.4. No configuration, ports, healthcheck, or volumes altered.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related issues

Possibly related PRs

Suggested labels

PostgreSQL Migration

Suggested reviewers

  • osm-vishnukyatannawar

Poem

🐰 Versions pinned, no more floating free,
PostgreSQL eighteen, Redis eight we see,
No more surprises from the latest tag,
Docker containers steady, never lag! 🎯

🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title 'build: pin docker images' clearly and concisely describes the main change of pinning Docker service images to specific versions rather than floating tags.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Merge Conflict Detection ✅ Passed ✅ No merge conflicts detected when merging into main
Description check ✅ Passed The PR description follows the API template with all major sections completed: task link, pre-requisites checklist, PR details checklist, related changes, screenshots, test results, and additional notes with issue references.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch build/pin-docker-images

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
apps/api/docker-compose.redis.yml (1)

19-19: Good improvement pinning from latest to an explicit version.

The current latest Redis on Docker Hub is 8.6, so redis:8.4 is already two minor versions behind. The PR description mentions choosing 8.4 "due to Redis licensing starting from 8.0," but starting with Redis 8.0, Redis follows a tri-licensing model — all 8.x versions share the same license, so 8.4 doesn't differ from 8.6 in that respect.

Consider whether redis:8.6 (or at least documenting the reason for staying on 8.4) would be more appropriate. Also, for better reproducibility, pinning to a patch version (e.g., redis:8.4.0) prevents silent updates within the minor series.

@osm-vishnukyatannawar osm-vishnukyatannawar merged commit 66dab52 into main Feb 17, 2026
7 checks passed
@osm-vishnukyatannawar osm-vishnukyatannawar deleted the build/pin-docker-images branch February 17, 2026 13:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request ready for review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

Comments