snakemake-software-deployment-plugin-container 0.6.2__tar.gz → 0.7.1__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.
- {snakemake_software_deployment_plugin_container-0.6.2 → snakemake_software_deployment_plugin_container-0.7.1}/CHANGELOG.md +21 -0
- {snakemake_software_deployment_plugin_container-0.6.2 → snakemake_software_deployment_plugin_container-0.7.1}/PKG-INFO +3 -3
- {snakemake_software_deployment_plugin_container-0.6.2 → snakemake_software_deployment_plugin_container-0.7.1}/pyproject.toml +3 -3
- {snakemake_software_deployment_plugin_container-0.6.2 → snakemake_software_deployment_plugin_container-0.7.1}/src/snakemake_software_deployment_plugin_container/__init__.py +10 -2
- {snakemake_software_deployment_plugin_container-0.6.2 → snakemake_software_deployment_plugin_container-0.7.1}/tests/test_plugin.py +10 -1
- {snakemake_software_deployment_plugin_container-0.6.2 → snakemake_software_deployment_plugin_container-0.7.1}/.github/workflows/ci.yml +0 -0
- {snakemake_software_deployment_plugin_container-0.6.2 → snakemake_software_deployment_plugin_container-0.7.1}/.github/workflows/conventional-prs.yml +0 -0
- {snakemake_software_deployment_plugin_container-0.6.2 → snakemake_software_deployment_plugin_container-0.7.1}/.github/workflows/release-please.yml +0 -0
- {snakemake_software_deployment_plugin_container-0.6.2 → snakemake_software_deployment_plugin_container-0.7.1}/.gitignore +0 -0
- {snakemake_software_deployment_plugin_container-0.6.2 → snakemake_software_deployment_plugin_container-0.7.1}/LICENSE +0 -0
- {snakemake_software_deployment_plugin_container-0.6.2 → snakemake_software_deployment_plugin_container-0.7.1}/README.md +0 -0
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.7.1](https://github.com/snakemake/snakemake-software-deployment-plugin-container/compare/v0.7.0...v0.7.1) (2026-09-07)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* bump twine ([6a5fcdf](https://github.com/snakemake/snakemake-software-deployment-plugin-container/commit/6a5fcdf33ff93101266551449e090f3a13d569b7))
|
|
9
|
+
|
|
10
|
+
## [0.7.0](https://github.com/snakemake/snakemake-software-deployment-plugin-container/compare/v0.6.3...v0.7.0) (2026-09-07)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Features
|
|
14
|
+
|
|
15
|
+
* auto-pass workflow environment variables into container ([#21](https://github.com/snakemake/snakemake-software-deployment-plugin-container/issues/21)) ([3083669](https://github.com/snakemake/snakemake-software-deployment-plugin-container/commit/3083669e9e250053508099d26cfef93ec4fa8432))
|
|
16
|
+
|
|
17
|
+
## [0.6.3](https://github.com/snakemake/snakemake-software-deployment-plugin-container/compare/v0.6.2...v0.6.3) (2026-07-24)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
### Bug Fixes
|
|
21
|
+
|
|
22
|
+
* use shell_executable attribute ([643d62a](https://github.com/snakemake/snakemake-software-deployment-plugin-container/commit/643d62ad24e9f61187fe870f26ee55fa13134269))
|
|
23
|
+
|
|
3
24
|
## [0.6.2](https://github.com/snakemake/snakemake-software-deployment-plugin-container/compare/v0.6.1...v0.6.2) (2026-06-17)
|
|
4
25
|
|
|
5
26
|
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.5
|
|
2
2
|
Name: snakemake-software-deployment-plugin-container
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.7.1
|
|
4
4
|
Project-URL: repository, https://github.com/snakemake/snakemake-software-deployment-plugin-container
|
|
5
5
|
Project-URL: documentation, https://snakemake.github.io/snakemake-plugin-catalog/plugins/software-deployment/container.html
|
|
6
6
|
Author-email: Ben Carrillo <ben.uzh@pm.me>, Johannes Köster <johannes.koester@uni-due.de>
|
|
7
7
|
License-File: LICENSE
|
|
8
8
|
Requires-Python: <4.0,>=3.11
|
|
9
9
|
Requires-Dist: snakemake-interface-common<2.0.0,>=1.23.0
|
|
10
|
-
Requires-Dist: snakemake-interface-software-deployment-plugins<1.0,>=0.
|
|
10
|
+
Requires-Dist: snakemake-interface-software-deployment-plugins<1.0,>=0.19.2
|
|
11
11
|
Requires-Dist: udocker<2.0.0,>=1.3.17
|
|
12
12
|
Description-Content-Type: text/markdown
|
|
13
13
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "snakemake-software-deployment-plugin-container"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.7.1"
|
|
4
4
|
authors = [
|
|
5
5
|
{ name = "Ben Carrillo", email = "ben.uzh@pm.me" },
|
|
6
6
|
{ name = "Johannes Köster", email = "johannes.koester@uni-due.de" }
|
|
@@ -10,7 +10,7 @@ readme = "README.md"
|
|
|
10
10
|
requires-python = ">=3.11,<4.0"
|
|
11
11
|
dependencies = [
|
|
12
12
|
"snakemake-interface-common (>=1.23.0,<2.0.0)",
|
|
13
|
-
"snakemake-interface-software-deployment-plugins (>=0.
|
|
13
|
+
"snakemake-interface-software-deployment-plugins (>=0.19.2,<1.0)",
|
|
14
14
|
"udocker (>=1.3.17,<2.0.0)",
|
|
15
15
|
]
|
|
16
16
|
|
|
@@ -63,7 +63,7 @@ exclude_lines = ["pass", "\\.\\.\\."]
|
|
|
63
63
|
fail_under = 86.0
|
|
64
64
|
|
|
65
65
|
[tool.pixi.feature.publish.pypi-dependencies]
|
|
66
|
-
twine = ">=
|
|
66
|
+
twine = ">=7.0,<8"
|
|
67
67
|
build = ">=1.2.2,<2"
|
|
68
68
|
|
|
69
69
|
|
|
@@ -207,7 +207,7 @@ class RuntimeManager:
|
|
|
207
207
|
f" {self.workdir_option()} {getcwd()!r}" # Working directory inside container
|
|
208
208
|
f" {mountpoints}"
|
|
209
209
|
f" {self.image_uri()}" # Container image
|
|
210
|
-
"
|
|
210
|
+
f" {self.env.shell_executable.name}" # Shell executable
|
|
211
211
|
f" -c {shlex.quote(cmd)}" # The command to execute
|
|
212
212
|
)
|
|
213
213
|
|
|
@@ -217,7 +217,11 @@ class RuntimeManagerApptainer(RuntimeManager):
|
|
|
217
217
|
return "exec"
|
|
218
218
|
|
|
219
219
|
def options(self) -> str:
|
|
220
|
-
|
|
220
|
+
options = ""
|
|
221
|
+
envvars = [f"{env_var}={os.environ[env_var]}" for env_var in self.env.envvars]
|
|
222
|
+
if envvars:
|
|
223
|
+
options += f" --env {','.join(envvars)}"
|
|
224
|
+
return options
|
|
221
225
|
|
|
222
226
|
def workdir_option(self) -> str:
|
|
223
227
|
return "--cwd"
|
|
@@ -240,6 +244,8 @@ class RuntimeManagerDocker(RuntimeManager):
|
|
|
240
244
|
uid = os.getuid()
|
|
241
245
|
gid = os.getgid()
|
|
242
246
|
options += f" --user {uid}:{gid}"
|
|
247
|
+
for env_var in self.env.envvars:
|
|
248
|
+
options += f" --env {env_var}"
|
|
243
249
|
return options
|
|
244
250
|
|
|
245
251
|
|
|
@@ -247,4 +253,6 @@ class RuntimeManagerUdocker(RuntimeManager):
|
|
|
247
253
|
def options(self) -> str:
|
|
248
254
|
options = super().options()
|
|
249
255
|
options += " --nobanner --env TINI_SUBREAPER=1"
|
|
256
|
+
for env_var in self.env.envvars:
|
|
257
|
+
options += f" --env {env_var}={os.environ[env_var]}"
|
|
250
258
|
return options
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
from collections.abc import Set
|
|
1
2
|
from typing import Optional, Type
|
|
3
|
+
import shutil
|
|
4
|
+
import os
|
|
2
5
|
|
|
3
6
|
import pytest
|
|
4
|
-
import shutil
|
|
5
7
|
|
|
6
8
|
from snakemake_interface_software_deployment_plugins.tests import (
|
|
7
9
|
TestSoftwareDeploymentBase,
|
|
@@ -22,6 +24,10 @@ from snakemake_software_deployment_plugin_container import (
|
|
|
22
24
|
)
|
|
23
25
|
|
|
24
26
|
|
|
27
|
+
os.environ["TESTVAR1"] = "testvalue"
|
|
28
|
+
os.environ["TESTVAR2"] = "testvalue2"
|
|
29
|
+
|
|
30
|
+
|
|
25
31
|
class TestBase(TestSoftwareDeploymentBase):
|
|
26
32
|
test_container = "quay.io/biocontainers/samtools:1.23.1--ha83d96e_0"
|
|
27
33
|
|
|
@@ -47,6 +53,9 @@ class TestBase(TestSoftwareDeploymentBase):
|
|
|
47
53
|
# with exit code 0 (i.e. without error).
|
|
48
54
|
return "samtools --version"
|
|
49
55
|
|
|
56
|
+
def get_envvars(self) -> Set[str]:
|
|
57
|
+
return {"TESTVAR1", "TESTVAR2"}
|
|
58
|
+
|
|
50
59
|
|
|
51
60
|
class TestApptainerContainer(TestBase):
|
|
52
61
|
__test__ = True
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|