Skip to content

feat(medici): TAN-2598: Added discharge_date parameter to Medici API (hotfix 2.45)#9262

Merged
rohan-bes merged 5 commits intorelease/2.45from
feat/tan-2598-medici-api-discharge-date
Mar 11, 2026
Merged

feat(medici): TAN-2598: Added discharge_date parameter to Medici API (hotfix 2.45)#9262
rohan-bes merged 5 commits intorelease/2.45from
feat/tan-2598-medici-api-discharge-date

Conversation

@rohan-bes
Copy link
Copy Markdown
Collaborator

@rohan-bes rohan-bes commented Mar 3, 2026

Changes

Added this parameter so that Medici can avoid fetching historical encounters when common reference data get updated.

Deploys

  • Deploy to Tamanu Internal

Tests

  • Run E2E Tests

Review Hero

  • Run Review Hero
  • Auto-fix review suggestions Wait for Review Hero to finish, resolve any comments you disagree with or want to fix manually, then check this to auto-fix the rest.
  • Auto-fix CI failures Check this to auto-fix lint errors, test failures, and other CI issues.

Remember to...

  • ...write or update tests
  • ...add UI screenshots and testing notes to the Linear issue
  • ...add any manual upgrade steps to the Linear issue
  • ...update the config reference, settings reference, or any relevant runbook(s)
  • ...call out additions or changes to config files for the deployment team to take note of

@gemini-code-assist
Copy link
Copy Markdown
Contributor

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request introduces a new discharge_date parameter to the Medici API, allowing users to filter encounters by their discharge date. This enhancement aims to improve the efficiency of data retrieval by enabling more precise queries, specifically to prevent fetching unnecessary historical encounter data when common reference data is updated. The implementation includes robust date parsing with FHIR-style prefixes and comprehensive test coverage.

Highlights

  • New API Parameter: Added a discharge_date query parameter to the Medici API endpoint (/api/integration/fijiAspenMediciReport) to allow filtering of encounters based on their encounter_end_date.
  • Advanced Date Filtering: Implemented support for FHIR-style date comparison prefixes (gt, lt, ge, le, eq) for the discharge_date parameter, enabling flexible date range queries.
  • Enhanced Test Coverage: Expanded integration tests to thoroughly validate the new discharge_date filtering functionality across various scenarios, including different comparison operators and multiple parameter usage.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • packages/central-server/tests/integrations/fijiAspenMediciReport/fijiAspenMediciReport.test.js
    • Updated test data creation to set endDate: null for open encounters.
    • Refined the MediciReport materialization logic in tests to target specific encounters.
    • Expanded it.each test cases to include comprehensive scenarios for the new discharge_date query parameter, covering various comparison operators and parameter combinations.
  • packages/central-server/app/integrations/fijiAspenMediciReport/routes.js
    • Added discharge_date to the query parameters for the fijiAspenMediciReport API endpoint.
    • Modified the SQL query to include AND CASE WHEN clauses for filtering encounters based on encounter_end_date using discharge_date_gt, _lt, _ge, _le, and _eq parameters.
    • Introduced a new utility function, parseDischargeDateParam, to parse discharge_date query values, supporting FHIR-style prefixes and defaulting to 'equals' if no prefix is provided.
    • Integrated the parsed discharge_date parameters into the sequelize.query bind object for dynamic SQL filtering.
Activity
  • The author has outlined deployment steps for Tamanu Internal.
  • The author has indicated plans to run E2E tests.
  • The author has indicated plans to run Review Hero and potentially auto-fix suggestions and CI failures.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request introduces a discharge_date parameter to the Medici API, allowing for more refined filtering of encounters. The changes include updates to the route handler to process this new parameter and apply it to the database query, along with comprehensive new test cases to validate the filtering logic with various date prefixes. The implementation is solid, but I have one suggestion to improve the readability and maintainability of the SQL query.

@rohan-bes rohan-bes changed the title feat(medici): TAN-2598: Added discharge_date parameter to Medici API feat(medici): TAN-2598: Added discharge_date parameter to Medici API (hotfix 2.45) Mar 3, 2026
discharge_date_le: null,
discharge_date_eq: null,
};
const dischargeDateParams = [].concat(dischargeDateParam ?? []).filter(Boolean);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I dont think this would ever have anything that would be falsey so could skip the filter 🤔

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Yeah does seem a bit weird, AI added it, I'll remove it

Copy link
Copy Markdown
Contributor

@dannash100 dannash100 left a comment

Choose a reason for hiding this comment

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

Looks good, just a small comment

@rohan-bes rohan-bes force-pushed the feat/tan-2598-medici-api-discharge-date branch from d166a4f to 4260e88 Compare March 5, 2026 03:40
@rohan-bes rohan-bes requested review from a team, chris-bes and edmofro as code owners March 5, 2026 03:40
@rohan-bes rohan-bes changed the base branch from release/2.45 to main March 5, 2026 03:40
@rohan-bes rohan-bes changed the title feat(medici): TAN-2598: Added discharge_date parameter to Medici API (hotfix 2.45) feat(medici): TAN-2598: Added discharge_date parameter to Medici API Mar 5, 2026
@rohan-bes rohan-bes force-pushed the feat/tan-2598-medici-api-discharge-date branch from 4260e88 to a5d333f Compare March 5, 2026 06:16
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Mar 5, 2026

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Mar 5, 2026

🍹 up on tamanu-on-k8s/bes/tamanu-on-k8s/feat-tan-2598-medici-api-discharge-date

Pulumi report
   Updating (feat-tan-2598-medici-api-discharge-date)

View Live: https://app.pulumi.com/bes/tamanu-on-k8s/feat-tan-2598-medici-api-discharge-date/updates/2

Downloading plugin random-4.19.0: starting
Downloading plugin random-4.19.0: done
Installing plugin random-4.19.0: starting
Installing plugin random-4.19.0: done

