illumio-pylo 0.3.2__tar.gz → 0.3.3__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.
Files changed (110) hide show
  1. {illumio_pylo-0.3.2/illumio_pylo.egg-info → illumio_pylo-0.3.3}/PKG-INFO +1 -1
  2. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/API/APIConnector.py +30 -1
  3. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/API/CredentialsManager.py +0 -1
  4. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/API/JsonPayloadTypes.py +29 -0
  5. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/__init__.py +1 -1
  6. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3/illumio_pylo.egg-info}/PKG-INFO +1 -1
  7. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/.devcontainer/Dockerfile +0 -0
  8. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/.devcontainer/devcontainer.json +0 -0
  9. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/.gitattributes +0 -0
  10. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/.github/workflows/doxygen-publish.yml +0 -0
  11. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/.github/workflows/make-binaries.yml +0 -0
  12. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/.github/workflows/python-publish.yml +0 -0
  13. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/.gitignore +0 -0
  14. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/LICENSE +0 -0
  15. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/README.md +0 -0
  16. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/check_unique_hostnames.py +0 -0
  17. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/check_unique_services.py +0 -0
  18. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/delete_all_workloads.py +0 -0
  19. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/delete_unused_services.py +0 -0
  20. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/explorer_report_exporter.py +0 -0
  21. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/export_rules_to_firewall.py +0 -0
  22. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/generate-random-workloads.py +0 -0
  23. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/healthcheck_log.py +0 -0
  24. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/import-labels.py +0 -0
  25. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/import_workloads_placeholders.py +0 -0
  26. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/iplists_stats_duplicates_unused_finder.py +0 -0
  27. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/recalculate_explorer_logs.py +0 -0
  28. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/recalculate_explorer_logs_multithreaded.py +0 -0
  29. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/rules_exporter.py +0 -0
  30. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/rules_exporter_special.py +0 -0
  31. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/test.py +0 -0
  32. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/test_change_workload_desc.py +0 -0
  33. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/test_query.py +0 -0
  34. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/test_query2.py +0 -0
  35. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/test_securityprincipals.py +0 -0
  36. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/ven_idle_to_illumination.py +0 -0
  37. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/dev_playground/ven_reassign_pce.py +0 -0
  38. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/examples/explorer_query.py +0 -0
  39. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/examples/extend_cli.py +0 -0
  40. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/API/AuditLog.py +0 -0
  41. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/API/ClusterHealth.py +0 -0
  42. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/API/Explorer.py +0 -0
  43. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/API/RuleSearchQuery.py +0 -0
  44. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/API/__init__.py +0 -0
  45. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/AgentStore.py +0 -0
  46. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/Exception.py +0 -0
  47. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/Helpers/__init__.py +0 -0
  48. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/Helpers/exports.py +0 -0
  49. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/Helpers/functions.py +0 -0
  50. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/IPList.py +0 -0
  51. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/IPMap.py +0 -0
  52. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/Label.py +0 -0
  53. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/LabelCommon.py +0 -0
  54. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/LabelGroup.py +0 -0
  55. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/LabelStore.py +0 -0
  56. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/LabeledObject.py +0 -0
  57. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/Organization.py +0 -0
  58. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/Query.py +0 -0
  59. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/ReferenceTracker.py +0 -0
  60. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/Rule.py +0 -0
  61. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/Ruleset.py +0 -0
  62. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/RulesetStore.py +0 -0
  63. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/SecurityPrincipal.py +0 -0
  64. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/Service.py +0 -0
  65. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/SoftwareVersion.py +0 -0
  66. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/VirtualService.py +0 -0
  67. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/VirtualServiceStore.py +0 -0
  68. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/Workload.py +0 -0
  69. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/WorkloadStore.py +0 -0
  70. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/WorkloadStoreSubClasses.py +0 -0
  71. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/NativeParsers.py +0 -0
  72. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/__init__.py +0 -0
  73. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/__main__.py +0 -0
  74. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/__init__.py +0 -0
  75. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/credential_manager.py +0 -0
  76. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/iplist_analyzer.py +0 -0
  77. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/iplist_import_from_file.py +0 -0
  78. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/ruleset_export.py +0 -0
  79. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/update_pce_objects_cache.py +0 -0
  80. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/utils/LabelCreation.py +0 -0
  81. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/utils/__init__.py +0 -0
  82. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/utils/misc.py +0 -0
  83. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/ven_compatibility_report_export.py +0 -0
  84. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/ven_duplicate_remover.py +0 -0
  85. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/ven_idle_to_visibility.py +0 -0
  86. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/ven_upgrader.py +0 -0
  87. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/workload_export.py +0 -0
  88. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/workload_import.py +0 -0
  89. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/workload_reset_names_to_null.py +0 -0
  90. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/workload_update.py +0 -0
  91. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/cli/commands/workload_used_in_rule_finder.py +0 -0
  92. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/docs/Doxygen +0 -0
  93. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/tmp.py +0 -0
  94. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/utilities/__init__.py +0 -0
  95. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/utilities/cli.py +0 -0
  96. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/utilities/credentials.example.json +0 -0
  97. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/utilities/health_monitoring.py +0 -0
  98. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/utilities/resources/iplists-import-example.csv +0 -0
  99. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/utilities/resources/iplists-import-example.xlsx +0 -0
  100. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/utilities/resources/workload-exporter-filter-example.csv +0 -0
  101. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/utilities/resources/workloads-import-example.csv +0 -0
  102. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo/utilities/resources/workloads-import-example.xlsx +0 -0
  103. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo.egg-info/SOURCES.txt +0 -0
  104. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo.egg-info/dependency_links.txt +0 -0
  105. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo.egg-info/requires.txt +0 -0
  106. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/illumio_pylo.egg-info/top_level.txt +0 -0
  107. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/pyproject.toml +0 -0
  108. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/requirements.txt +0 -0
  109. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/setup.cfg +0 -0
  110. {illumio_pylo-0.3.2 → illumio_pylo-0.3.3}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: illumio_pylo
