compose-runner 0.6.2rc1__tar.gz → 0.6.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 (35) hide show
  1. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/PKG-INFO +1 -1
  2. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/_version.py +2 -2
  3. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/ecs_task.py +8 -2
  4. compose_runner-0.6.3/compose_runner/tests/test_ecs_task.py +15 -0
  5. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/.gitignore +0 -0
  6. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/Dockerfile +0 -0
  7. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/LICENSE +0 -0
  8. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/README.md +0 -0
  9. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/aws_lambda/.dockerignore +0 -0
  10. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/aws_lambda/Dockerfile +0 -0
  11. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/__init__.py +0 -0
  12. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/aws_lambda/__init__.py +0 -0
  13. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/aws_lambda/common.py +0 -0
  14. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/aws_lambda/log_poll_handler.py +0 -0
  15. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/aws_lambda/results_handler.py +0 -0
  16. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/aws_lambda/run_handler.py +0 -0
  17. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/aws_lambda/status_handler.py +0 -0
  18. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/cli.py +0 -0
  19. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/run.py +0 -0
  20. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/sentry.py +0 -0
  21. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/tests/cassettes/test_run/test_download_bundle.yaml +0 -0
  22. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/tests/cassettes/test_run/test_run_database_workflow.yaml +0 -0
  23. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/tests/cassettes/test_run/test_run_group_comparison_workflow.yaml +0 -0
  24. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/tests/cassettes/test_run/test_run_string_group_comparison_workflow.yaml +0 -0
  25. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/tests/cassettes/test_run/test_run_workflow.yaml +0 -0
  26. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/tests/conftest.py +0 -0
  27. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/tests/test_cli.py +0 -0
  28. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/tests/test_lambda_handlers.py +0 -0
  29. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/compose_runner/tests/test_run.py +0 -0
  30. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/infra/cdk/app.py +0 -0
  31. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/infra/cdk/cdk.json +0 -0
  32. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/infra/cdk/requirements.txt +0 -0
  33. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/infra/cdk/stacks/__init__.py +0 -0
  34. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/infra/cdk/stacks/compose_runner_stack.py +0 -0
  35. {compose_runner-0.6.2rc1 → compose_runner-0.6.3}/pyproject.toml +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: compose-runner
3
- Version: 0.6.2rc1
3
+ Version: 0.6.3
4
4
  Summary: A package for running neurosynth-compose analyses
5
5
  Project-URL: Repository, https://github.com/neurostuff/compose-runner
6
6
  Author-email: James Kent <jamesdkent21@gmail.com>
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '0.6.2rc1'
32
- __version_tuple__ = version_tuple = (0, 6, 2, 'rc1')
31
+ __version__ = version = '0.6.3'
32
+ __version_tuple__ = version_tuple = (0, 6, 3)
33
33
 
34
34
  __commit_id__ = commit_id = None
@@ -73,6 +73,13 @@ def _bool_from_env(value: Optional[str]) -> bool:
73
73
  return value.lower() in {"1", "true", "t", "yes", "y"}
74
74
 
75
75
 
76
+ def _resolve_n_cores(env_value: Optional[str]) -> Optional[int]:
77
+ if env_value:
78
+ return int(env_value)
79
+ detected_cores = os.cpu_count()
80
+ return detected_cores if detected_cores else None
81
+
82
+
76
83
  def main() -> None:
77
84
  if ARTIFACT_PREFIX_ENV not in os.environ:
78
85
  raise RuntimeError(f"{ARTIFACT_PREFIX_ENV} environment variable must be set.")
@@ -85,8 +92,7 @@ def main() -> None:
85
92
  nsc_key = os.environ.get(NSC_KEY_ENV) or None
86
93
  nv_key = os.environ.get(NV_KEY_ENV) or None
87
94
  no_upload = _bool_from_env(os.environ.get(NO_UPLOAD_ENV))
88
- n_cores_value = os.environ.get(N_CORES_ENV)
89
- n_cores = int(n_cores_value) if n_cores_value else None
95
+ n_cores = _resolve_n_cores(os.environ.get(N_CORES_ENV))
90
96
 
91
97
  bucket = os.environ.get(RESULTS_BUCKET_ENV)
92
98
  prefix = os.environ.get(RESULTS_PREFIX_ENV)
@@ -0,0 +1,15 @@
1
+ from compose_runner import ecs_task
2
+
3
+
4
+ def test_resolve_n_cores_prefers_env():
5
+ assert ecs_task._resolve_n_cores("3") == 3
6
+
7
+
8
+ def test_resolve_n_cores_detects_cpu(monkeypatch):
9
+ monkeypatch.setattr(ecs_task.os, "cpu_count", lambda: 4)
10
+ assert ecs_task._resolve_n_cores(None) == 4
11
+
12
+
13
+ def test_resolve_n_cores_handles_unknown_cpu(monkeypatch):
14
+ monkeypatch.setattr(ecs_task.os, "cpu_count", lambda: None)
15
+ assert ecs_task._resolve_n_cores(None) is None