From ca656b8d7d7a202813357e27ba6d592175595577 Mon Sep 17 00:00:00 2001 From: Hirad Date: Sun, 1 Dec 2024 14:46:47 +0330 Subject: [PATCH] add load stack info --- natalie.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/natalie.py b/natalie.py index d8cd5a6..407d8f3 100644 --- a/natalie.py +++ b/natalie.py @@ -8,10 +8,15 @@ from config.settings import PortainerConfig from gui.workers.load_stacks_worker import LoadStacksWorker from gui.workers.load_endpoints_worker import LoadEndpointsWorker +from utils.date_converter import datetime_from_timestamp +from utils.endpoint_converter import endpoint_id_to_name_converter + class Natalie(PortainerUi): def __init__(self, portainer_url, portainer_token): super().__init__() + self.endpoints_list = None + self.main_window.resize(800, 600) self.portainer = PortainerService(portainer_url, portainer_token) self.endpoints_worker = LoadEndpointsWorker(self.portainer) self.endpoints_worker.endpoints_retrieved.connect(self.load_endpoints) @@ -21,9 +26,11 @@ class Natalie(PortainerUi): self.stacks_worker.stacks_retrieved.connect(self.load_stacks) self.stacks_worker.error_occurred.connect(self.error_occurred) self.stacks_worker.start() + self.stacks_list.itemClicked.connect(self.load_stack) def load_endpoints(self, endpoints): self.endpoints_list = endpoints + print(self.endpoints_list) self.combo_box.clear() self.combo_box.addItem("All") for endpoint in endpoints: @@ -37,6 +44,16 @@ class Natalie(PortainerUi): item.setData(Qt.ItemDataRole.UserRole, stack) self.stacks_list.addItem(item) + def load_stack(self, item): + data = item.data(Qt.ItemDataRole.UserRole) + print(data) + self.stack_name_label.setText(data['name']) + self.endpoint_label.setText(endpoint_id_to_name_converter(self.endpoints_list, data['endpoint_id'])) + self.created_by_label.setText(data['created_by']) + self.creation_date_label.setText(datetime_from_timestamp(data['creation_date'])) + self.updated_by_label.setText(data['updated_by']) + self.update_date_label.setText(datetime_from_timestamp(data['update_date'])) + def error_occurred(self, error_message): print(f"Error occurred: {error_message}")