3
- Version: 0.3.2
3
+ Version: 0.3.3
4
4
  Summary: A set of tools and library for working with Illumio PCE
5
5
  Home-page: https://github.com/cpainchaud/pylo
6
6
  Author: Christophe Painchaud
@@ -12,7 +12,7 @@ from .JsonPayloadTypes import LabelGroupObjectJsonStructure, LabelObjectCreation
12
12
  LabelDimensionObjectStructure, AuditLogApiReplyEventJsonStructure, WorkloadsGetQueryLabelFilterJsonStructure, \
13
13
  NetworkDeviceObjectJsonStructure, NetworkDeviceEndpointObjectJsonStructure, HrefReference, \
14
14
  WorkloadObjectCreateJsonStructure, WorkloadObjectMultiCreateJsonRequestPayload, \
15
- WorkloadBulkUpdateEntryJsonStructure, WorkloadBulkUpdateResponseEntry
15
+ WorkloadBulkUpdateEntryJsonStructure, WorkloadBulkUpdateResponseEntry, VenObjectJsonStructure
16
16
 
17
17
  try:
18
18
  import requests as requests
@@ -624,6 +624,35 @@ class APIConnector:
624
624
 
625
625
  return None
626
626
 
627
+ def objects_ven_get(self,
628
+ include_deleted=False,
629
+ filter_by_ip: str = None,
630
+ filter_by_label: Optional[WorkloadsGetQueryLabelFilterJsonStructure] = None,
631
+ filter_by_name: str = None,
632
+ max_results: int = None,
633
+ async_mode=True) -> List[VenObjectJsonStructure]:
634
+ path = '/vens'
635
+ data = {}
636
+
637
+ if include_deleted:
638
+ data['include_deleted'] = 'yes'
639
+
640
+ if filter_by_ip is not None:
641
+ data['ip_address'] = filter_by_ip
642
+
643
+ if filter_by_label is not None:
644
+ # filter_by_label must be converted to json text
645
+ data['labels'] = json.dumps(filter_by_label)
646
+
647
+ if filter_by_name is not None:
648
+ data['name'] = filter_by_name
649
+
650
+ if max_results is not None:
651
+ data['max_results'] = max_results
652
+
653
+ return self.do_get_call(path=path, async_call=async_mode, params=data)
654
+
655
+
627
656
  def objects_workload_get(self,
628
657
  include_deleted=False,
629
658
  filter_by_ip: str = None,
@@ -14,7 +14,6 @@ except ImportError:
14
14
  paramiko = None
15
15
 
16
16
 
17
-
18
17
  class CredentialFileEntry(TypedDict):
19
18
  name: str
20
19
  fqdn: str
@@ -121,6 +121,35 @@ class WorkloadBulkUpdateResponseEntry(TypedDict):
121
121
  message: NotRequired[str]
122
122
 
123
123
 
124
+ class VenObjectWorkloadSummaryJsonStructure(TypedDict):
125
+ href: str
126
+ mode: str
127
+ online: bool
128
+
129
+
130
+ class VenObjectJsonStructure(TypedDict):
131
+ created_at: str
132
+ created_by: Optional[HrefReferenceWithName]
133
+ description: Optional[str]
134
+ hostname: Optional[str]
135
+ href: str
136
+ labels: List[HrefReference]
137
+ name: Optional[str]
138
+ interfaces: List[WorkloadInterfaceObjectJsonStructure]
139
+ updated_at: str
140
+ updated_by: Optional[HrefReferenceWithName]
141
+ last_heartbeat_at: Optional[str]
142
+ last_goodbye_at: Optional[str]
143
+ ven_type: Literal['server', 'endpoint', 'containerized-ven']
144
+ active_pce_fqdn: Optional[str]
145
+ target_pce_fqdn: Optional[str]
146
+ workloads: List[VenObjectWorkloadSummaryJsonStructure]
147
+ version: Optional[str]
148
+ os_id: Optional[str]
149
+ os_version: Optional[str]
150
+ os_platform: Optional[str]
151
+ uid: Optional[str]
152
+
124
153
 
125
154
  class RuleServiceReferenceObjectJsonStructure(TypedDict):
126
155
  href: str
@@ -1,4 +1,4 @@
1
- __version__ = "0.3.2"
1
+ __version__ = "0.3.3"
2
2
 
3
3
  import os
4
4
  import sys
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: illumio_pylo
3
- Version: 0.3.2
3
+ Version: 0.3.3
4
4
  Summary: A set of tools and library for working with Illumio PCE
5
5
  Home-page: https://github.com/cpainchaud/pylo
6
6
  Author: Christophe Painchaud
File without changes
File without changes
File without changes
File without changes
File without changes