-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Publish answers to question topic #603
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
BREAKING CHANGE: Update all Octue services in your network to use this version of `octue` so they're still able to communicate.
…to-question-topic
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## main #603 +/- ##
==========================================
- Coverage 95.03% 94.90% -0.14%
==========================================
Files 75 77 +2
Lines 3322 3394 +72
==========================================
+ Hits 3157 3221 +64
- Misses 165 173 +8 ☔ View full report in Codecov by Sentry. |
BREAKING CHANGE: See others.
BREAKING CHANGE: See others.
BREAKING CHANGE: See others.
BREAKING CHANGE: See others.
thclark
reviewed
Nov 23, 2023
BREAKING CHANGE: - Use the `octue get-diagnostics` CLI command instead of the `octue get-crash-diagnostics` command - Rename `crash_diagnostics_cloud_path` in your service configurations to `diagnostics_cloud_path`
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This pull request removes the use of answer topics by publishing answer messages to the service revision (formerly known as question) topic and filtering subscriptions to only receive a) questions or b) response messages to a specific question. This speeds up the question asking process, reduces cloud infrastructure requirements and the permissions surface, and allows us to avoid topic number limits.
Also added is validation of all messages and their attributes against a new publicly available schema. This ensures services are communicating as they should and opens up the possibility of writing services in other languages and creating emulators.
As this, by itself, constitutes an inter-service communication breaking change, we've taken the opportunity to reduce the complexity of the codebase by removing backwards compatibility patches for service communication (i.e. we've grouped multiple breaking changes together into one).
Contents (#603)
IMPORTANT: There are 7 breaking changes.
New features
Enhancements
allow_save_diagnostics_data_on_crash
argument with string/enumsave_diagnostics
argument inService.ask
and related methodsService.answer
kind
field to question messagessender_type
attribute to all messagesRunner
from service/app configurationsFixes
Dependencies
octue
version in template apps' dependenciesRefactoring
Service._send_message
andMockMessage
under explicitattributes
argumentOrderedMessageHandler._waiting_messages
attribute publicTesting
type
field to emulated Pub/Sub questionsOperations
add-issues-to-octue-board
workflowrelease
workflowUpgrade instructions
💥 Update all Octue services in your network to use this version of
octue
so they're still able to communicate. Postpone upgrading until you can upgrade all services simultaneously.💥 Replace
allow_save_diagnostics_data_on_crash
withsave_diagnostics
set to one of these values: "SAVE_DIAGNOSTICS_OFF", "SAVE_DIAGNOSTICS_ON_CRASH", or "SAVE_DIAGNOSTICS_ON"💥 Crash diagnostics rename:
octue get-diagnostics
CLI command instead of theoctue get-crash-diagnostics
commandcrash_diagnostics_cloud_path
in your service configurations todiagnostics_cloud_path