From 1b073fccc242f5edf8df344b2eddc5074b46ceb0 Mon Sep 17 00:00:00 2001 From: YuandongXu Date: Tue, 18 Jun 2019 08:15:41 +0800 Subject: [PATCH] backport/2.8/57187 update ce_facts to fix array out of range bug (#57187) (#57698) * update ce_facts (#57187) (cherry picked from commit 229d20b6d9ebbb7c2bd1732a0eecda4f00d6e757) * add a changlog fragment for PR 57698 --- .../57698-update-ce_facts-to-fix-array-out-of-range-bug.yml | 2 ++ lib/ansible/modules/network/cloudengine/ce_facts.py | 5 ++++- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 changelogs/fragments/57698-update-ce_facts-to-fix-array-out-of-range-bug.yml diff --git a/changelogs/fragments/57698-update-ce_facts-to-fix-array-out-of-range-bug.yml b/changelogs/fragments/57698-update-ce_facts-to-fix-array-out-of-range-bug.yml new file mode 100644 index 00000000000..e14150c768b --- /dev/null +++ b/changelogs/fragments/57698-update-ce_facts-to-fix-array-out-of-range-bug.yml @@ -0,0 +1,2 @@ +bugfixes: + - update ce_facts to fix array out of range bug(https://github.com/ansible/ansible/pull/57187). diff --git a/lib/ansible/modules/network/cloudengine/ce_facts.py b/lib/ansible/modules/network/cloudengine/ce_facts.py index d4849ea8a44..ceff0238207 100644 --- a/lib/ansible/modules/network/cloudengine/ce_facts.py +++ b/lib/ansible/modules/network/cloudengine/ce_facts.py @@ -324,7 +324,10 @@ class Interfaces(FactsBase): tmp_neighbors = neighbors[2:] for item in tmp_neighbors: tmp_item = item.split() - neighbors_dict[tmp_item[0]] = tmp_item[3] + if len(tmp_item) > 3: + neighbors_dict[tmp_item[0]] = tmp_item[3] + else: + neighbors_dict[tmp_item[0]] = None self.facts['neighbors'] = neighbors_dict