SIENTIAPDE-1325
Enhance release workflow to trigger only on merged pull requests and streamline data insertion in DataManager - Updated the release workflow to execute only when a pull request is merged. - Simplified the document insertion logic in DataManager by consolidating the dictionary construction. - Refactored OPC Manager tests to utilize asynchronous mocks for improved accuracy in testing.
This commit is contained in:
1
.github/workflows/release.yml
vendored
1
.github/workflows/release.yml
vendored
@@ -8,6 +8,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
release:
|
release:
|
||||||
|
if: github.event.pull_request.merged == true
|
||||||
uses: Aignosi/github_workflow_templates/.github/workflows/dataops-module-release.yml@main
|
uses: Aignosi/github_workflow_templates/.github/workflows/dataops-module-release.yml@main
|
||||||
permissions: write-all
|
permissions: write-all
|
||||||
with:
|
with:
|
||||||
|
|||||||
@@ -261,10 +261,7 @@ class DataManager(SientiaMonitoring):
|
|||||||
try:
|
try:
|
||||||
await self.mongo_repository.insert(
|
await self.mongo_repository.insert(
|
||||||
collection_name=topic,
|
collection_name=topic,
|
||||||
document={
|
document={**data, 'inserted_at': now()},
|
||||||
**data,
|
|
||||||
'inserted_at': now()
|
|
||||||
},
|
|
||||||
metadata=self.metadata,
|
metadata=self.metadata,
|
||||||
)
|
)
|
||||||
self.logger.debug(f'Message inserted into MongoDB collection {topic}: {data}')
|
self.logger.debug(f'Message inserted into MongoDB collection {topic}: {data}')
|
||||||
|
|||||||
@@ -202,7 +202,7 @@ class OpcManager(SientiaMonitoring):
|
|||||||
tags={
|
tags={
|
||||||
'pod_id': self.pod_id,
|
'pod_id': self.pod_id,
|
||||||
'server_name': self.name,
|
'server_name': self.name,
|
||||||
}
|
},
|
||||||
)
|
)
|
||||||
try:
|
try:
|
||||||
self.client = Client(self.url, timeout=10, watchdog_intervall=3600000)
|
self.client = Client(self.url, timeout=10, watchdog_intervall=3600000)
|
||||||
@@ -574,8 +574,6 @@ class OpcManager(SientiaMonitoring):
|
|||||||
if self.non_receive_count >= 15:
|
if self.non_receive_count >= 15:
|
||||||
await self.emit_metric(
|
await self.emit_metric(
|
||||||
metric_object=metrics.OPC_RECONNECTIONS_TOTAL,
|
metric_object=metrics.OPC_RECONNECTIONS_TOTAL,
|
||||||
method='inc',
|
|
||||||
value=1,
|
|
||||||
tags={
|
tags={
|
||||||
'pod_id': self.pod_id,
|
'pod_id': self.pod_id,
|
||||||
'server_name': self.name,
|
'server_name': self.name,
|
||||||
|
|||||||
@@ -286,13 +286,13 @@ async def test_update_opc_servers(metrics, opc_manager, ingestor_manager):
|
|||||||
async def test_check_opc_servers_integrity_all_healthy(metrics, ingestor_manager):
|
async def test_check_opc_servers_integrity_all_healthy(metrics, ingestor_manager):
|
||||||
# Setup mock OPC managers
|
# Setup mock OPC managers
|
||||||
opc_manager1 = MagicMock()
|
opc_manager1 = MagicMock()
|
||||||
opc_manager1.check_cycles.return_value = None
|
opc_manager1.check_cycles = AsyncMock(return_value=None)
|
||||||
opc_manager1.check_opc_listenning.return_value = False
|
opc_manager1.check_opc_listenning = AsyncMock(return_value=False)
|
||||||
opc_manager1.config = {'config': 'config1'}
|
opc_manager1.config = {'config': 'config1'}
|
||||||
|
|
||||||
opc_manager2 = MagicMock()
|
opc_manager2 = MagicMock()
|
||||||
opc_manager2.check_cycles.return_value = None
|
opc_manager2.check_cycles = AsyncMock(return_value=None)
|
||||||
opc_manager2.check_opc_listenning.return_value = False
|
opc_manager2.check_opc_listenning = AsyncMock(return_value=False)
|
||||||
opc_manager2.config = {'config': 'config2'}
|
opc_manager2.config = {'config': 'config2'}
|
||||||
|
|
||||||
ingestor_manager.opc_managers = {'server1': opc_manager1, 'server2': opc_manager2}
|
ingestor_manager.opc_managers = {'server1': opc_manager1, 'server2': opc_manager2}
|
||||||
|
|||||||
@@ -155,8 +155,6 @@ async def test_connect_no_security(client, mock_metrics, raw_opc_manager):
|
|||||||
[
|
[
|
||||||
call(
|
call(
|
||||||
metric_object=mock_metrics.OPC_CONNECTIONS_TOTAL,
|
metric_object=mock_metrics.OPC_CONNECTIONS_TOTAL,
|
||||||
method='inc',
|
|
||||||
value=1,
|
|
||||||
tags={
|
tags={
|
||||||
'pod_id': raw_opc_manager.pod_id,
|
'pod_id': raw_opc_manager.pod_id,
|
||||||
'server_name': raw_opc_manager.name,
|
'server_name': raw_opc_manager.name,
|
||||||
@@ -620,8 +618,6 @@ async def test_check_opc_listenning_error_notification_and_retry(metrics, opc_ma
|
|||||||
[
|
[
|
||||||
call(
|
call(
|
||||||
metric_object=metrics.OPC_RECONNECTIONS_TOTAL,
|
metric_object=metrics.OPC_RECONNECTIONS_TOTAL,
|
||||||
method='inc',
|
|
||||||
value=1,
|
|
||||||
tags={
|
tags={
|
||||||
'pod_id': opc_manager.pod_id,
|
'pod_id': opc_manager.pod_id,
|
||||||
'server_name': opc_manager.name,
|
'server_name': opc_manager.name,
|
||||||
|
|||||||
Reference in New Issue
Block a user