Skip to content

Commit 4a359ec

Browse files
committed
Add config
1 parent 9a57b41 commit 4a359ec

2 files changed

Lines changed: 36 additions & 30 deletions

File tree

root/app/models.py

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -73,35 +73,38 @@ class MacAddress(BaseModel):
7373
desc: str
7474
optional: bool
7575

76-
class Image(BaseModel):
77-
name: str
78-
github_url: str
79-
project_url: str | None
80-
project_logo: str | None
76+
class Config(BaseModel):
8177
application_setup: str
82-
description: str
83-
version: str
84-
version_timestamp: str
85-
category: str
86-
stable: bool
87-
deprecated: bool | None
88-
stars: int
8978
readonly_supported: bool | None
9079
nonroot_supported: bool | None
9180
privileged: bool | None
9281
networking: str | None
9382
hostname: Hostname | None
9483
mac_address: MacAddress | None
95-
tags: list[Tag]
96-
architectures: list[Architecture]
9784
env_vars: list[EnvVar] | None
9885
volumes: list[Volume] | None
9986
ports: list[Port] | None
10087
custom: list[Custom] | None
10188
security_opt: list[SecurityOpt] | None
10289
devices: list[Device] | None
10390
caps: list[Cap] | None
91+
92+
class Image(BaseModel):
93+
name: str
94+
github_url: str
95+
project_url: str | None
96+
project_logo: str | None
97+
description: str
98+
version: str
99+
version_timestamp: str
100+
category: str
101+
stable: bool
102+
deprecated: bool | None
103+
stars: int
104+
tags: list[Tag]
105+
architectures: list[Architecture]
104106
changelog: list[Changelog] | None
107+
config: Config
105108

106109
class Repository(BaseModel):
107110
linuxserver: list[Image]

root/app/updater.py

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import lsio_github as gh
22
from keyvaluestore import KeyValueStore, set_db_schema
3-
from models import Architecture, Changelog, Tag, EnvVar, Volume, Port
3+
from models import Architecture, Changelog, Tag, EnvVar, Volume, Port, Config
44
from models import Custom, SecurityOpt, Device, Cap, Hostname, MacAddress, Image
55
from models import Repository, ImagesData, ImagesResponse, IMAGES_SCHEMA_VERSION
66

@@ -154,22 +154,8 @@ def get_image(repo):
154154
tags, stable = get_tags(readme_vars)
155155
deprecated = readme_vars.get("project_deprecation_status", None)
156156
version, version_timestamp = gh.get_last_stable_release(repo)
157-
return Image(
158-
name=repo.name.replace("docker-", ""),
159-
github_url=repo.html_url,
160-
stars=repo.stargazers_count,
161-
project_url=readme_vars.get("project_url", None),
162-
project_logo=readme_vars.get("project_logo", None),
157+
config = Config(
163158
application_setup=f"{repo.html_url}?tab=readme-ov-file#application-setup",
164-
description=get_description(readme_vars),
165-
version=version,
166-
version_timestamp=version_timestamp,
167-
changelog=get_changelogs(readme_vars),
168-
category=categories,
169-
stable=stable,
170-
deprecated=deprecated,
171-
tags=tags,
172-
architectures=get_architectures(readme_vars),
173159
readonly_supported=readme_vars.get("readonly_supported", None),
174160
nonroot_supported=readme_vars.get("nonroot_supported", None),
175161
privileged=readme_vars.get("privileged", None),
@@ -184,6 +170,23 @@ def get_image(repo):
184170
devices=get_devices(readme_vars),
185171
caps=get_caps(readme_vars),
186172
)
173+
return Image(
174+
name=repo.name.replace("docker-", ""),
175+
github_url=repo.html_url,
176+
stars=repo.stargazers_count,
177+
project_url=readme_vars.get("project_url", None),
178+
project_logo=readme_vars.get("project_logo", None),
179+
description=get_description(readme_vars),
180+
version=version,
181+
version_timestamp=version_timestamp,
182+
category=categories,
183+
stable=stable,
184+
deprecated=deprecated,
185+
tags=tags,
186+
architectures=get_architectures(readme_vars),
187+
changelog=get_changelogs(readme_vars),
188+
config=config,
189+
)
187190

188191
def update_images():
189192
with KeyValueStore(invalidate_hours=INVALIDATE_HOURS, readonly=False) as kv:

0 commit comments

Comments
 (0)