From 386654f602c86495515811dd741652a3b0292fd3 Mon Sep 17 00:00:00 2001
From: Dmitry Tantsur <dtantsur@protonmail.com>
Date: Wed, 25 Sep 2019 11:47:23 +0200
Subject: [PATCH] Fix compatibility with Pint 0.5

Conversion from Quantity to int/long was added only in 0.5.2.

Change-Id: I23f93d29a0624b77f4624c6af530971eb6a4c01b
---
 ironic_python_agent/numa_inspector.py             | 2 +-
 releasenotes/notes/pint-0.5-816aaf3a4f6d4a6e.yaml | 5 +++++
 2 files changed, 6 insertions(+), 1 deletion(-)
 create mode 100644 releasenotes/notes/pint-0.5-816aaf3a4f6d4a6e.yaml

diff --git a/ironic_python_agent/numa_inspector.py b/ironic_python_agent/numa_inspector.py
index 61e9028d8..0b8509a11 100644
--- a/ironic_python_agent/numa_inspector.py
+++ b/ironic_python_agent/numa_inspector.py
@@ -82,7 +82,7 @@ def get_nodes_memory_info(numa_node_dirs):
             # To get memory size with unit from memory info line
             # Memory info sample line format 'Node 0 MemTotal: 1560000 kB'
             value = line.split(":")[1].strip()
-            memory_kb = int(UNIT_CONVERTER(value).to_base_units())
+            memory_kb = int(UNIT_CONVERTER(value).to_base_units().magnitude)
         except (ValueError, IndexError, pint.UndefinedUnitError) as exc:
             msg = ('Failed to get memory information for %(node)s: '
                    '%(error)s' % {'node': numa_node_dir, 'error': exc})
diff --git a/releasenotes/notes/pint-0.5-816aaf3a4f6d4a6e.yaml b/releasenotes/notes/pint-0.5-816aaf3a4f6d4a6e.yaml
new file mode 100644
index 000000000..3b6cd2623
--- /dev/null
+++ b/releasenotes/notes/pint-0.5-816aaf3a4f6d4a6e.yaml
@@ -0,0 +1,5 @@
+---
+fixes:
+  - |
+    Fixes the ``numa-topology`` inspection collector to be compatible with
+    Pint < 0.5.2.