annet 0.14.0__tar.gz → 0.14.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of annet might be problematic. Click here for more details.

Files changed (140) hide show
  1. {annet-0.14.0/annet.egg-info → annet-0.14.2}/PKG-INFO +1 -1
  2. {annet-0.14.0 → annet-0.14.2}/annet/adapters/netbox/v37/storage.py +1 -1
  3. {annet-0.14.0 → annet-0.14.2}/annet/annlib/jsontools.py +9 -1
  4. {annet-0.14.0 → annet-0.14.2}/annet/generators/result.py +8 -3
  5. {annet-0.14.0 → annet-0.14.2/annet.egg-info}/PKG-INFO +1 -1
  6. {annet-0.14.0 → annet-0.14.2}/AUTHORS +0 -0
  7. {annet-0.14.0 → annet-0.14.2}/LICENSE +0 -0
  8. {annet-0.14.0 → annet-0.14.2}/MANIFEST.in +0 -0
  9. {annet-0.14.0 → annet-0.14.2}/README.md +0 -0
  10. {annet-0.14.0 → annet-0.14.2}/annet/__init__.py +0 -0
  11. {annet-0.14.0 → annet-0.14.2}/annet/adapters/__init__.py +0 -0
  12. {annet-0.14.0 → annet-0.14.2}/annet/adapters/netbox/__init__.py +0 -0
  13. {annet-0.14.0 → annet-0.14.2}/annet/adapters/netbox/common/__init__.py +0 -0
  14. {annet-0.14.0 → annet-0.14.2}/annet/adapters/netbox/common/client.py +0 -0
  15. {annet-0.14.0 → annet-0.14.2}/annet/adapters/netbox/common/manufacturer.py +0 -0
  16. {annet-0.14.0 → annet-0.14.2}/annet/adapters/netbox/common/models.py +0 -0
  17. {annet-0.14.0 → annet-0.14.2}/annet/adapters/netbox/common/query.py +0 -0
  18. {annet-0.14.0 → annet-0.14.2}/annet/adapters/netbox/common/status_client.py +0 -0
  19. {annet-0.14.0 → annet-0.14.2}/annet/adapters/netbox/common/storage_opts.py +0 -0
  20. {annet-0.14.0 → annet-0.14.2}/annet/adapters/netbox/provider.py +0 -0
  21. {annet-0.14.0 → annet-0.14.2}/annet/adapters/netbox/v24/__init__.py +0 -0
  22. {annet-0.14.0 → annet-0.14.2}/annet/adapters/netbox/v24/storage.py +0 -0
  23. {annet-0.14.0 → annet-0.14.2}/annet/adapters/netbox/v37/__init__.py +0 -0
  24. {annet-0.14.0 → annet-0.14.2}/annet/annet.py +0 -0
  25. {annet-0.14.0 → annet-0.14.2}/annet/annlib/__init__.py +0 -0
  26. {annet-0.14.0 → annet-0.14.2}/annet/annlib/command.py +0 -0
  27. {annet-0.14.0 → annet-0.14.2}/annet/annlib/diff.py +0 -0
  28. {annet-0.14.0 → annet-0.14.2}/annet/annlib/errors.py +0 -0
  29. {annet-0.14.0 → annet-0.14.2}/annet/annlib/filter_acl.py +0 -0
  30. {annet-0.14.0 → annet-0.14.2}/annet/annlib/lib.py +0 -0
  31. {annet-0.14.0 → annet-0.14.2}/annet/annlib/netdev/__init__.py +0 -0
  32. {annet-0.14.0 → annet-0.14.2}/annet/annlib/netdev/db.py +0 -0
  33. {annet-0.14.0 → annet-0.14.2}/annet/annlib/netdev/devdb/__init__.py +0 -0
  34. {annet-0.14.0 → annet-0.14.2}/annet/annlib/netdev/devdb/data/devdb.json +0 -0
  35. {annet-0.14.0 → annet-0.14.2}/annet/annlib/netdev/views/__init__.py +0 -0
  36. {annet-0.14.0 → annet-0.14.2}/annet/annlib/netdev/views/dump.py +0 -0
  37. {annet-0.14.0 → annet-0.14.2}/annet/annlib/netdev/views/hardware.py +0 -0
  38. {annet-0.14.0 → annet-0.14.2}/annet/annlib/output.py +0 -0
  39. {annet-0.14.0 → annet-0.14.2}/annet/annlib/patching.py +0 -0
  40. {annet-0.14.0 → annet-0.14.2}/annet/annlib/rbparser/__init__.py +0 -0
  41. {annet-0.14.0 → annet-0.14.2}/annet/annlib/rbparser/acl.py +0 -0
  42. {annet-0.14.0 → annet-0.14.2}/annet/annlib/rbparser/deploying.py +0 -0
  43. {annet-0.14.0 → annet-0.14.2}/annet/annlib/rbparser/ordering.py +0 -0
  44. {annet-0.14.0 → annet-0.14.2}/annet/annlib/rbparser/platform.py +0 -0
  45. {annet-0.14.0 → annet-0.14.2}/annet/annlib/rbparser/syntax.py +0 -0
  46. {annet-0.14.0 → annet-0.14.2}/annet/annlib/rulebook/__init__.py +0 -0
  47. {annet-0.14.0 → annet-0.14.2}/annet/annlib/rulebook/common.py +0 -0
  48. {annet-0.14.0 → annet-0.14.2}/annet/annlib/tabparser.py +0 -0
  49. {annet-0.14.0 → annet-0.14.2}/annet/annlib/types.py +0 -0
  50. {annet-0.14.0 → annet-0.14.2}/annet/api/__init__.py +0 -0
  51. {annet-0.14.0 → annet-0.14.2}/annet/argparse.py +0 -0
  52. {annet-0.14.0 → annet-0.14.2}/annet/cli.py +0 -0
  53. {annet-0.14.0 → annet-0.14.2}/annet/cli_args.py +0 -0
  54. {annet-0.14.0 → annet-0.14.2}/annet/configs/context.yml +0 -0
  55. {annet-0.14.0 → annet-0.14.2}/annet/configs/logging.yaml +0 -0
  56. {annet-0.14.0 → annet-0.14.2}/annet/connectors.py +0 -0
  57. {annet-0.14.0 → annet-0.14.2}/annet/deploy.py +0 -0
  58. {annet-0.14.0 → annet-0.14.2}/annet/diff.py +0 -0
  59. {annet-0.14.0 → annet-0.14.2}/annet/executor.py +0 -0
  60. {annet-0.14.0 → annet-0.14.2}/annet/filtering.py +0 -0
  61. {annet-0.14.0 → annet-0.14.2}/annet/gen.py +0 -0
  62. {annet-0.14.0 → annet-0.14.2}/annet/generators/__init__.py +0 -0
  63. {annet-0.14.0 → annet-0.14.2}/annet/generators/base.py +0 -0
  64. {annet-0.14.0 → annet-0.14.2}/annet/generators/common/__init__.py +0 -0
  65. {annet-0.14.0 → annet-0.14.2}/annet/generators/common/initial.py +0 -0
  66. {annet-0.14.0 → annet-0.14.2}/annet/generators/entire.py +0 -0
  67. {annet-0.14.0 → annet-0.14.2}/annet/generators/exceptions.py +0 -0
  68. {annet-0.14.0 → annet-0.14.2}/annet/generators/jsonfragment.py +0 -0
  69. {annet-0.14.0 → annet-0.14.2}/annet/generators/partial.py +0 -0
  70. {annet-0.14.0 → annet-0.14.2}/annet/generators/perf.py +0 -0
  71. {annet-0.14.0 → annet-0.14.2}/annet/generators/ref.py +0 -0
  72. {annet-0.14.0 → annet-0.14.2}/annet/hardware.py +0 -0
  73. {annet-0.14.0 → annet-0.14.2}/annet/implicit.py +0 -0
  74. {annet-0.14.0 → annet-0.14.2}/annet/lib.py +0 -0
  75. {annet-0.14.0 → annet-0.14.2}/annet/output.py +0 -0
  76. {annet-0.14.0 → annet-0.14.2}/annet/parallel.py +0 -0
  77. {annet-0.14.0 → annet-0.14.2}/annet/patching.py +0 -0
  78. {annet-0.14.0 → annet-0.14.2}/annet/reference.py +0 -0
  79. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/__init__.py +0 -0
  80. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/arista/__init__.py +0 -0
  81. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/arista/iface.py +0 -0
  82. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/aruba/__init__.py +0 -0
  83. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/aruba/ap_env.py +0 -0
  84. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/aruba/misc.py +0 -0
  85. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/cisco/__init__.py +0 -0
  86. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/cisco/iface.py +0 -0
  87. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/cisco/misc.py +0 -0
  88. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/cisco/vlandb.py +0 -0
  89. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/common.py +0 -0
  90. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/deploying.py +0 -0
  91. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/huawei/__init__.py +0 -0
  92. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/huawei/aaa.py +0 -0
  93. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/huawei/bgp.py +0 -0
  94. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/huawei/iface.py +0 -0
  95. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/huawei/misc.py +0 -0
  96. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/huawei/vlandb.py +0 -0
  97. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/juniper/__init__.py +0 -0
  98. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/nexus/__init__.py +0 -0
  99. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/nexus/iface.py +0 -0
  100. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/patching.py +0 -0
  101. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/ribbon/__init__.py +0 -0
  102. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/arista.deploy +0 -0
  103. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/arista.order +0 -0
  104. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/arista.rul +0 -0
  105. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/aruba.deploy +0 -0
  106. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/aruba.order +0 -0
  107. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/aruba.rul +0 -0
  108. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/cisco.deploy +0 -0
  109. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/cisco.order +0 -0
  110. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/cisco.rul +0 -0
  111. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/huawei.deploy +0 -0
  112. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/huawei.order +0 -0
  113. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/huawei.rul +0 -0
  114. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/juniper.rul +0 -0
  115. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/nexus.deploy +0 -0
  116. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/nexus.order +0 -0
  117. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/nexus.rul +0 -0
  118. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/nokia.rul +0 -0
  119. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/pc.order +0 -0
  120. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/pc.rul +0 -0
  121. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/ribbon.deploy +0 -0
  122. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/ribbon.rul +0 -0
  123. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/routeros.order +0 -0
  124. {annet-0.14.0 → annet-0.14.2}/annet/rulebook/texts/routeros.rul +0 -0
  125. {annet-0.14.0 → annet-0.14.2}/annet/storage.py +0 -0
  126. {annet-0.14.0 → annet-0.14.2}/annet/tabparser.py +0 -0
  127. {annet-0.14.0 → annet-0.14.2}/annet/text_term_format.py +0 -0
  128. {annet-0.14.0 → annet-0.14.2}/annet/tracing.py +0 -0
  129. {annet-0.14.0 → annet-0.14.2}/annet/types.py +0 -0
  130. {annet-0.14.0 → annet-0.14.2}/annet.egg-info/SOURCES.txt +0 -0
  131. {annet-0.14.0 → annet-0.14.2}/annet.egg-info/dependency_links.txt +0 -0
  132. {annet-0.14.0 → annet-0.14.2}/annet.egg-info/entry_points.txt +0 -0
  133. {annet-0.14.0 → annet-0.14.2}/annet.egg-info/requires.txt +0 -0
  134. {annet-0.14.0 → annet-0.14.2}/annet.egg-info/top_level.txt +0 -0
  135. {annet-0.14.0 → annet-0.14.2}/annet_generators/__init__.py +0 -0
  136. {annet-0.14.0 → annet-0.14.2}/annet_generators/example/__init__.py +0 -0
  137. {annet-0.14.0 → annet-0.14.2}/annet_generators/example/lldp.py +0 -0
  138. {annet-0.14.0 → annet-0.14.2}/requirements.txt +0 -0
  139. {annet-0.14.0 → annet-0.14.2}/setup.cfg +0 -0
  140. {annet-0.14.0 → annet-0.14.2}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: annet
