cs-image-system-docker-runtime-plugin 0.1.7__tar.gz → 0.1.8__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.
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/.gitignore +5 -2
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/PKG-INFO +7 -4
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/README.md +4 -1
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/pyproject.toml +3 -3
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/docker_provider_specific_image.py +9 -8
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/docker_runtime_builders.py +6 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/LICENSE +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/__init__.py +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/bootstrap.py +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/data/image-sources.yml +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/docker_names.py +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/docker_packer_source.py +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/docker_runtime_models.py +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/local_target.py +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/main.py +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/tfmodules/docker_container/main.tf +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/tfmodules/docker_container/outputs.tf +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/tfmodules/docker_container/provider.tf +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/tfmodules/docker_container/variables.tf +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/tfmodules/docker_volume/main.tf +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/tfmodules/docker_volume/outputs.tf +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/tfmodules/docker_volume/provider.tf +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/src/cs_image_system/docker_runtime/tfmodules/docker_volume/variables.tf +0 -0
- {cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/tests/test_docker_runtime.py +0 -0
|
@@ -13,16 +13,19 @@ build/
|
|
|
13
13
|
.venv/
|
|
14
14
|
.DS_Store
|
|
15
15
|
packages/**/*.code-workspace
|
|
16
|
-
# the IDE rewrites the root workspace file whenever folders are opened: it is the editor's, not the repository's
|
|
16
|
+
# the IDE rewrites the root workspace file whenever folders are opened: it is the editor's, not the repository's
|
|
17
17
|
/*.code-workspace
|
|
18
18
|
trial
|
|
19
19
|
tfmodules/tftest
|
|
20
20
|
YAML_DUMP.yaml
|
|
21
|
+
# a configuration tree's run-local plaintexts and debug output, wherever a tree
|
|
22
|
+
# sits in this repository (a copy of the frozen fixture included)
|
|
23
|
+
_private/
|
|
21
24
|
.obsidian
|
|
22
25
|
.tofu-plugin-cache/
|
|
23
26
|
_uncommitted/
|
|
24
27
|
target/
|
|
25
|
-
# never publishable, whatever the root (
|
|
28
|
+
# never publishable, whatever the root (the public-safe hook refuses them; `just publish-tree` checks the policy)
|
|
26
29
|
tfplan
|
|
27
30
|
*.tfstate
|
|
28
31
|
*.tfstate.backup
|
{cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: cs-image-system-docker-runtime-plugin
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.8
|
|
4
4
|
Summary: The docker runtime type: a durable host's container daemon as a place where images bake and instances run
|
|
5
5
|
Project-URL: Repository, https://github.com/infrastructurebuilder/cs-image-system-3
|
|
6
6
|
Project-URL: Documentation, https://github.com/infrastructurebuilder/cs-image-system-3/blob/develop/docs/OPERATIONS.md
|
|
@@ -9,9 +9,9 @@ Author-email: Mykel Alvis <mykelalvis@infrastructurebuilder.org>
|
|
|
9
9
|
License-Expression: Apache-2.0
|
|
10
10
|
License-File: LICENSE
|
|
11
11
|
Requires-Python: >=3.13
|
|
12
|
-
Requires-Dist: cs-image-system-base==0.1.
|
|
12
|
+
Requires-Dist: cs-image-system-base==0.1.8
|
|
13
13
|
Requires-Dist: cs-image-system-contract<0.5,>=0.4
|
|
14
|
-
Requires-Dist: cs-image-system-hashicorp-utils==0.1.
|
|
14
|
+
Requires-Dist: cs-image-system-hashicorp-utils==0.1.8
|
|
15
15
|
Requires-Dist: pydantic>=2.13
|
|
16
16
|
Requires-Dist: python-hcl2>=8.1
|
|
17
17
|
Description-Content-Type: text/markdown
|
|
@@ -50,7 +50,10 @@ differs from them in three ways the design records as decisions:
|
|
|
50
50
|
(`sha256:...`), and its names are tags: `<repository>:<final name>` and
|
|
51
51
|
the series' floating `<repository>:<prefix>`, which a child image bakes
|
|
52
52
|
from when its parent is deferred (the daemon has no "newest image matching
|
|
53
|
-
a pattern" query; the tag is that query).
|
|
53
|
+
a pattern" query; the tag is that query). The runtime's builder gives
|
|
54
|
+
each image it makes its repository (`prepare_provider_specific_image`),
|
|
55
|
+
so `DockerProviderSpecificImage.floating_tag()` reads the image's own
|
|
56
|
+
`repository` and asks no run for it. A label is fixed when an image
|
|
54
57
|
is built, so what the core stamps afterwards (the parent bound after the
|
|
55
58
|
bake, the fingerprint, a release) is carried by tags that MOVE:
|
|
56
59
|
`<repository>:<short id>--<key>--<value>`, one per key.
|
|
@@ -32,7 +32,10 @@ differs from them in three ways the design records as decisions:
|
|
|
32
32
|
(`sha256:...`), and its names are tags: `<repository>:<final name>` and
|
|
33
33
|
the series' floating `<repository>:<prefix>`, which a child image bakes
|
|
34
34
|
from when its parent is deferred (the daemon has no "newest image matching
|
|
35
|
-
a pattern" query; the tag is that query).
|
|
35
|
+
a pattern" query; the tag is that query). The runtime's builder gives
|
|
36
|
+
each image it makes its repository (`prepare_provider_specific_image`),
|
|
37
|
+
so `DockerProviderSpecificImage.floating_tag()` reads the image's own
|
|
38
|
+
`repository` and asks no run for it. A label is fixed when an image
|
|
36
39
|
is built, so what the core stamps afterwards (the parent bound after the
|
|
37
40
|
bake, the fingerprint, a release) is carried by tags that MOVE:
|
|
38
41
|
`<repository>:<short id>--<key>--<value>`, one per key.
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "cs-image-system-docker-runtime-plugin"
|
|
7
|
-
version = "0.1.
|
|
7
|
+
version = "0.1.8"
|
|
8
8
|
description = "The docker runtime type: a durable host's container daemon as a place where images bake and instances run"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
authors = [{ name = "Mykel Alvis", email = "mykelalvis@infrastructurebuilder.org" }]
|
|
@@ -13,8 +13,8 @@ license-files = ["LICENSE"]
|
|
|
13
13
|
requires-python = ">=3.13"
|
|
14
14
|
dependencies = [
|
|
15
15
|
"cs-image-system-contract>=0.4,<0.5",
|
|
16
|
-
"cs-image-system-base==0.1.
|
|
17
|
-
"cs-image-system-hashicorp-utils==0.1.
|
|
16
|
+
"cs-image-system-base==0.1.8",
|
|
17
|
+
"cs-image-system-hashicorp-utils==0.1.8",
|
|
18
18
|
"python-hcl2>=8.1",
|
|
19
19
|
"pydantic>=2.13",
|
|
20
20
|
]
|
|
@@ -6,8 +6,6 @@ import logging
|
|
|
6
6
|
from typing import Any
|
|
7
7
|
|
|
8
8
|
from cs_image_system.base.models.provider_specific_image import ProviderSpecificImage
|
|
9
|
-
from cs_image_system.base.run_context import current_context # a model holds no context; it fetches the current one
|
|
10
|
-
from cs_image_system.contract.context import RunContextProtocol
|
|
11
9
|
|
|
12
10
|
from .docker_names import tag_name
|
|
13
11
|
|
|
@@ -20,7 +18,14 @@ class DockerProviderSpecificImage(ProviderSpecificImage):
|
|
|
20
18
|
our own builds by image id (``sha256:...``). Deferred: the series'
|
|
21
19
|
floating tag ``<repository>:<prefix>``, which every bake of the series
|
|
22
20
|
moves to its newest build -- the daemon has no "newest image matching a
|
|
23
|
-
name pattern" query, so the tag IS that query.
|
|
21
|
+
name pattern" query, so the tag IS that query.
|
|
22
|
+
|
|
23
|
+
``repository`` is where its runtime tags builds: the runtime builder
|
|
24
|
+
that makes the image sets it (``prepare_provider_specific_image``), so
|
|
25
|
+
the image asks no run for it; one made without a runtime keeps the
|
|
26
|
+
plain default."""
|
|
27
|
+
|
|
28
|
+
repository: str = "csis"
|
|
24
29
|
|
|
25
30
|
@classmethod
|
|
26
31
|
def csis_name(cls) -> str:
|
|
@@ -30,11 +35,7 @@ class DockerProviderSpecificImage(ProviderSpecificImage):
|
|
|
30
35
|
"""``<repository>:<prefix as a tag>`` for a deferred image."""
|
|
31
36
|
if not self.deferred_name_pattern:
|
|
32
37
|
return None
|
|
33
|
-
|
|
34
|
-
rtb = ctx.runtime_builders.get(self.runtime)
|
|
35
|
-
model = getattr(rtb, "model", None)
|
|
36
|
-
repo = model.get_repository() if model is not None and hasattr(model, "get_repository") else "csis"
|
|
37
|
-
return f"{repo}:{tag_name(self.deferred_name_pattern)}"
|
|
38
|
+
return f"{self.repository}:{tag_name(self.deferred_name_pattern)}"
|
|
38
39
|
|
|
39
40
|
def get_query_assets(self) -> dict[str, Any] | None:
|
|
40
41
|
if self.is_resolved():
|
|
@@ -166,6 +166,12 @@ class DockerContainerBuilder(ContainerBuilderBase[DockerContainerBuilderModel],
|
|
|
166
166
|
def provider_specific_image_class(self) -> type[ProviderSpecificImage]:
|
|
167
167
|
return DockerProviderSpecificImage
|
|
168
168
|
|
|
169
|
+
def prepare_provider_specific_image(self, psi: ProviderSpecificImage) -> None:
|
|
170
|
+
"""An image of this runtime knows the repository its builds are
|
|
171
|
+
tagged into: the floating tag of a deferred one is read from it."""
|
|
172
|
+
if isinstance(psi, DockerProviderSpecificImage):
|
|
173
|
+
psi.repository = self.model.get_repository()
|
|
174
|
+
|
|
169
175
|
# ------------------------------------------------------------ the CLI
|
|
170
176
|
def docker_binary(self) -> str:
|
|
171
177
|
"""The docker CLI this runtime runs: the ``binary`` of the
|
{cs_image_system_docker_runtime_plugin-0.1.7 → cs_image_system_docker_runtime_plugin-0.1.8}/LICENSE
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
|