Pull request #59: adjust response headers
Merge in RR/pyinfra from RED-6118-multi-tenancy-patch to master
Squashed commit of the following:
commit 02e471622e59baf5d2bb5c61980cea43ca1c6d61
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date: Thu Feb 16 16:36:19 2023 +0100
move acknowledgment function to outer scope
commit f9efffd8e6d90d5e371c66574b1afe361a1da146
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date: Thu Feb 16 16:04:07 2023 +0100
adjust response headers
- change response formatting: only forward the
request message headers instead of all properties
- adjust build script to only increase patch
version on master push
This commit is contained in:
parent
c97ae3d2c2
commit
46157031b5
@ -53,8 +53,8 @@ if [[ $bamboo_planRepository_branchName == "master" ]]
|
|||||||
then
|
then
|
||||||
if check_poetry_version
|
if check_poetry_version
|
||||||
then
|
then
|
||||||
echo "updating version number by one minor increment"
|
echo "updating version number by one patch increment"
|
||||||
poetry version minor
|
poetry version patch
|
||||||
fi
|
fi
|
||||||
elif [[ $bamboo_planRepository_branchName =~ ^(release/) ]]
|
elif [[ $bamboo_planRepository_branchName =~ ^(release/) ]]
|
||||||
then
|
then
|
||||||
@ -67,7 +67,7 @@ else
|
|||||||
if check_poetry_version
|
if check_poetry_version
|
||||||
then
|
then
|
||||||
echo "updating version number by one prerelease increment"
|
echo "updating version number by one prerelease increment"
|
||||||
poetry version $(poetry version -s)-dev
|
# poetry version $(poetry version -s)-dev
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
@ -161,7 +161,18 @@ class QueueManager:
|
|||||||
self.logger.debug("fetching result from callback")
|
self.logger.debug("fetching result from callback")
|
||||||
return future.result()
|
return future.result()
|
||||||
|
|
||||||
|
def acknowledge_message_and_publish_response(frame, properties, response_body):
|
||||||
|
response_properties = pika.BasicProperties(headers=properties.headers) if properties.headers else None
|
||||||
|
self._channel.basic_publish(
|
||||||
|
"", self._output_queue, json.dumps(response_body).encode(), response_properties
|
||||||
|
)
|
||||||
|
self.logger.info(
|
||||||
|
"Result published, acknowledging incoming message with delivery_tag %s", frame.delivery_tag
|
||||||
|
)
|
||||||
|
self._channel.basic_ack(frame.delivery_tag)
|
||||||
|
|
||||||
def callback(_channel, frame, properties, body):
|
def callback(_channel, frame, properties, body):
|
||||||
|
|
||||||
self.logger.info("Received message from queue with delivery_tag %s", frame.delivery_tag)
|
self.logger.info("Received message from queue with delivery_tag %s", frame.delivery_tag)
|
||||||
self.logger.debug("Message headers: %s.", properties.headers)
|
self.logger.debug("Message headers: %s.", properties.headers)
|
||||||
|
|
||||||
@ -181,18 +192,11 @@ class QueueManager:
|
|||||||
try:
|
try:
|
||||||
callback_result = process_message_body_and_await_result(json.loads(body))
|
callback_result = process_message_body_and_await_result(json.loads(body))
|
||||||
|
|
||||||
if callback_result is not None:
|
if callback_result:
|
||||||
self.logger.info(
|
self.logger.info(
|
||||||
"Processed message with delivery_tag %s, publishing result to result-queue", frame.delivery_tag
|
"Processed message with delivery_tag %s, publishing result to result-queue", frame.delivery_tag
|
||||||
)
|
)
|
||||||
self._channel.basic_publish(
|
acknowledge_message_and_publish_response(frame, properties, callback_result)
|
||||||
"", self._output_queue, json.dumps(callback_result).encode(), properties
|
|
||||||
)
|
|
||||||
|
|
||||||
self.logger.info(
|
|
||||||
"Result published, acknowledging incoming message with delivery_tag %s", frame.delivery_tag
|
|
||||||
)
|
|
||||||
self._channel.basic_ack(frame.delivery_tag)
|
|
||||||
else:
|
else:
|
||||||
self.logger.info("Processed message with delivery_tag %s, declining message", frame.delivery_tag)
|
self.logger.info("Processed message with delivery_tag %s, declining message", frame.delivery_tag)
|
||||||
self._channel.basic_nack(frame.delivery_tag, requeue=False)
|
self._channel.basic_nack(frame.delivery_tag, requeue=False)
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
[tool.poetry]
|
[tool.poetry]
|
||||||
name = "pyinfra"
|
name = "pyinfra"
|
||||||
version = "1.2.0"
|
version = "1.4.1"
|
||||||
description = ""
|
description = ""
|
||||||
authors = ["Francisco Schulz <francisco.schulz@iqser.com>"]
|
authors = ["Francisco Schulz <francisco.schulz@iqser.com>"]
|
||||||
license = "All rights reseverd"
|
license = "All rights reseverd"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user