3
- Version: 0.14.0
3
+ Version: 0.14.2
4
4
  Summary: annet
5
5
  Home-page: https://github.com/annetutil/annet
6
6
  License: MIT
@@ -204,7 +204,7 @@ class NetboxStorageV37(Storage):
204
204
  res = extend_device(
205
205
  device=device,
206
206
  storage=self,
207
- interfaces=interfaces[device.id],
207
+ interfaces=interfaces,
208
208
  neighbours=neighbours,
209
209
  )
210
210
  return res
@@ -28,7 +28,15 @@ def apply_json_fragment(
28
28
  try:
29
29
  new_value = pointer.get(new_fragment)
30
30
  except jsonpointer.JsonPointerException:
31
- # no value found in new_fragment by the pointer, skip the ACL item
31
+ # no value found in new_fragment by the pointer,
32
+ # try to delete it from the new config
33
+ try:
34
+ doc, part = pointer.to_last(full_new_config)
35
+ if isinstance(doc, dict) and isinstance(part, str):
36
+ doc.pop(part, None)
37
+ except jsonpointer.JsonPointerException:
38
+ # not found in the old config either
39
+ pass
32
40
  continue
33
41
 
34
42
  _ensure_pointer_exists(full_new_config, pointer)
@@ -105,12 +105,17 @@ class RunGeneratorResult:
105
105
  new_fragment,
106
106
  result_acl,
107
107
  )
108
- if filepath in reload_prios and \
109
- reload_prios[filepath] > generator_result.reload_prio:
108
+ if jsontools.format_json(new_config) == jsontools.format_json(previous_config):
109
+ # config is not changed, deprioritize reload_cmd
110
+ reload_prio = 0
111
+ else:
112
+ reload_prio = generator_result.reload_prio
113
+
114
+ if filepath in reload_prios and reload_prios[filepath] > reload_prio:
110
115
  _, reload_cmd = files[filepath]
111
116
  else:
112
117
  reload_cmd = generator_result.reload
113
- reload_prios[filepath] = generator_result.reload_prio
118
+ reload_prios[filepath] = reload_prio
114
119
  files[filepath] = (new_config, reload_cmd)
115
120
  return files
116
121
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: annet
3
- Version: 0.14.0
3
+ Version: 0.14.2
4
4
  Summary: annet
5
5
  Home-page: https://github.com/annetutil/annet
6
6
  License: MIT
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes