assemblyline-core 4.5.0.32__tar.gz → 4.5.0.33__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 assemblyline-core might be problematic. Click here for more details.

Files changed (88) hide show
  1. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/PKG-INFO +1 -1
  2. assemblyline-core-4.5.0.33/assemblyline_core/VERSION +1 -0
  3. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/updater/helper.py +38 -1
  4. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/updater/run_updater.py +1 -0
  5. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core.egg-info/PKG-INFO +1 -1
  6. assemblyline-core-4.5.0.32/assemblyline_core/VERSION +0 -1
  7. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/LICENCE.md +0 -0
  8. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/README.md +0 -0
  9. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/__init__.py +0 -0
  10. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/alerter/__init__.py +0 -0
  11. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/alerter/processing.py +0 -0
  12. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/alerter/run_alerter.py +0 -0
  13. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/archiver/__init__.py +0 -0
  14. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/archiver/run_archiver.py +0 -0
  15. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/badlist_client.py +0 -0
  16. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/dispatching/__init__.py +0 -0
  17. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/dispatching/__main__.py +0 -0
  18. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/dispatching/client.py +0 -0
  19. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/dispatching/dispatcher.py +0 -0
  20. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/dispatching/schedules.py +0 -0
  21. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/dispatching/timeout.py +0 -0
  22. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/expiry/__init__.py +0 -0
  23. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/expiry/run_expiry.py +0 -0
  24. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/ingester/__init__.py +0 -0
  25. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/ingester/__main__.py +0 -0
  26. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/ingester/constants.py +0 -0
  27. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/ingester/ingester.py +0 -0
  28. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/metrics/__init__.py +0 -0
  29. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/metrics/es_metrics.py +0 -0
  30. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/metrics/heartbeat_formatter.py +0 -0
  31. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/metrics/helper.py +0 -0
  32. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/metrics/metrics_server.py +0 -0
  33. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/metrics/run_heartbeat_manager.py +0 -0
  34. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/metrics/run_metrics_aggregator.py +0 -0
  35. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/metrics/run_statistics_aggregator.py +0 -0
  36. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/plumber/__init__.py +0 -0
  37. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/plumber/run_plumber.py +0 -0
  38. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/replay/__init__.py +0 -0
  39. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/replay/client.py +0 -0
  40. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/replay/creator/__init__.py +0 -0
  41. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/replay/creator/run.py +0 -0
  42. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/replay/creator/run_worker.py +0 -0
  43. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/replay/loader/__init__.py +0 -0
  44. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/replay/loader/run.py +0 -0
  45. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/replay/loader/run_worker.py +0 -0
  46. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/replay/replay.py +0 -0
  47. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/safelist_client.py +0 -0
  48. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/scaler/__init__.py +0 -0
  49. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/scaler/collection.py +0 -0
  50. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/scaler/controllers/__init__.py +0 -0
  51. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/scaler/controllers/docker_ctl.py +0 -0
  52. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/scaler/controllers/interface.py +0 -0
  53. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/scaler/controllers/kubernetes_ctl.py +0 -0
  54. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/scaler/run_scaler.py +0 -0
  55. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/scaler/scaler_server.py +0 -0
  56. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/server_base.py +0 -0
  57. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/signature_client.py +0 -0
  58. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/submission_client.py +0 -0
  59. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/tasking_client.py +0 -0
  60. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/updater/__init__.py +0 -0
  61. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/vacuum/__init__.py +0 -0
  62. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/vacuum/crawler.py +0 -0
  63. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/vacuum/department_map.py +0 -0
  64. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/vacuum/safelist.py +0 -0
  65. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/vacuum/stream_map.py +0 -0
  66. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/vacuum/worker.py +0 -0
  67. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/workflow/__init__.py +0 -0
  68. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core/workflow/run_workflow.py +0 -0
  69. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core.egg-info/SOURCES.txt +0 -0
  70. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core.egg-info/dependency_links.txt +0 -0
  71. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core.egg-info/requires.txt +0 -0
  72. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/assemblyline_core.egg-info/top_level.txt +0 -0
  73. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/setup.cfg +0 -0
  74. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/setup.py +0 -0
  75. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/test/test_alerter.py +0 -0
  76. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/test/test_badlist_client.py +0 -0
  77. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/test/test_dispatcher.py +0 -0
  78. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/test/test_expiry.py +0 -0
  79. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/test/test_plumber.py +0 -0
  80. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/test/test_replay.py +0 -0
  81. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/test/test_safelist_client.py +0 -0
  82. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/test/test_scaler.py +0 -0
  83. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/test/test_scheduler.py +0 -0
  84. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/test/test_signature_client.py +0 -0
  85. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/test/test_simulation.py +0 -0
  86. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/test/test_vacuum.py +0 -0
  87. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/test/test_worker_ingest.py +0 -0
  88. {assemblyline-core-4.5.0.32 → assemblyline-core-4.5.0.33}/test/test_worker_submit.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: assemblyline-core
