Spaces:
Building
Building
Update config_provider.py
Browse files- config_provider.py +8 -9
config_provider.py
CHANGED
@@ -348,7 +348,6 @@ class ConfigProvider:
|
|
348 |
|
349 |
# Create version
|
350 |
version = VersionConfig(
|
351 |
-
id=project.version_id_counter,
|
352 |
no=project.version_id_counter,
|
353 |
created_date=datetime.utcnow().isoformat(),
|
354 |
created_by=username,
|
@@ -364,7 +363,7 @@ class ConfigProvider:
|
|
364 |
# Log activity
|
365 |
cls._add_activity(
|
366 |
config, username, "CREATE_VERSION",
|
367 |
-
"version", version.
|
368 |
f"Project: {project.name}"
|
369 |
)
|
370 |
|
@@ -374,14 +373,14 @@ class ConfigProvider:
|
|
374 |
log_info(
|
375 |
"Version created",
|
376 |
project_id=project.id,
|
377 |
-
|
378 |
user=username
|
379 |
)
|
380 |
|
381 |
return version
|
382 |
|
383 |
@classmethod
|
384 |
-
def publish_version(cls, project_id: int,
|
385 |
"""Publish a version"""
|
386 |
with cls._lock:
|
387 |
config = cls.get()
|
@@ -390,13 +389,13 @@ class ConfigProvider:
|
|
390 |
if not project:
|
391 |
raise ResourceNotFoundError("project", project_id)
|
392 |
|
393 |
-
version = next((v for v in project.versions if v.
|
394 |
if not version:
|
395 |
-
raise ResourceNotFoundError("version",
|
396 |
|
397 |
# Unpublish other versions
|
398 |
for v in project.versions:
|
399 |
-
if v.published and v.
|
400 |
v.published = False
|
401 |
|
402 |
# Publish this version
|
@@ -411,7 +410,7 @@ class ConfigProvider:
|
|
411 |
# Log activity
|
412 |
cls._add_activity(
|
413 |
config, username, "PUBLISH_VERSION",
|
414 |
-
"version", version.
|
415 |
f"Published version {version.no}"
|
416 |
)
|
417 |
|
@@ -421,7 +420,7 @@ class ConfigProvider:
|
|
421 |
log_info(
|
422 |
"Version published",
|
423 |
project_id=project.id,
|
424 |
-
|
425 |
user=username
|
426 |
)
|
427 |
|
|
|
348 |
|
349 |
# Create version
|
350 |
version = VersionConfig(
|
|
|
351 |
no=project.version_id_counter,
|
352 |
created_date=datetime.utcnow().isoformat(),
|
353 |
created_by=username,
|
|
|
363 |
# Log activity
|
364 |
cls._add_activity(
|
365 |
config, username, "CREATE_VERSION",
|
366 |
+
"version", version.no, f"{project.name} v{version.no}",
|
367 |
f"Project: {project.name}"
|
368 |
)
|
369 |
|
|
|
373 |
log_info(
|
374 |
"Version created",
|
375 |
project_id=project.id,
|
376 |
+
version_no=version.no,
|
377 |
user=username
|
378 |
)
|
379 |
|
380 |
return version
|
381 |
|
382 |
@classmethod
|
383 |
+
def publish_version(cls, project_id: int, version_no: int, username: str) -> VersionConfig:
|
384 |
"""Publish a version"""
|
385 |
with cls._lock:
|
386 |
config = cls.get()
|
|
|
389 |
if not project:
|
390 |
raise ResourceNotFoundError("project", project_id)
|
391 |
|
392 |
+
version = next((v for v in project.versions if v.no == version_no), None)
|
393 |
if not version:
|
394 |
+
raise ResourceNotFoundError("version", version_no)
|
395 |
|
396 |
# Unpublish other versions
|
397 |
for v in project.versions:
|
398 |
+
if v.published and v.no != version_no:
|
399 |
v.published = False
|
400 |
|
401 |
# Publish this version
|
|
|
410 |
# Log activity
|
411 |
cls._add_activity(
|
412 |
config, username, "PUBLISH_VERSION",
|
413 |
+
"version", version.no, f"{project.name} v{version.no}",
|
414 |
f"Published version {version.no}"
|
415 |
)
|
416 |
|
|
|
420 |
log_info(
|
421 |
"Version published",
|
422 |
project_id=project.id,
|
423 |
+
version_no=version.no,
|
424 |
user=username
|
425 |
)
|
426 |
|