Compare commits

...

3 Commits

Author SHA1 Message Date
f1df1cfe93 Bump version to 0.9.55 2022-10-04 13:21:40 -04:00
5942aa50fc Avoid raise/handle deadlocks
Can cause log flooding in some edge cases and isn't really needed any
longer. Use a proper conditional followed by an actual error handler.
2022-10-03 14:04:12 -04:00
096bcdfd75 Try a literal eval first
This is a breakage between the older version of Celery (Deb10) and
newer. The hard removal broke Deb10 instances.

So try that first, and on failure, assume newer Celery format.
2022-09-06 10:34:50 -04:00
8 changed files with 44 additions and 17 deletions

View File

@ -1 +1 @@
0.9.54
0.9.55

View File

@ -1,5 +1,10 @@
## PVC Changelog
###### [v0.9.55](https://github.com/parallelvirtualcluster/pvc/releases/tag/v0.9.55)
* Fixes a problem with the literal eval handler in the provisioner (again)
* Fixes a potential log deadlock in Zookeeper-lost situations when doing keepalives
###### [v0.9.54](https://github.com/parallelvirtualcluster/pvc/releases/tag/v0.9.54)
[CLI Client] Fixes a bad variable reference from the previous change

View File

@ -27,7 +27,7 @@ from ssl import SSLContext, TLSVersion
from distutils.util import strtobool as dustrtobool
# Daemon version
version = "0.9.54"
version = "0.9.55"
# API version
API_VERSION = 1.0

View File

@ -26,6 +26,7 @@ from requests_toolbelt.multipart.encoder import (
import pvc.cli_lib.ansiprint as ansiprint
from pvc.cli_lib.common import UploadProgressBar, call_api
from ast import literal_eval
#
@ -792,9 +793,15 @@ def task_status(config, task_id=None, is_watching=False):
task["type"] = task_type
task["worker"] = task_host
task["id"] = task_job.get("id")
try:
task_args = literal_eval(task_job.get("args"))
except Exception:
task_args = task_job.get("args")
task["vm_name"] = task_args[0]
task["vm_profile"] = task_args[1]
try:
task_kwargs = literal_eval(task_job.get("kwargs"))
except Exception:
task_kwargs = task_job.get("kwargs")
task["vm_define"] = str(bool(task_kwargs["define_vm"]))
task["vm_start"] = str(bool(task_kwargs["start_vm"]))

View File

@ -2,7 +2,7 @@ from setuptools import setup
setup(
name="pvc",
version="0.9.54",
version="0.9.55",
packages=["pvc", "pvc.cli_lib"],
install_requires=[
"Click",

7
debian/changelog vendored
View File

@ -1,3 +1,10 @@
pvc (0.9.55-0) unstable; urgency=high
* Fixes a problem with the literal eval handler in the provisioner (again)
* Fixes a potential log deadlock in Zookeeper-lost situations when doing keepalives
-- Joshua M. Boniface <joshua@boniface.me> Tue, 04 Oct 2022 13:21:40 -0400
pvc (0.9.54-0) unstable; urgency=high
[CLI Client] Fixes a bad variable reference from the previous change

View File

@ -48,7 +48,7 @@ import re
import json
# Daemon version
version = "0.9.54"
version = "0.9.55"
##########################################################

View File

@ -661,8 +661,6 @@ def node_keepalive(logger, config, zkhandler, this_node):
zkhandler.read("base.config.migration_target_selector")
!= config["migration_target_selector"]
):
raise
except Exception:
zkhandler.write(
[
(
@ -671,6 +669,12 @@ def node_keepalive(logger, config, zkhandler, this_node):
)
]
)
except Exception:
logger.out(
"Failed to set migration target selector in Zookeeper",
state="e",
prefix="main-thread",
)
# Set the upstream IP in Zookeeper for clients to read
if config["enable_networking"]:
@ -680,11 +684,15 @@ def node_keepalive(logger, config, zkhandler, this_node):
zkhandler.read("base.config.upstream_ip")
!= config["upstream_floating_ip"]
):
raise
except Exception:
zkhandler.write(
[("base.config.upstream_ip", config["upstream_floating_ip"])]
)
except Exception:
logger.out(
"Failed to set upstream floating IP in Zookeeper",
state="e",
prefix="main-thread",
)
# Get past state and update if needed
if debug: