update agent
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from app.config import settings
|
||||
from app.models.schemas import AppManifest, DebComponent, DockerComponent
|
||||
from app.models.schemas import AptComponent, AppManifest, DebComponent, DockerComponent
|
||||
from app.utils.validators import validate_docker_registry, validate_url_host
|
||||
|
||||
|
||||
@@ -15,6 +15,14 @@ class ManifestValidator:
|
||||
component = DebComponent.model_validate(raw_component).model_dump(by_alias=True)
|
||||
validate_url_host(component["downloadUrl"], settings.allowed_download_hosts)
|
||||
components.append(component)
|
||||
elif component_type == "apt":
|
||||
component = AptComponent.model_validate(raw_component).model_dump(by_alias=True)
|
||||
allowed_packages = set(settings.allowed_apt_packages)
|
||||
if component["packageName"] not in allowed_packages:
|
||||
raise ValueError(
|
||||
f"APT package is not allowed: {component['packageName']}"
|
||||
)
|
||||
components.append(component)
|
||||
elif component_type == "docker":
|
||||
if not settings.allow_docker:
|
||||
raise ValueError("Docker components are not enabled on this Agent")
|
||||
|
||||
Reference in New Issue
Block a user