#!/usr/bin/env python3 import sys sys.path.insert(0, "daemon") import server from registry import RegistryError def require(condition, message): if not condition: raise SystemExit("FAIL: " + message) def require_error(environment, message): try: server.load_pacemaker_node_name(environment) except RegistryError: return raise SystemExit("FAIL: " + message) print("===== PACEMAKER NODE IDENTITY =====") require_error( {}, "missing node identity was accepted", ) print("missing_identity rejected") require_error( {"PACEMAKER_NODE_NAME": " "}, "empty node identity was accepted", ) print("empty_identity rejected") require_error( {"PACEMAKER_NODE_NAME": "david prodesk"}, "whitespace node identity was accepted", ) print("whitespace_identity rejected") node_name = server.load_pacemaker_node_name({ "PACEMAKER_NODE_NAME": " DAVID-PRODESK ", }) require( node_name == "david-prodesk", "node identity was not normalized", ) print("valid_identity normalized") server.pacemaker_node_name = node_name ping = server.protocol_response({ "ok": True, "daemon": "managed-containerd", "pacemaker_node": server.pacemaker_node_name, }) require( ping["pacemaker_node"] == "david-prodesk", "node identity was not reportable", ) print("reported_identity accepted") print() print("NODE_IDENTITY_TEST_PASS=1")