Make uncloud host running
This commit is contained in:
parent
9662e02eb7
commit
e775570884
2 changed files with 19 additions and 5 deletions
|
@ -590,11 +590,10 @@ def main(debug=False, port=None):
|
||||||
# json.dumps(data),
|
# json.dumps(data),
|
||||||
# )
|
# )
|
||||||
|
|
||||||
if port:
|
|
||||||
app_port = port
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
app.run(host="::", debug=False)
|
app.run(host="::",
|
||||||
|
port=port,
|
||||||
|
debug=debug)
|
||||||
except OSError as e:
|
except OSError as e:
|
||||||
raise UncloudException("Failed to start Flask: {}".format(e))
|
raise UncloudException("Failed to start Flask: {}".format(e))
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import argparse
|
import argparse
|
||||||
import multiprocessing as mp
|
import multiprocessing as mp
|
||||||
import time
|
import time
|
||||||
|
from uuid import uuid4
|
||||||
|
|
||||||
from uncloud.common.request import RequestEntry, RequestType
|
from uncloud.common.request import RequestEntry, RequestType
|
||||||
from uncloud.shared import shared
|
from uncloud.shared import shared
|
||||||
|
@ -42,7 +43,21 @@ def maintenance(host):
|
||||||
def main(hostname):
|
def main(hostname):
|
||||||
host_pool = shared.host_pool
|
host_pool = shared.host_pool
|
||||||
host = next(filter(lambda h: h.hostname == hostname, host_pool.hosts), None)
|
host = next(filter(lambda h: h.hostname == hostname, host_pool.hosts), None)
|
||||||
assert host is not None, "No such host with name = {}".format(hostname)
|
|
||||||
|
# Does not yet exist, create it
|
||||||
|
if not host:
|
||||||
|
host_key = join_path(
|
||||||
|
settings["etcd"]["host_prefix"], uuid4().hex
|
||||||
|
)
|
||||||
|
host_entry = {
|
||||||
|
"specs": "",
|
||||||
|
"hostname": hostname,
|
||||||
|
"status": "DEAD",
|
||||||
|
"last_heartbeat": "",
|
||||||
|
}
|
||||||
|
shared.etcd_client.put(
|
||||||
|
host_key, host_entry, value_in_json=True
|
||||||
|
)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
heartbeat_updating_process = mp.Process(target=update_heartbeat, args=(hostname,))
|
heartbeat_updating_process = mp.Process(target=update_heartbeat, args=(hostname,))
|
||||||
|
|
Loading…
Reference in a new issue