Skip to content

Commit a151336

Browse files
committed
Implement changes for ADR034 and 035.
Signed-off-by: Tobias Wolf <wolf@b1-systems.de> On-behalf-of: <tobias.wolf@sap.com>
1 parent b4d51db commit a151336

45 files changed

Lines changed: 3757 additions & 3277 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.pre-commit-config.yaml‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,5 @@ repos:
2222
- id: mypy
2323
args: [--strict, --ignore-missing-imports, --check-untyped-defs, --allow-untyped-decorators]
2424
additional_dependencies:
25-
- types-click
2625
- types-PyYAML
2726
- types-requests

‎docs/cli.rst‎

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,20 @@ Available command-line tools provided by the Garden Linux Python Library
66
Features Commands
77
-----------------
88

9-
gl-cname
10-
~~~~~~~~
11-
12-
Generate a canonical name (cname) from feature sets.
13-
14-
.. autoprogram:: gardenlinux.features.cname_main:get_parser()
15-
169
gl-features-parse
1710
~~~~~~~~~~~~~~~~~
1811

19-
Parse and extract information from GardenLinux features.
12+
Parse and extract information from Garden Linux features.
2013

2114
.. autoprogram:: gardenlinux.features.__main__:get_parser()
2215

16+
gl-features-metadata
17+
~~~~~~~~~~~~~~~~~~~~
18+
19+
Provides Garden Linux release metadata file handling.
20+
21+
.. autoprogram:: gardenlinux.features.metadata_main:get_parser()
22+
2323
Flavors Commands
2424
----------------
2525

@@ -38,7 +38,7 @@ gl-oci
3838

3939
Push OCI artifacts to a registry and manage manifests.
4040

41-
.. click:: gardenlinux.oci.__main__:cli
41+
.. autoprogram:: gardenlinux.oci.__main__:get_parser()
4242
:prog: gl-oci
4343
:show-nested:
4444

‎docs/conf.py‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
"sphinx.ext.coverage",
2121
"sphinx_rtd_theme",
2222
"sphinx.ext.napoleon",
23-
"sphinx_click",
2423
"sphinxcontrib.autoprogram",
2524
"sphinx_markdown_builder",
2625
]

‎poetry.lock‎

Lines changed: 1101 additions & 925 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎pyproject.toml‎

Lines changed: 15 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "gardenlinux"
3-
version = "0.10.19"
3+
version = "1.0.0"
44
description = "Contains tools to work with the features directory of gardenlinux, for example deducting dependencies from feature sets or validating cnames"
55
authors = ["Garden Linux Maintainers <contact@gardenlinux.io>"]
66
license = "Apache-2.0"
@@ -10,47 +10,44 @@ packages = [{ include = "gardenlinux", from = "src" }]
1010
[tool.poetry.dependencies]
1111
python = ">=3.13,!=3.14.1"
1212
apt-repo = "^0.5"
13-
boto3 = "^1.43.10"
14-
click = "^8.4.0"
13+
boto3 = "^1.43.108"
1514
cryptography = "^49.0.0"
1615
jsonschema = "^4.26.0"
17-
networkx = "^3.6"
18-
oras = "^0.2.38"
19-
podman = "^5.6.0"
20-
pygit2 = "^1.19.1"
21-
pygments = "^2.19.2"
22-
PyGithub = "^2.8.1"
23-
PyYAML = "^6.0.2"
24-
semver = "^3.0.4"
16+
networkx = "^3.7"
17+
oras = "^0.2.43"
18+
podman = "^5.8.0"
19+
pygit2 = "^1.20.1"
20+
pygments = "^2.21.0"
21+
PyGithub = "^2.10.0"
22+
PyYAML = "^6.0.3"
23+
semver = "^3.1.0"
2524

2625
[tool.poetry.group.dev.dependencies]
2726
bandit = "^1.9.4"
2827
isort = "^8.0.1"
2928
moto = "^5.2.1"
30-
pre-commit = "^4.6.0"
29+
pre-commit = "^4.6.2"
3130
python-dotenv = "^1.2.2"
32-
pytest = "^9.0.3"
31+
pytest = "^9.1.1"
3332
pytest-cov = "^7.1.0"
3433
requests-mock = "^1.12.1"
3534
mypy = "2.1.0"
36-
types-click = "^7.1.8"
3735
types-pyyaml = "^6.0.12.20260518"
3836
types-requests = "^2.33.0.20260518"
3937
boto3-stubs = { extras = ["s3"], version = "^1.42.41" }
4038

4139
[tool.poetry.group.docs.dependencies]
42-
sphinx-rtd-theme = "^3.0.2"
43-
sphinx-click = "^6.2.0"
40+
sphinx-rtd-theme = "^3.1.0"
4441
sphinxcontrib-autoprogram = "^0.1.8"
45-
sphinx-markdown-builder = "^0.6.10"
42+
sphinx-markdown-builder = "^0.6.11"
4643

4744
[tool.poetry.scripts]
48-
gl-cname = "gardenlinux.features.cname_main:main"
4945
gl-feature-fs-diff = "gardenlinux.features.reproducibility.__main__:main"
5046
gl-features-parse = "gardenlinux.features.__main__:main"
5147
gl-flavors-parse = "gardenlinux.flavors.__main__:main"
5248
gl-gh-release = "gardenlinux.github.release.__main__:main"
5349
gl-oci = "gardenlinux.oci.__main__:main"
50+
gl-metadata = "gardenlinux.features.metadata_main:main"
5451
gl-s3 = "gardenlinux.s3.__main__:main"
5552

5653
[tool.pytest.ini_options]

‎src/gardenlinux/constants.py‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44
ARCHS = ["amd64", "arm64"]
55

66
# GardenLinux "bare" feature
7-
BARE_FLAVOR_FEATURE_CONTENT = {"description": "Bare flavor", "type": "platform"}
7+
BARE_CNAME_FEATURE_CONTENT = {"description": "Bare flavor", "type": "platform"}
88

9-
BARE_FLAVOR_LIBC_FEATURE_CONTENT = {
9+
BARE_CNAME_LIBC_FEATURE_CONTENT = {
1010
"description": "Bare libc feature",
1111
"type": "element",
1212
}
@@ -147,6 +147,7 @@
147147

148148
GL_BUG_REPORT_URL = "https://github.com/gardenlinux/gardenlinux/issues"
149149
GL_COMMIT_SPECIAL_VALUES = ("local",)
150+
GL_VERSION_SPECIAL_VALUES = ("today",)
150151
GL_CONTAINER_REGISTRY_BASE_URL = "ghcr.io/gardenlinux/gardenlinux"
151152
GL_DEB_REPO_BASE_URL = "https://packages.gardenlinux.io/gardenlinux"
152153
GL_DISTRIBUTION_NAME = "Garden Linux"

‎src/gardenlinux/features/__init__.py‎

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,10 @@
44
Features module
55
"""
66

7-
from .cname import CName
7+
from .artifact_base_name import ArtifactBaseName
8+
from .c_name import CName
9+
from .flavor import Flavor
810
from .parser import Parser
11+
from .versioned_flavor import VersionedFlavor
912

10-
__all__ = ["CName", "Parser"]
13+
__all__ = ["ArtifactBaseName", "CName", "Flavor", "Parser", "VersionedFlavor"]

0 commit comments

Comments
 (0)