assemblyline-core 4.4.1.dev5__tar.gz → 4.4.1.dev7__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.
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/PKG-INFO +1 -1
- assemblyline-core-4.4.1.dev7/assemblyline_core/VERSION +1 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/scaler/scaler_server.py +25 -18
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core.egg-info/PKG-INFO +1 -1
- assemblyline-core-4.4.1.dev5/assemblyline_core/VERSION +0 -1
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/LICENCE.md +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/README.md +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/alerter/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/alerter/processing.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/alerter/run_alerter.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/archiver/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/archiver/run_archiver.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/dispatching/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/dispatching/__main__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/dispatching/client.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/dispatching/dispatcher.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/dispatching/schedules.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/dispatching/timeout.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/expiry/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/expiry/run_expiry.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/ingester/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/ingester/__main__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/ingester/constants.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/ingester/ingester.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/metrics/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/metrics/es_metrics.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/metrics/heartbeat_formatter.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/metrics/helper.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/metrics/metrics_server.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/metrics/run_heartbeat_manager.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/metrics/run_metrics_aggregator.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/metrics/run_statistics_aggregator.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/plumber/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/plumber/run_plumber.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/replay/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/replay/client.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/replay/creator/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/replay/creator/run.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/replay/creator/run_worker.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/replay/loader/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/replay/loader/run.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/replay/loader/run_worker.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/replay/replay.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/safelist_client.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/scaler/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/scaler/collection.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/scaler/controllers/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/scaler/controllers/docker_ctl.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/scaler/controllers/interface.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/scaler/controllers/kubernetes_ctl.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/scaler/run_scaler.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/server_base.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/submission_client.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/tasking_client.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/updater/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/updater/helper.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/updater/run_updater.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/vacuum/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/vacuum/crawler.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/vacuum/department_map.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/vacuum/safelist.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/vacuum/stream_map.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/vacuum/worker.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/workflow/__init__.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/workflow/run_workflow.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core.egg-info/SOURCES.txt +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core.egg-info/dependency_links.txt +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core.egg-info/requires.txt +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core.egg-info/top_level.txt +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/setup.cfg +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/setup.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/test/test_alerter.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/test/test_dispatcher.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/test/test_expiry.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/test/test_plumber.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/test/test_replay.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/test/test_scaler.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/test/test_scheduler.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/test/test_simulation.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/test/test_vacuum.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/test/test_worker_ingest.py +0 -0
- {assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/test/test_worker_submit.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
4.4.1.dev7
|
|
@@ -518,25 +518,23 @@ class ScalerServer(ThreadedCoreBase):
|
|
|
518
518
|
dependency_blobs[_n] = f"dh={dep_hash}v={service.version}p={service.privileged}ssl={INTERNAL_ENCRYPT}"
|
|
519
519
|
|
|
520
520
|
# Check if the service dependencies have been deployed.
|
|
521
|
-
dependency_keys =
|
|
522
|
-
updater_ready = stage == ServiceStage.Running
|
|
521
|
+
dependency_keys = dict()
|
|
523
522
|
if service.update_config:
|
|
524
523
|
for _n, dependency in dependency_config.items():
|
|
525
524
|
key = self.controller.stateful_container_key(service.name, _n, dependency,
|
|
526
525
|
dependency_blobs.get(_n, ''))
|
|
527
526
|
if key:
|
|
528
|
-
dependency_keys
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
527
|
+
dependency_keys[_n] = _n + key
|
|
528
|
+
else:
|
|
529
|
+
# Services without an update configuration are born ready
|
|
530
|
+
self._service_stage_hash.set(name, ServiceStage.Running)
|
|
531
|
+
stage = ServiceStage.Running
|
|
532
|
+
|
|
533
|
+
# If dependency container(s) are missing, start the setup process
|
|
534
|
+
if set(dependency_keys.keys()) != set(dependency_config.keys()):
|
|
534
535
|
self.log.info(f'Preparing environment for {service.name}')
|
|
535
|
-
#
|
|
536
|
-
if service.update_config and service.update_config.wait_for_update:
|
|
537
|
-
self._service_stage_hash.set(name, ServiceStage.Update)
|
|
538
|
-
stage = ServiceStage.Update
|
|
539
|
-
else:
|
|
536
|
+
# Services that don't need to wait for an update can be declared ready
|
|
537
|
+
if service.update_config and not service.update_config.wait_for_update:
|
|
540
538
|
self._service_stage_hash.set(name, ServiceStage.Running)
|
|
541
539
|
stage = ServiceStage.Running
|
|
542
540
|
|
|
@@ -544,9 +542,12 @@ class ScalerServer(ThreadedCoreBase):
|
|
|
544
542
|
dependency_internet = [(name, dependency.container.allow_internet_access)
|
|
545
543
|
for name, dependency in dependency_config.items()]
|
|
546
544
|
|
|
547
|
-
self.controller.prepare_network(
|
|
548
|
-
|
|
545
|
+
self.controller.prepare_network(service.name, service.docker_config.allow_internet_access,
|
|
546
|
+
dependency_internet)
|
|
549
547
|
for _n, dependency in dependency_config.items():
|
|
548
|
+
if dependency_keys.get(_n):
|
|
549
|
+
# Dependency already exists, skip
|
|
550
|
+
continue
|
|
550
551
|
self.log.info(f'Launching {service.name} dependency {_n}')
|
|
551
552
|
self.controller.start_stateful_container(
|
|
552
553
|
service_name=service.name,
|
|
@@ -565,7 +566,7 @@ class ScalerServer(ThreadedCoreBase):
|
|
|
565
566
|
# Compute a blob of service properties not include in the docker config, that
|
|
566
567
|
# should still result in a service being restarted when changed
|
|
567
568
|
cfg_items = get_recursive_sorted_tuples(service.config)
|
|
568
|
-
dep_keys = ''.join(sorted(dependency_keys))
|
|
569
|
+
dep_keys = ''.join(sorted(dependency_keys.values()))
|
|
569
570
|
config_blob = (f"c={cfg_items}sp={service.submission_params}"
|
|
570
571
|
f"dk={dep_keys}p={service.privileged}d={docker_config}ssl={INTERNAL_ENCRYPT}")
|
|
571
572
|
|
|
@@ -615,7 +616,10 @@ class ScalerServer(ThreadedCoreBase):
|
|
|
615
616
|
profile.config_blob = config_blob
|
|
616
617
|
self.controller.restart(profile)
|
|
617
618
|
self.log.info(f"Deployment information for {name} replaced")
|
|
618
|
-
|
|
619
|
+
# If service has already been scaled but is not running, scale down until ready
|
|
620
|
+
elif name in self.profiles:
|
|
621
|
+
self.log.info(f"System has deemed {name} not ready/running. Scaling down..")
|
|
622
|
+
self.controller.set_target(name, 0)
|
|
619
623
|
except Exception:
|
|
620
624
|
self.log.exception(f"Error applying service settings from: {service.name}")
|
|
621
625
|
self.handle_service_error(service.name)
|
|
@@ -661,7 +665,10 @@ class ScalerServer(ThreadedCoreBase):
|
|
|
661
665
|
# Figure out what services are expected to be running and how many
|
|
662
666
|
with elasticapm.capture_span('read_profiles'):
|
|
663
667
|
with self.profiles_lock:
|
|
664
|
-
|
|
668
|
+
# We want to evaluate 'active' service profiles
|
|
669
|
+
all_profiles: dict[str, ServiceProfile] = {_n: copy.deepcopy(_v)
|
|
670
|
+
for _n, _v in self.profiles.items()
|
|
671
|
+
if self.get_service_stage(_n) == ServiceStage.Running}
|
|
665
672
|
raw_targets = self.controller.get_targets()
|
|
666
673
|
# This is the list of targets we will adjust
|
|
667
674
|
targets = {_p.name: raw_targets.get(_p.name, 0) for _p in all_profiles.values()}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
4.4.1.dev5
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/alerter/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/archiver/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/expiry/__init__.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/expiry/run_expiry.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/ingester/__init__.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/ingester/__main__.py
RENAMED
|
File without changes
|
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/ingester/ingester.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/metrics/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/metrics/helper.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/plumber/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/replay/__init__.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/replay/client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/replay/loader/run.py
RENAMED
|
File without changes
|
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/replay/replay.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/safelist_client.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/scaler/__init__.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/scaler/collection.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/scaler/run_scaler.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/server_base.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/submission_client.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/tasking_client.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/updater/__init__.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/updater/helper.py
RENAMED
|
File without changes
|
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/vacuum/__init__.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/vacuum/crawler.py
RENAMED
|
File without changes
|
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/vacuum/safelist.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/vacuum/stream_map.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/vacuum/worker.py
RENAMED
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core/workflow/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{assemblyline-core-4.4.1.dev5 → assemblyline-core-4.4.1.dev7}/assemblyline_core.egg-info/SOURCES.txt
RENAMED
|
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
|