@ Updating....
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running 
@ Updating.....
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running read pulumi:pulumi:StackReference bes/k8s-core/tamanu-internal-main
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running read kubernetes:core/v1:Namespace tamanu-feat-tan-2598-medici-api-discharge-date
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running read pulumi:pulumi:StackReference bes/k8s-core/tamanu-internal-main
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running read pulumi:pulumi:StackReference bes/core/tamanu-internal
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Using tailscale proxy https://k8s-operator-tamanu-internal-main.tail53aef.ts.net
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running read pulumi:pulumi:StackReference bes/core/tamanu-internal
@ Updating......
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running read kubernetes:core/v1:Namespace tamanu-feat-tan-2598-medici-api-discharge-date
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Waiting for central-db...
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Waiting for facility-1-db...
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Waiting for facility-2-db...
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running read kubernetes:core/v1:ConfigMap actual-provisioning
~  kubernetes:apps/v1:Deployment patient-portal-web updating (0s) [diff: ~spec]
~  kubernetes:apps/v1:Deployment facility-2-web updating (0s) [diff: ~spec]
~  kubernetes:apps/v1:Deployment facility-1-web updating (0s) [diff: ~spec]
~  kubernetes:apps/v1:Deployment central-web updating (0s) [diff: ~spec]
@ Updating....
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running read kubernetes:core/v1:ConfigMap actual-provisioning
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Secret central-db-superuser not found or not ready: Error: HTTP-Code: 404
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Message: Unknown API Status Code!
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Body: "{\"kind\":\"Status\",\"apiVersion\":\"v1\",\"metadata\":{},\"status\":\"Failure\",\"message\":\"secrets \\\"central-db-superuser\\\" not found\",\"reason\":\"NotFound\",\"details\":{\"name\":\"central-db-superuser\",\"kind\":\"secrets\"},\"code\":404}
"
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Headers: {"audit-id":"12c5d55a-d730-4535-9955-9dce387cee12","cache-control":"no-cache, private","connection":"close","content-length":"214","content-type":"application/json","date":"Wed, 11 Mar 2026 09:00:47 GMT","x-kubernetes-pf-flowschema-uid":"3fb296fc-e46b-45d1-9306-057e37ddd229","x-kubernetes-pf-prioritylevel-uid":"feccf24d-a074-4fa8-aa6f-db82477fc2f5"}
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Secret facility-1-db-superuser not found or not ready: Error: HTTP-Code: 404
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Message: Unknown API Status Code!
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Body: "{\"kind\":\"Status\",\"apiVersion\":\"v1\",\"metadata\":{},\"status\":\"Failure\",\"message\":\"secrets \\\"facility-1-db-superuser\\\" not found\",\"reason\":\"NotFound\",\"details\":{\"name\":\"facility-1-db-superuser\",\"kind\":\"secrets\"},\"code\":404}
"
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Headers: {"audit-id":"0b9688fc-dece-49dd-9819-1eba59f2e316","cache-control":"no-cache, private","connection":"close","content-length":"220","content-type":"application/json","date":"Wed, 11 Mar 2026 09:00:47 GMT","x-kubernetes-pf-flowschema-uid":"3fb296fc-e46b-45d1-9306-057e37ddd229","x-kubernetes-pf-prioritylevel-uid":"feccf24d-a074-4fa8-aa6f-db82477fc2f5"}
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Secret facility-2-db-superuser not found or not ready: Error: HTTP-Code: 404
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Message: Unknown API Status Code!
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Body: "{\"kind\":\"Status\",\"apiVersion\":\"v1\",\"metadata\":{},\"status\":\"Failure\",\"message\":\"secrets \\\"facility-2-db-superuser\\\" not found\",\"reason\":\"NotFound\",\"details\":{\"name\":\"facility-2-db-superuser\",\"kind\":\"secrets\"},\"code\":404}
"
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date running Headers: {"audit-id":"74ab5c95-5760-4e55-9319-f7f6d237bbd7","cache-control":"no-cache, private","connection":"close","content-length":"220","content-type":"application/json","date":"Wed, 11 Mar 2026 09:00:47 GMT","x-kubernetes-pf-flowschema-uid":"3fb296fc-e46b-45d1-9306-057e37ddd229","x-kubernetes-pf-prioritylevel-uid":"feccf24d-a074-4fa8-aa6f-db82477fc2f5"}
++ kubernetes:batch/v1:Job central-migrator creating replacement (0s) [diff: ~spec]
@ Updating....
++ kubernetes:batch/v1:Job facility-1-migrator creating replacement (0s) [diff: ~spec]
++ kubernetes:batch/v1:Job facility-2-migrator creating replacement (0s) [diff: ~spec]
++ kubernetes:batch/v1:Job central-migrator creating replacement (0s) [diff: ~spec]; 
++ kubernetes:batch/v1:Job facility-1-migrator creating replacement (0s) [diff: ~spec]; 
++ kubernetes:batch/v1:Job facility-2-migrator creating replacement (0s) [diff: ~spec]; 
++ kubernetes:batch/v1:Job facility-2-migrator creating replacement (0s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/facility-2-migrator-77f58052" to start
++ kubernetes:batch/v1:Job facility-2-migrator creating replacement (0s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/facility-2-migrator-77f58052" to succeed (Active: 1 | Succeeded: 0 | Failed: 0)
++ kubernetes:batch/v1:Job facility-1-migrator creating replacement (0s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/facility-1-migrator-94e4b01d" to start
++ kubernetes:batch/v1:Job facility-1-migrator creating replacement (0s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/facility-1-migrator-94e4b01d" to succeed (Active: 1 | Succeeded: 0 | Failed: 0)
@ Updating....
++ kubernetes:batch/v1:Job central-migrator creating replacement (1s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/central-migrator-d29086ff" to start
++ kubernetes:batch/v1:Job central-migrator creating replacement (1s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/central-migrator-d29086ff" to succeed (Active: 1 | Succeeded: 0 | Failed: 0)
~  kubernetes:apps/v1:Deployment facility-2-web updating (2s) [diff: ~spec]; Waiting for app ReplicaSet to be available (0/1 Pods available)
~  kubernetes:apps/v1:Deployment facility-1-web updating (2s) [diff: ~spec]; Waiting for app ReplicaSet to be available (0/1 Pods available)
~  kubernetes:apps/v1:Deployment central-web updating (2s) [diff: ~spec]; Deployment initialization complete
~  kubernetes:apps/v1:Deployment central-web updating (2s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment central-web updated (2s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment patient-portal-web updating (2s) [diff: ~spec]; Waiting for app ReplicaSet to be available (0/1 Pods available)
@ Updating............
~  kubernetes:apps/v1:Deployment patient-portal-web updating (12s) [diff: ~spec]; Deployment initialization complete
~  kubernetes:apps/v1:Deployment patient-portal-web updating (12s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment patient-portal-web updated (12s) [diff: ~spec]; 
@ Updating....
~  kubernetes:apps/v1:Deployment facility-2-web updating (12s) [diff: ~spec]; warning: [Pod tamanu-feat-tan-2598-medici-api-discharge-date/facility-2-web-c3982aba-8679ffbdbc-9p6cc]: containers with unready status: [http]
~  kubernetes:apps/v1:Deployment facility-1-web updating (12s) [diff: ~spec]; warning: [Pod tamanu-feat-tan-2598-medici-api-discharge-date/facility-1-web-c16fae6d-7d445dbbb-8dp5g]: containers with unready status: [http]
@ Updating..............
++ kubernetes:batch/v1:Job facility-1-migrator creating replacement (21s) [diff: ~spec]; warning: [Pod tamanu-feat-tan-2598-medici-api-discharge-date/facility-1-migrator-94e4b01d-mh4n9]: Container "migrator" completed with exit code 0
++ kubernetes:batch/v1:Job facility-2-migrator creating replacement (22s) [diff: ~spec]; warning: [Pod tamanu-feat-tan-2598-medici-api-discharge-date/facility-2-migrator-77f58052-6pg92]: Container "migrator" completed with exit code 0
@ Updating.....
++ kubernetes:batch/v1:Job facility-1-migrator creating replacement (23s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/facility-1-migrator-94e4b01d" to succeed (Active: 0 | Succeeded: 0 | Failed: 0)
++ kubernetes:batch/v1:Job facility-1-migrator creating replacement (24s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/facility-1-migrator-94e4b01d" to succeed (Active: 0 | Succeeded: 1 | Failed: 0)
++ kubernetes:batch/v1:Job facility-1-migrator creating replacement (24s) [diff: ~spec]; 
++ kubernetes:batch/v1:Job facility-1-migrator created replacement (24s) [diff: ~spec]; 
+- kubernetes:batch/v1:Job facility-1-migrator replacing (0s) [diff: ~spec]; 
+- kubernetes:batch/v1:Job facility-1-migrator replaced (0.00s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment facility-1-tasks updating (0s) [diff: ~spec]
~  kubernetes:apps/v1:Deployment facility-1-api updating (0s) [diff: ~spec]
~  kubernetes:apps/v1:Deployment facility-1-sync updating (0s) [diff: ~spec]
++ kubernetes:batch/v1:Job facility-2-migrator creating replacement (24s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/facility-2-migrator-77f58052" to succeed (Active: 0 | Succeeded: 0 | Failed: 0)
@ Updating....
++ kubernetes:batch/v1:Job facility-2-migrator creating replacement (24s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/facility-2-migrator-77f58052" to succeed (Active: 0 | Succeeded: 1 | Failed: 0)
++ kubernetes:batch/v1:Job facility-2-migrator creating replacement (24s) [diff: ~spec]; 
++ kubernetes:batch/v1:Job facility-2-migrator created replacement (24s) [diff: ~spec]; 
+- kubernetes:batch/v1:Job facility-2-migrator replacing (0s) [diff: ~spec]; 
+- kubernetes:batch/v1:Job facility-2-migrator replaced (0.00s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment facility-2-tasks updating (0s) [diff: ~spec]
~  kubernetes:apps/v1:Deployment facility-2-sync updating (0s) [diff: ~spec]
~  kubernetes:apps/v1:Deployment facility-2-api updating (0s) [diff: ~spec]
~  kubernetes:apps/v1:Deployment facility-1-tasks updating (1s) [diff: ~spec]; Deployment initialization complete
~  kubernetes:apps/v1:Deployment facility-1-tasks updating (1s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment facility-1-tasks updated (1s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment facility-1-api updating (1s) [diff: ~spec]; Deployment initialization complete
~  kubernetes:apps/v1:Deployment facility-1-api updating (1s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment facility-1-api updated (1s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment facility-1-sync updating (1s) [diff: ~spec]; warning: Replicas scaled to 0 for Deployment "facility-1-sync"
~  kubernetes:apps/v1:Deployment facility-1-sync updating (1s) [diff: ~spec]; Deployment initialization complete
~  kubernetes:apps/v1:Deployment facility-1-sync updating (1s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment facility-1-sync updated (1s) [diff: ~spec]; 
@ Updating....
~  kubernetes:apps/v1:Deployment facility-2-tasks updating (0s) [diff: ~spec]; warning: Replicas scaled to 0 for Deployment "facility-2-tasks-3bc154a8"
~  kubernetes:apps/v1:Deployment facility-2-tasks updating (0s) [diff: ~spec]; Deployment initialization complete
~  kubernetes:apps/v1:Deployment facility-2-tasks updating (0s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment facility-2-tasks updated (0.80s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment facility-2-sync updating (0s) [diff: ~spec]; warning: Replicas scaled to 0 for Deployment "facility-2-sync"
~  kubernetes:apps/v1:Deployment facility-2-sync updating (0s) [diff: ~spec]; Deployment initialization complete
~  kubernetes:apps/v1:Deployment facility-2-sync updating (0s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment facility-2-api updating (0s) [diff: ~spec]; Deployment initialization complete
~  kubernetes:apps/v1:Deployment facility-2-api updating (0s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment facility-2-api updated (0.91s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment facility-2-sync updated (0.92s) [diff: ~spec]; 
@ Updating....
~  kubernetes:apps/v1:Deployment facility-2-web updating (28s) [diff: ~spec]; Waiting for app ReplicaSet to be available (1/2 Pods available)
@ Updating.......
~  kubernetes:apps/v1:Deployment facility-2-web updating (32s) [diff: ~spec]; warning: [Pod tamanu-feat-tan-2598-medici-api-discharge-date/facility-2-web-c3982aba-8679ffbdbc-2tqdh]: containers with unready status: [http]
@ Updating......
++ kubernetes:batch/v1:Job central-migrator creating replacement (34s) [diff: ~spec]; warning: [Pod tamanu-feat-tan-2598-medici-api-discharge-date/central-migrator-d29086ff-2srhg]: Container "migrator" completed with exit code 0
@ Updating.....
++ kubernetes:batch/v1:Job central-migrator creating replacement (36s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/central-migrator-d29086ff" to succeed (Active: 0 | Succeeded: 0 | Failed: 0)
~  kubernetes:apps/v1:Deployment facility-1-web updating (37s) [diff: ~spec]; Waiting for app ReplicaSet to be available (1/2 Pods available)
++ kubernetes:batch/v1:Job central-migrator creating replacement (37s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/central-migrator-d29086ff" to succeed (Active: 0 | Succeeded: 1 | Failed: 0)
++ kubernetes:batch/v1:Job central-migrator creating replacement (37s) [diff: ~spec]; 
++ kubernetes:batch/v1:Job central-migrator created replacement (37s) [diff: ~spec]; 
@ Updating....
+- kubernetes:batch/v1:Job central-migrator replacing (0s) [diff: ~spec]; 
+- kubernetes:batch/v1:Job central-migrator replaced (0.00s) [diff: ~spec]; 
++ kubernetes:batch/v1:Job central-provisioner creating replacement (0s) [diff: ~spec]
++ kubernetes:batch/v1:Job central-provisioner creating replacement (0s) [diff: ~spec]; 
++ kubernetes:batch/v1:Job central-provisioner creating replacement (0s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/central-provisioner-765691d2" to start
++ kubernetes:batch/v1:Job central-provisioner creating replacement (0s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/central-provisioner-765691d2" to succeed (Active: 1 | Succeeded: 0 | Failed: 0)
@ Updating.....
~  kubernetes:apps/v1:Deployment facility-2-web updating (41s) [diff: ~spec]; Deployment initialization complete
~  kubernetes:apps/v1:Deployment facility-2-web updating (41s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment facility-2-web updated (41s) [diff: ~spec]; 
@ Updating.....
~  kubernetes:apps/v1:Deployment facility-1-web updating (42s) [diff: ~spec]; warning: [Pod tamanu-feat-tan-2598-medici-api-discharge-date/facility-1-web-c16fae6d-7d445dbbb-9652n]: containers with unready status: [http]
@ Updating..........
~  kubernetes:apps/v1:Deployment facility-1-web updating (49s) [diff: ~spec]; Deployment initialization complete
~  kubernetes:apps/v1:Deployment facility-1-web updating (49s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment facility-1-web updated (49s) [diff: ~spec]; 
@ Updating..........
++ kubernetes:batch/v1:Job central-provisioner creating replacement (18s) [diff: ~spec]; warning: [Pod tamanu-feat-tan-2598-medici-api-discharge-date/central-provisioner-765691d2-vkjc9]: Container "provisioner" completed with exit code 0
@ Updating.....
++ kubernetes:batch/v1:Job central-provisioner creating replacement (20s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/central-provisioner-765691d2" to succeed (Active: 0 | Succeeded: 0 | Failed: 0)
@ Updating....
++ kubernetes:batch/v1:Job central-provisioner creating replacement (20s) [diff: ~spec]; Waiting for Job "tamanu-feat-tan-2598-medici-api-discharge-date/central-provisioner-765691d2" to succeed (Active: 0 | Succeeded: 1 | Failed: 0)
++ kubernetes:batch/v1:Job central-provisioner creating replacement (20s) [diff: ~spec]; 
++ kubernetes:batch/v1:Job central-provisioner created replacement (20s) [diff: ~spec]; 
+- kubernetes:batch/v1:Job central-provisioner replacing (0s) [diff: ~spec]; 
+- kubernetes:batch/v1:Job central-provisioner replaced (0.00s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment central-fhir-refresh updating (0s) [diff: ~spec]
~  kubernetes:apps/v1:Deployment central-tasks updating (0s) [diff: ~spec]
~  kubernetes:apps/v1:Deployment central-fhir-resolver updating (0s) [diff: ~spec]
~  kubernetes:apps/v1:Deployment central-api updating (0s) [diff: ~spec]
@ Updating....
~  kubernetes:apps/v1:Deployment central-fhir-refresh updating (1s) [diff: ~spec]; Waiting for app ReplicaSet to be available (0/1 Pods available)
~  kubernetes:apps/v1:Deployment central-tasks updating (1s) [diff: ~spec]; Deployment initialization complete
~  kubernetes:apps/v1:Deployment central-tasks updating (1s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment central-tasks updated (1s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment central-fhir-resolver updating (1s) [diff: ~spec]; Waiting for app ReplicaSet to be available (0/1 Pods available)
~  kubernetes:apps/v1:Deployment central-api updating (1s) [diff: ~spec]; Deployment initialization complete
~  kubernetes:apps/v1:Deployment central-api updating (1s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment central-api updated (1s) [diff: ~spec]; 
@ Updating.......
~  kubernetes:apps/v1:Deployment central-fhir-refresh updating (5s) [diff: ~spec]; Deployment initialization complete
~  kubernetes:apps/v1:Deployment central-fhir-refresh updating (5s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment central-fhir-refresh updated (5s) [diff: ~spec]; 
@ Updating.........
~  kubernetes:apps/v1:Deployment central-fhir-resolver updating (11s) [diff: ~spec]; warning: [Pod tamanu-feat-tan-2598-medici-api-discharge-date/central-fhir-resolver-02f03777-6c556f7b47-p8th6]: containers with unready status: [fhir-resolver]
@ Updating....................
~  kubernetes:apps/v1:Deployment central-fhir-resolver updating (28s) [diff: ~spec]; Deployment initialization complete
~  kubernetes:apps/v1:Deployment central-fhir-resolver updating (28s) [diff: ~spec]; 
~  kubernetes:apps/v1:Deployment central-fhir-resolver updated (28s) [diff: ~spec]; 
@ Updating....
-- kubernetes:batch/v1:Job central-provisioner deleting original (0s) [diff: ~spec]; 
-- kubernetes:batch/v1:Job central-provisioner deleting original (0s) [diff: ~spec]; 
-- kubernetes:batch/v1:Job central-provisioner deleted original (0.38s) [diff: ~spec]; 
-- kubernetes:batch/v1:Job facility-2-migrator deleting original (0s) [diff: ~spec]; 
-- kubernetes:batch/v1:Job facility-1-migrator deleting original (0s) [diff: ~spec]; 
-- kubernetes:batch/v1:Job central-migrator deleting original (0s) [diff: ~spec]; 
-- kubernetes:batch/v1:Job facility-2-migrator deleting original (0s) [diff: ~spec]; 
-- kubernetes:batch/v1:Job facility-2-migrator deleted original (0.38s) [diff: ~spec]; 
@ Updating....
-- kubernetes:batch/v1:Job facility-1-migrator deleting original (0s) [diff: ~spec]; 
-- kubernetes:batch/v1:Job facility-1-migrator deleted original (0.66s) [diff: ~spec]; 
-- kubernetes:batch/v1:Job central-migrator deleting original (0s) [diff: ~spec]; 
-- kubernetes:batch/v1:Job central-migrator deleted original (0.83s) [diff: ~spec]; 
   pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date  16 messages
Diagnostics:
 pulumi:pulumi:Stack (tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date):
   Secret central-db-superuser not found or not ready: Error: HTTP-Code: 404
   Message: Unknown API Status Code!
   Body: "{\"kind\":\"Status\",\"apiVersion\":\"v1\",\"metadata\":{},\"status\":\"Failure\",\"message\":\"secrets \\\"central-db-superuser\\\" not found\",\"reason\":\"NotFound\",\"details\":{\"name\":\"central-db-superuser\",\"kind\":\"secrets\"},\"code\":404}
"
   Headers: {"audit-id":"12c5d55a-d730-4535-9955-9dce387cee12","cache-control":"no-cache, private","connection":"close","content-length":"214","content-type":"application/json","date":"Wed, 11 Mar 2026 09:00:47 GMT","x-kubernetes-pf-flowschema-uid":"3fb296fc-e46b-45d1-9306-057e37ddd229","x-kubernetes-pf-prioritylevel-uid":"feccf24d-a074-4fa8-aa6f-db82477fc2f5"}
   Secret facility-1-db-superuser not found or not ready: Error: HTTP-Code: 404
   Message: Unknown API Status Code!
   Body: "{\"kind\":\"Status\",\"apiVersion\":\"v1\",\"metadata\":{},\"status\":\"Failure\",\"message\":\"secrets \\\"facility-1-db-superuser\\\" not found\",\"reason\":\"NotFound\",\"details\":{\"name\":\"facility-1-db-superuser\",\"kind\":\"secrets\"},\"code\":404}
"
   Headers: {"audit-id":"0b9688fc-dece-49dd-9819-1eba59f2e316","cache-control":"no-cache, private","connection":"close","content-length":"220","content-type":"application/json","date":"Wed, 11 Mar 2026 09:00:47 GMT","x-kubernetes-pf-flowschema-uid":"3fb296fc-e46b-45d1-9306-057e37ddd229","x-kubernetes-pf-prioritylevel-uid":"feccf24d-a074-4fa8-aa6f-db82477fc2f5"}
   Secret facility-2-db-superuser not found or not ready: Error: HTTP-Code: 404
   Message: Unknown API Status Code!
   Body: "{\"kind\":\"Status\",\"apiVersion\":\"v1\",\"metadata\":{},\"status\":\"Failure\",\"message\":\"secrets \\\"facility-2-db-superuser\\\" not found\",\"reason\":\"NotFound\",\"details\":{\"name\":\"facility-2-db-superuser\",\"kind\":\"secrets\"},\"code\":404}
"
   Headers: {"audit-id":"74ab5c95-5760-4e55-9319-f7f6d237bbd7","cache-control":"no-cache, private","connection":"close","content-length":"220","content-type":"application/json","date":"Wed, 11 Mar 2026 09:00:47 GMT","x-kubernetes-pf-flowschema-uid":"3fb296fc-e46b-45d1-9306-057e37ddd229","x-kubernetes-pf-prioritylevel-uid":"feccf24d-a074-4fa8-aa6f-db82477fc2f5"}

   Waiting for central-db...
   Waiting for facility-1-db...
   Waiting for facility-2-db...

   Using tailscale proxy https://k8s-operator-tamanu-internal-main.tail53aef.ts.net

   [Pulumi Neo] Would you like help with these diagnostics?
   https://app.pulumi.com/bes/tamanu-on-k8s/feat-tan-2598-medici-api-discharge-date/updates/2?explainFailure

Outputs:
   urls: {
       Central      : "https://central.feat-tan-2598-medici-api-discharge-date.cd.tamanu.app"
       Facility- 1  : "https://facility-1.feat-tan-2598-medici-api-discharge-date.cd.tamanu.app"
       Facility- 2  : "https://facility-2.feat-tan-2598-medici-api-discharge-date.cd.tamanu.app"
       PatientPortal: "https://portal.feat-tan-2598-medici-api-discharge-date.cd.tamanu.app"
   }

Resources:
   ~ 14 updated
   +-4 replaced
   18 changes. 49 unchanged

Duration: 1m36s

   

@rohan-bes rohan-bes force-pushed the feat/tan-2598-medici-api-discharge-date branch from a5d333f to 7a14513 Compare March 5, 2026 22:15
@rohan-bes rohan-bes changed the base branch from main to release/2.45 March 5, 2026 22:17
@rohan-bes rohan-bes changed the title feat(medici): TAN-2598: Added discharge_date parameter to Medici API feat(medici): TAN-2598: Added discharge_date parameter to Medici API (hotfix 2.45) Mar 5, 2026
@rohan-bes rohan-bes closed this Mar 5, 2026
@rohan-bes rohan-bes reopened this Mar 5, 2026
@github-actions
Copy link
Copy Markdown

🍹 destroy on tamanu-on-k8s/bes/tamanu-on-k8s/feat-tan-2598-medici-api-discharge-date

Pulumi report
   Destroying (feat-tan-2598-medici-api-discharge-date)

View Live: https://app.pulumi.com/bes/tamanu-on-k8s/feat-tan-2598-medici-api-discharge-date/updates/5

@ Destroying.............
Downloading plugin random-4.19.0: starting
Downloading plugin random-4.19.0: done
Installing plugin random-4.19.0: starting
Installing plugin random-4.19.0: done

@ Destroying....
-  kubernetes:apps/v1:Deployment central-tasks deleting (0s) 
-  kubernetes:apps/v1:Deployment central-fhir-resolver deleting (0s) 
-  kubernetes:apps/v1:Deployment central-api deleting (0s) 
-  kubernetes:apps/v1:Deployment central-fhir-refresh deleting (0s) 
@ Destroying......
-  kubernetes:apps/v1:Deployment central-fhir-resolver deleting (3s) Resource scheduled for deletion
-  kubernetes:apps/v1:Deployment central-fhir-refresh deleting (3s) Resource scheduled for deletion
-  kubernetes:apps/v1:Deployment central-tasks deleting (3s) Resource scheduled for deletion
-  kubernetes:apps/v1:Deployment central-api deleting (3s) Resource scheduled for deletion
@ Destroying....
-  kubernetes:apps/v1:Deployment central-fhir-resolver deleting (4s) 
-  kubernetes:apps/v1:Deployment central-fhir-resolver deleted (4s) 
-  kubernetes:apps/v1:Deployment central-fhir-refresh deleting (4s) 
-  kubernetes:apps/v1:Deployment central-fhir-refresh deleted (4s) 
@ Destroying..................................
-  kubernetes:apps/v1:Deployment central-tasks deleting (35s) 
-  kubernetes:apps/v1:Deployment central-tasks deleted (35s) 
-  kubernetes:apps/v1:Deployment central-api deleting (35s) 
-  kubernetes:apps/v1:Deployment central-api deleted (35s) 
-  kubernetes:apps/v1:Deployment facility-2-tasks deleting (0s) 
-  kubernetes:apps/v1:Deployment facility-2-sync deleting (0s) 
-  kubernetes:apps/v1:Deployment facility-1-api deleting (0s) 
-  kubernetes:apps/v1:Deployment facility-1-tasks deleting (0s) 
-  kubernetes:apps/v1:Deployment facility-2-api deleting (0s) 
-  kubernetes:apps/v1:Deployment facility-1-sync deleting (0s) 
-  kubernetes:batch/v1:Job central-provisioner deleting (0s) 
-  kubernetes:apps/v1:Deployment facility-2-tasks deleting (0s) Deployment is available. Replicas: 1
-  kubernetes:apps/v1:Deployment facility-2-tasks deleting (0s) Resource scheduled for deletion
@ Destroying....
-  kubernetes:apps/v1:Deployment facility-2-sync deleting (0s) Deployment is available. Replicas: 1
-  kubernetes:apps/v1:Deployment facility-2-sync deleting (0s) Resource scheduled for deletion
-  kubernetes:apps/v1:Deployment facility-1-api deleting (0s) Deployment is available. Replicas: 2
-  kubernetes:apps/v1:Deployment facility-1-api deleting (0s) Resource scheduled for deletion
-  kubernetes:apps/v1:Deployment facility-2-tasks deleting (0s) 
-  kubernetes:apps/v1:Deployment facility-2-tasks deleted (0.85s) 
-  kubernetes:apps/v1:Deployment facility-1-tasks deleting (0s) Deployment is available. Replicas: 1
-  kubernetes:apps/v1:Deployment facility-1-tasks deleting (0s) Resource scheduled for deletion
-  kubernetes:apps/v1:Deployment facility-1-sync deleting (0s) Deployment is available. Replicas: 1
-  kubernetes:apps/v1:Deployment facility-1-sync deleting (0s) Resource scheduled for deletion
-  kubernetes:apps/v1:Deployment facility-2-api deleting (0s) Deployment is available. Replicas: 2
-  kubernetes:apps/v1:Deployment facility-2-api deleting (0s) Resource scheduled for deletion
-  kubernetes:batch/v1:Job central-provisioner deleting (1s) Resource scheduled for deletion
@ Destroying.....
-  kubernetes:batch/v1:Job central-provisioner deleting (3s) 
-  kubernetes:batch/v1:Job central-provisioner deleted (3s) 
-  kubernetes:apps/v1:Deployment facility-2-sync deleting (3s) 
-  kubernetes:apps/v1:Deployment facility-2-sync deleted (3s) 
@ Destroying....
-  kubernetes:apps/v1:Deployment facility-1-tasks deleting (3s) 
-  kubernetes:apps/v1:Deployment facility-1-tasks deleted (3s) 
-  kubernetes:apps/v1:Deployment facility-1-sync deleting (3s) 
-  kubernetes:apps/v1:Deployment facility-1-sync deleted (3s) 
@ Destroying................................
-  kubernetes:apps/v1:Deployment facility-1-api deleting (33s) 
-  kubernetes:apps/v1:Deployment facility-1-api deleted (33s) 
@ Destroying....
-  kubernetes:apps/v1:Deployment facility-2-api deleting (34s) 
-  kubernetes:apps/v1:Deployment facility-2-api deleted (34s) 
-  kubernetes:networking.k8s.io/v1:Ingress facility-1 deleting (0s) 
-  kubernetes:networking.k8s.io/v1:Ingress facility-2 deleting (0s) 
-  kubernetes:postgresql.cnpg.io/v1:Cluster facility-2-db deleting (0s) 
-  kubernetes:postgresql.cnpg.io/v1:Cluster facility-1-db deleting (0s) 
-  kubernetes:networking.k8s.io/v1:Ingress central deleting (0s) 
-  kubernetes:postgresql.cnpg.io/v1:Cluster central-db deleting (0s) 
-  kubernetes:batch/v1:Job facility-1-migrator deleting (0s) 
-  kubernetes:batch/v1:Job facility-2-migrator deleting (0s) 
-  kubernetes:batch/v1:Job central-migrator deleting (0s) 
@ Destroying....
-  kubernetes:networking.k8s.io/v1:Ingress facility-2 deleting (0s) 
-  kubernetes:networking.k8s.io/v1:Ingress facility-2 deleted (0.73s) 
-  kubernetes:networking.k8s.io/v1:Ingress facility-1 deleting (0s) 
-  kubernetes:networking.k8s.io/v1:Ingress facility-1 deleted (0.77s) 
-  kubernetes:networking.k8s.io/v1:Ingress central deleting (0s) Resource is current
-  kubernetes:networking.k8s.io/v1:Ingress central deleting (0s) Resource scheduled for deletion
-  kubernetes:batch/v1:Job facility-1-migrator deleting (1s) Job Completed. succeeded: 1/1
-  kubernetes:batch/v1:Job facility-1-migrator deleting (1s) Resource scheduled for deletion
@ Destroying....
-  kubernetes:batch/v1:Job facility-2-migrator deleting (1s) Job Completed. succeeded: 1/1
-  kubernetes:batch/v1:Job facility-2-migrator deleting (1s) Resource scheduled for deletion
-  kubernetes:postgresql.cnpg.io/v1:Cluster facility-2-db deleting (1s) Resource scheduled for deletion
-  kubernetes:batch/v1:Job central-migrator deleting (1s) Job Completed. succeeded: 1/1
-  kubernetes:batch/v1:Job central-migrator deleting (1s) Resource scheduled for deletion
-  kubernetes:postgresql.cnpg.io/v1:Cluster central-db deleting (1s) Resource scheduled for deletion
-  kubernetes:postgresql.cnpg.io/v1:Cluster facility-1-db deleting (1s) Resource scheduled for deletion
@ Destroying.......
-  kubernetes:postgresql.cnpg.io/v1:Cluster facility-2-db deleting (5s) 
-  kubernetes:postgresql.cnpg.io/v1:Cluster facility-2-db deleted (5s) 
@ Destroying....
-  kubernetes:postgresql.cnpg.io/v1:Cluster facility-1-db deleting (6s) 
-  kubernetes:postgresql.cnpg.io/v1:Cluster facility-1-db deleted (6s) 
-  kubernetes:batch/v1:Job facility-1-migrator deleting (6s) 
-  kubernetes:batch/v1:Job facility-1-migrator deleted (6s) 
-  kubernetes:batch/v1:Job facility-2-migrator deleting (6s) 
-  kubernetes:batch/v1:Job central-migrator deleting (6s) 
-  kubernetes:batch/v1:Job facility-2-migrator deleted (6s) 
-  kubernetes:batch/v1:Job central-migrator deleted (6s) 
-  kubernetes:postgresql.cnpg.io/v1:Cluster central-db deleting (7s) 
-  kubernetes:postgresql.cnpg.io/v1:Cluster central-db deleted (7s) 
@ Destroying.....
-  kubernetes:networking.k8s.io/v1:Ingress central deleting (8s) 
-  kubernetes:networking.k8s.io/v1:Ingress central deleted (8s) 
-  kubernetes:core/v1:Service central-web deleting (0s) 
-  kubernetes:networking.k8s.io/v1:Ingress patient-portal deleting (0s) 
-  kubernetes:core/v1:Secret facility-2-reporting-db deleting (0s) 
-  kubernetes:core/v1:Secret central-raw-db deleting (0s) 
-  kubernetes:apps/v1:Deployment central-web deleting (0s) 
-  kubernetes:core/v1:Service facility-1-web deleting (0s) 
-  kubernetes:apps/v1:Deployment facility-2-web deleting (0s) 
-  kubernetes:core/v1:Secret central-reporting-db deleting (0s) 
-  kubernetes:core/v1:Secret facility-1-raw-db deleting (0s) 
-  kubernetes:core/v1:Secret facility-2-raw-db deleting (0s) 
-  kubernetes:core/v1:Secret facility-1-reporting-db deleting (0s) 
-  kubernetes:apps/v1:Deployment facility-1-web deleting (0s) 
-  kubernetes:core/v1:Service facility-2-web deleting (0s) 
-  kubernetes:core/v1:Service central-web deleting (0s) 
-  kubernetes:core/v1:Service central-web deleted (0.54s) 
@ Destroying....
-  kubernetes:networking.k8s.io/v1:Ingress patient-portal deleting (1s) Resource scheduled for deletion
-  kubernetes:core/v1:Service facility-1-web deleting (1s) Service is ready
-  kubernetes:core/v1:Service facility-1-web deleting (1s) Resource scheduled for deletion
-  kubernetes:core/v1:Secret central-raw-db deleting (1s) 
-  kubernetes:core/v1:Secret central-raw-db deleted (1s) 
-  kubernetes:core/v1:Secret facility-2-reporting-db deleting (1s) 
-  kubernetes:core/v1:Secret facility-2-reporting-db deleted (1s) 
-  kubernetes:apps/v1:Deployment facility-2-web deleting (1s) Resource scheduled for deletion
-  kubernetes:apps/v1:Deployment central-web deleting (1s) Resource scheduled for deletion
-  kubernetes:networking.k8s.io/v1:Ingress patient-portal deleting (1s) 
-  kubernetes:networking.k8s.io/v1:Ingress patient-portal deleted (1s) 
-  kubernetes:core/v1:Secret central-reporting-db deleting (1s) Resource scheduled for deletion
-  kubernetes:core/v1:Secret facility-1-raw-db deleting (1s) Resource is always ready
-  kubernetes:core/v1:Secret facility-1-raw-db deleting (1s) Resource scheduled for deletion
-  kubernetes:core/v1:Secret facility-2-raw-db deleting (1s) Resource scheduled for deletion
@ Destroying....
-  kubernetes:core/v1:Secret facility-1-reporting-db deleting (1s) Resource scheduled for deletion
-  kubernetes:apps/v1:Deployment facility-1-web deleting (1s) Deployment is available. Replicas: 2
-  kubernetes:apps/v1:Deployment facility-1-web deleting (1s) Resource scheduled for deletion
-  kubernetes:core/v1:Service facility-2-web deleting (1s) Resource scheduled for deletion
-  kubernetes:core/v1:Service facility-1-web deleting (2s) 
-  kubernetes:core/v1:Service facility-1-web deleted (2s) 
-  kubernetes:core/v1:Secret central-reporting-db deleting (2s) 
-  kubernetes:core/v1:Secret central-reporting-db deleted (2s) 
-  kubernetes:core/v1:Secret facility-1-raw-db deleting (2s) 
-  kubernetes:core/v1:Secret facility-1-raw-db deleted (2s) 
-  kubernetes:core/v1:Secret facility-2-raw-db deleting (2s) 
-  kubernetes:core/v1:Secret facility-2-raw-db deleted (2s) 
-  kubernetes:core/v1:Secret facility-1-reporting-db deleting (2s) 
-  kubernetes:core/v1:Secret facility-1-reporting-db deleted (2s) 
@ Destroying....
-  kubernetes:core/v1:Service facility-2-web deleting (3s) 
-  kubernetes:core/v1:Service facility-2-web deleted (3s) 
-  kubernetes:apps/v1:Deployment central-web deleting (3s) 
-  kubernetes:apps/v1:Deployment central-web deleted (3s) 
@ Destroying....
-  kubernetes:apps/v1:Deployment facility-2-web deleting (4s) 
-  kubernetes:apps/v1:Deployment facility-2-web deleted (4s) 
-  kubernetes:apps/v1:Deployment facility-1-web deleting (4s) 
-  kubernetes:apps/v1:Deployment facility-1-web deleted (4s) 
-  bes:tamanu:WebFrontend central deleting (0s) 
-  kubernetes:core/v1:ServiceAccount app-sa deleting (0s) 
-  kubernetes:core/v1:Secret mailgun deleting (0s) 
-  kubernetes:core/v1:Service facility-1-sync deleting (0s) 
-  kubernetes:core/v1:Service patient-portal-web deleting (0s) 
-  kubernetes:core/v1:Service central-api deleting (0s) 
-  kubernetes:core/v1:Service facility-2-sync deleting (0s) 
-  kubernetes:core/v1:ConfigMap central deleting (0s) 
-  kubernetes:core/v1:Secret central-db-url deleting (0s) 
-  random:index:RandomPassword facility-2-raw-db deleting (0s) 
-  kubernetes:core/v1:Secret tupaia deleting (0s) 
-  kubernetes:core/v1:Service facility-1-api deleting (0s) 
-  random:index:RandomPassword facility-1-raw-db deleting (0s) 
-  random:index:RandomPassword facility-2-reporting-db deleting (0s) 
-  random:index:RandomPassword facility-1-reporting-db deleting (0s) 
-  kubernetes:core/v1:Secret bugsnag deleting (0s) 
-  random:index:RandomPassword facility-2-reporting-db deleted (0.16s) 
@ Destroying....
-  kubernetes:core/v1:ServiceAccount app-sa deleting (0s) 
-  kubernetes:core/v1:ServiceAccount app-sa deleted (0.75s) 
-  kubernetes:core/v1:Service facility-1-sync deleting (0s) 
-  kubernetes:core/v1:Service facility-1-sync deleted (0.93s) 
-  random:index:RandomPassword facility-1-raw-db deleted (1.00s) 
-  random:index:RandomPassword facility-2-raw-db deleted (1s) 
-  kubernetes:core/v1:Service central-api deleting (1s) 
-  kubernetes:core/v1:Service central-api deleted (1s) 
-  kubernetes:core/v1:Service patient-portal-web deleting (1s) 
-  kubernetes:core/v1:Service patient-portal-web deleted (1s) 
-  random:index:RandomPassword facility-1-reporting-db deleted (1s) 
-  kubernetes:core/v1:Secret mailgun deleting (1s) 
-  kubernetes:core/v1:Secret mailgun deleted (1s) 
-  kubernetes:core/v1:Service facility-2-sync deleting (1s) 
-  kubernetes:core/v1:Service facility-2-sync deleted (1s) 
-  bes:tamanu:WebFrontend facility-2 deleting (0s) 
-  kubernetes:core/v1:Secret central-db-url deleting (1s) 
-  kubernetes:core/v1:Secret central-db-url deleted (1s) 
-  random:index:RandomPassword central-reporting-db deleting (0s) 
-  kubernetes:core/v1:ConfigMap central deleting (1s) 
-  kubernetes:core/v1:ConfigMap central deleted (1s) 
-  kubernetes:core/v1:Service facility-1-api deleting (1s) 
-  kubernetes:core/v1:Service facility-1-api deleted (1s) 
-  kubernetes:core/v1:Secret tupaia deleting (1s) 
-  kubernetes:core/v1:Secret tupaia deleted (1s) 
-  kubernetes:core/v1:ConfigMap provisioning deleting (0s) 
-  kubernetes:core/v1:Secret bugsnag deleting (1s) 
-  kubernetes:core/v1:Secret bugsnag deleted (1s) 
@ Destroying....
-  kubernetes:core/v1:Secret pullsecret-github deleting (0s) 
-  kubernetes:core/v1:ConfigMap facility-1 deleting (0s) 
-  kubernetes:networking.k8s.io/v1:Ingress bare-domain deleting (0s) 
-  kubernetes:core/v1:Service facility-2-api deleting (0s) 
-  kubernetes:core/v1:ConfigMap facility-2 deleting (0s) 
-  random:index:RandomPassword central-raw-db deleting (0s) 
-  kubernetes:core/v1:Secret facility-1-db-url deleting (0s) 
-  bes:tamanu:WebFrontend facility-1 deleting (0s) 
-  kubernetes:core/v1:Secret facility-2-db-url deleting (0s) 
-  kubernetes:apps/v1:Deployment patient-portal-web deleting (0s) 
-  random:index:RandomPassword central-reporting-db deleted (1s) 
@ Destroying....
-  kubernetes:core/v1:ConfigMap provisioning deleting (1s) 
-  kubernetes:core/v1:ConfigMap provisioning deleted (1s) 
-  random:index:RandomPassword central-raw-db deleted (1s) 
@ Destroying....
-  kubernetes:core/v1:ConfigMap facility-1 deleting (1s) 
-  kubernetes:core/v1:ConfigMap facility-1 deleted (1s) 
-  kubernetes:networking.k8s.io/v1:Ingress bare-domain deleting (2s) 
-  kubernetes:networking.k8s.io/v1:Ingress bare-domain deleted (2s) 
-  kubernetes:core/v1:Secret pullsecret-github deleting (2s) 
-  kubernetes:core/v1:Secret pullsecret-github deleted (2s) 
-  kubernetes:core/v1:Service facility-2-api deleting (1s) 
-  kubernetes:core/v1:Service facility-2-api deleted (1s) 
-  kubernetes:core/v1:ConfigMap facility-2 deleting (1s) 
-  kubernetes:core/v1:ConfigMap facility-2 deleted (1s) 
-  kubernetes:core/v1:Secret facility-1-db-url deleting (1s) 
-  kubernetes:core/v1:Secret facility-1-db-url deleted (1s) 
-  kubernetes:apps/v1:Deployment patient-portal-web deleting (1s) Resource scheduled for deletion
-  kubernetes:core/v1:Secret facility-2-db-url deleting (1s) 
-  kubernetes:core/v1:Secret facility-2-db-url deleted (1s) 
@ Destroying....
-  kubernetes:apps/v1:Deployment patient-portal-web deleting (2s) 
-  kubernetes:apps/v1:Deployment patient-portal-web deleted (2s) 
-  bes:tamanu:WebFrontend patient-portal deleting (0s) 
-  bes:tamanu:CentralServer central deleting (0s) 
-  bes:tamanu:FacilityServer 2 deleting (0s) 
-  bes:tamanu:FacilityServer 1 deleting (0s) 
@ Destroying....
-  pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date deleting (0s) 
@ Destroying....
-  pulumi:pulumi:Stack tamanu-on-k8s-feat-tan-2598-medici-api-discharge-date deleted (0.29s) 
Outputs:
 - urls: {
     - Central      : "https://central.feat-tan-2598-medici-api-discharge-date.cd.tamanu.app"
     - Facility- 1  : "https://facility-1.feat-tan-2598-medici-api-discharge-date.cd.tamanu.app"
     - Facility- 2  : "https://facility-2.feat-tan-2598-medici-api-discharge-date.cd.tamanu.app"
     - PatientPortal: "https://portal.feat-tan-2598-medici-api-discharge-date.cd.tamanu.app"
   }

Resources:
   - 67 deleted

Duration: 1m30s

The resources in the stack have been deleted, but the history and configuration associated with the stack are still maintained. 
If you want to remove the stack completely, run `pulumi stack rm feat-tan-2598-medici-api-discharge-date`.
   

@rohan-bes rohan-bes merged commit fd4f079 into release/2.45 Mar 11, 2026
86 checks passed
@rohan-bes rohan-bes deleted the feat/tan-2598-medici-api-discharge-date branch March 11, 2026 23:16
rohan-bes added a commit that referenced this pull request Mar 18, 2026
…(hotfix 2.45) (#9262)

* feat(medici): TAN-2598: Added discharge_date parameter to Medici API

* fix(migrations): TAMOC-398: Fixed MediciReport test

* feat(medici): TAN-2598: Added test for using local timezone

* tweak(cd): use tailscale OIDC (#9039)

* feat(medici): TAN-2598: Removed unneeded filter

---------

Co-authored-by: Rohan Port <rohan@bes.au>
Co-authored-by: Félix Saparelli <felix@bes.au>
rohan-bes added a commit that referenced this pull request Mar 18, 2026
…(hotfix 2.45) (#9262)

* feat(medici): TAN-2598: Added discharge_date parameter to Medici API

* fix(migrations): TAMOC-398: Fixed MediciReport test

* feat(medici): TAN-2598: Added test for using local timezone

* tweak(cd): use tailscale OIDC (#9039)

* feat(medici): TAN-2598: Removed unneeded filter

---------

Co-authored-by: Rohan Port <rohan@bes.au>
Co-authored-by: Félix Saparelli <felix@bes.au>
rohan-bes added a commit that referenced this pull request Mar 18, 2026
…(hotfix 2.45) (#9262)

* feat(medici): TAN-2598: Added discharge_date parameter to Medici API

* fix(migrations): TAMOC-398: Fixed MediciReport test

* feat(medici): TAN-2598: Added test for using local timezone

* tweak(cd): use tailscale OIDC (#9039)

* feat(medici): TAN-2598: Removed unneeded filter

---------

Co-authored-by: Rohan Port <rohan@bes.au>
Co-authored-by: Félix Saparelli <felix@bes.au>
rohan-bes added a commit that referenced this pull request Mar 18, 2026
…(hotfix 2.45) (#9262)

* feat(medici): TAN-2598: Added discharge_date parameter to Medici API

* fix(migrations): TAMOC-398: Fixed MediciReport test

* feat(medici): TAN-2598: Added test for using local timezone

* tweak(cd): use tailscale OIDC (#9039)

* feat(medici): TAN-2598: Removed unneeded filter

---------

Co-authored-by: Rohan Port <rohan@bes.au>
Co-authored-by: Félix Saparelli <felix@bes.au>
rohan-bes added a commit that referenced this pull request Mar 18, 2026
…(hotfix 2.45) (#9262)

* feat(medici): TAN-2598: Added discharge_date parameter to Medici API

* fix(migrations): TAMOC-398: Fixed MediciReport test

* feat(medici): TAN-2598: Added test for using local timezone

* tweak(cd): use tailscale OIDC (#9039)

* feat(medici): TAN-2598: Removed unneeded filter

---------

Co-authored-by: Rohan Port <rohan@bes.au>
Co-authored-by: Félix Saparelli <felix@bes.au>
rohan-bes added a commit that referenced this pull request Mar 18, 2026
…(hotfix 2.45) (#9262)

* feat(medici): TAN-2598: Added discharge_date parameter to Medici API

* fix(migrations): TAMOC-398: Fixed MediciReport test

* feat(medici): TAN-2598: Added test for using local timezone

* tweak(cd): use tailscale OIDC (#9039)

* feat(medici): TAN-2598: Removed unneeded filter

---------

Co-authored-by: Rohan Port <rohan@bes.au>
Co-authored-by: Félix Saparelli <felix@bes.au>
rohan-bes added a commit that referenced this pull request Mar 18, 2026
…(hotfix 2.45) (#9262)

* feat(medici): TAN-2598: Added discharge_date parameter to Medici API

* fix(migrations): TAMOC-398: Fixed MediciReport test

* feat(medici): TAN-2598: Added test for using local timezone

* tweak(cd): use tailscale OIDC (#9039)

* feat(medici): TAN-2598: Removed unneeded filter

---------

Co-authored-by: Rohan Port <rohan@bes.au>
Co-authored-by: Félix Saparelli <felix@bes.au>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants