diff options
author | CoprDistGit <infra@openeuler.org> | 2024-08-01 14:21:23 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2024-08-01 14:21:23 +0000 |
commit | 247fc79a80bec95c23eac2c1d19b47ed30f7350b (patch) | |
tree | 59f40f8d3835d3954a48242fe49c7195f9cb55c5 /RHEL-43235-fence_aws-2-log-error-for-unknown-states.patch | |
parent | 656cec46a0f3499446d93967253acac7c8acfe6f (diff) |
automatic import of fence-agentsopeneuler24.03_LTS
Diffstat (limited to 'RHEL-43235-fence_aws-2-log-error-for-unknown-states.patch')
-rw-r--r-- | RHEL-43235-fence_aws-2-log-error-for-unknown-states.patch | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/RHEL-43235-fence_aws-2-log-error-for-unknown-states.patch b/RHEL-43235-fence_aws-2-log-error-for-unknown-states.patch new file mode 100644 index 0000000..edc7d35 --- /dev/null +++ b/RHEL-43235-fence_aws-2-log-error-for-unknown-states.patch @@ -0,0 +1,41 @@ +From c2753c1882b5892b8b7a0fd093baded4a359b2a5 Mon Sep 17 00:00:00 2001 +From: Oyvind Albrigtsen <oalbrigt@redhat.com> +Date: Mon, 17 Jun 2024 11:19:12 +0200 +Subject: [PATCH] fence_aws: log error if unknown state returned + +--- + agents/aws/fence_aws.py | 14 +++++++++++--- + 1 file changed, 11 insertions(+), 3 deletions(-) + +diff --git a/agents/aws/fence_aws.py b/agents/aws/fence_aws.py +index b8d38462e..5459a06c4 100644 +--- a/agents/aws/fence_aws.py ++++ b/agents/aws/fence_aws.py +@@ -61,7 +61,12 @@ def get_nodes_list(conn, options): + for tag in instance.tags or []: + if tag.get("Key") == "Name": + instance_name = tag["Value"] +- result[instance.id] = (instance_name, status[instance.state["Name"]]) ++ try: ++ result[instance.id] = (instance_name, status[instance.state["Name"]]) ++ except KeyError as e: ++ if options.get("--original-action") == "list-status": ++ logger.error("Unknown status \"{}\" returned for {} ({})".format(instance.state["Name"], instance.id, instance_name)) ++ result[instance.id] = (instance_name, "unknown") + except ClientError: + fail_usage("Failed: Incorrect Access Key or Secret Key.") + except EndpointConnectionError: +@@ -79,8 +84,11 @@ def get_power_status(conn, options): + instance = conn.instances.filter(Filters=[{"Name": "instance-id", "Values": [options["--plug"]]}]) + state = list(instance)[0].state["Name"] + logger.debug("Status operation for EC2 instance %s returned state: %s",options["--plug"],state.upper()) +- return status[state] +- ++ try: ++ return status[state] ++ except KeyError as e: ++ logger.error("Unknown status \"{}\" returned".format(state)) ++ return "unknown" + except ClientError: + fail_usage("Failed: Incorrect Access Key or Secret Key.") + except EndpointConnectionError: |