3
- Version: 4.5.0.32
3
+ Version: 4.5.0.33
4
4
  Summary: Assemblyline 4 - Core components
5
5
  Home-page: https://github.com/CybercentreCanada/assemblyline-core/
6
6
  Author: CCCS Assemblyline development team
@@ -0,0 +1 @@
1
+ 4.5.0.33
@@ -63,6 +63,39 @@ class DockerRegistry(ContainerRegistry):
63
63
  return resp_data['tags'] or []
64
64
  return []
65
65
 
66
+ class AzureContainerRegistry(ContainerRegistry):
67
+ def _get_proprietary_registry_tags(self, server, image_name, auth, verify, proxies=None, token_server=None):
68
+ # Find latest tag for each types
69
+ url = f"https://{server}/v2/{image_name}/tags/list"
70
+
71
+ # Get tag list
72
+ headers = {}
73
+ if auth:
74
+ headers["Authorization"] = auth
75
+
76
+ # Attempt request with provided credentials alone
77
+ resp = self._perform_request(url, headers, verify, proxies)
78
+
79
+ if not resp:
80
+ # Authentication with just credentials failed, moving over to generating a bearer token
81
+
82
+ # Retrieve token for authentication: https://azure.github.io/acr/Token-BasicAuth.html#using-the-token-api
83
+ token_url = f"https://{server}/oauth2/token?scope=repository:{image_name}:metadata_read,pull&service={server}"
84
+ resp = self._perform_request(token_url, headers, verify, proxies)
85
+ if resp and resp.ok:
86
+ # Request to obtain token was successful, set Authorization header for registry API
87
+ token = resp.json().get('access_token')
88
+ headers["Authorization"] = f"Bearer {token}"
89
+
90
+ resp = self._perform_request(url, headers, verify, proxies)
91
+
92
+ # At this point, we should have a response from the API
93
+ if resp and resp.ok:
94
+ # Test for positive list of tags
95
+ resp_data = resp.json()
96
+ return resp_data['tags'] or []
97
+
98
+ return []
66
99
 
67
100
  class HarborRegistry(ContainerRegistry):
68
101
  def _get_proprietary_registry_tags(self, server, image_name, auth, verify, proxies=None, token_server=None):
@@ -160,7 +193,11 @@ def get_latest_tag_for_service(
160
193
  # We're assuming that if only a password is given, then this is a token
161
194
  auth = f"Bearer {service_config.docker_config.registry_password}"
162
195
 
163
- registry = REGISTRY_TYPE_MAPPING[service_config.docker_config.registry_type]
196
+ if server.endswith(".azurecr.io"):
197
+ # This is an Azure Container Registry based on the server name
198
+ registry = AzureContainerRegistry()
199
+ else:
200
+ registry = REGISTRY_TYPE_MAPPING[service_config.docker_config.registry_type]
164
201
  token_server = None
165
202
  proxies = None
166
203
  for reg_conf in system_config.core.updater.registry_configs:
@@ -337,6 +337,7 @@ class KubernetesUpdateInterface:
337
337
  priority_class_name=self.priority_class,
338
338
  service_account_name=docker_config.service_account or self.default_service_account or PRIVILEGED_SERVICE_ACCOUNT_NAME,
339
339
  affinity=selector_to_node_affinity(self.linux_node_selector),
340
+ tolerations=self.default_service_tolerations
340
341
  )
341
342
 
342
343
  if use_pull_secret:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: assemblyline-core
3
- Version: 4.5.0.32
3
+ Version: 4.5.0.33
4
4
  Summary: Assemblyline 4 - Core components
5
5
  Home-page: https://github.com/CybercentreCanada/assemblyline-core/
6
6
  Author: CCCS Assemblyline development team
@@ -1 +0,0 @@
1
- 4.5.0.32