Merge branch 'master' of code.ungleich.ch:ucloud/ucloud
This commit is contained in:
commit
dee0a29c91
5 changed files with 18 additions and 31 deletions
0
bin/ucloud-run-reinstall
Normal file → Executable file
0
bin/ucloud-run-reinstall
Normal file → Executable file
|
@ -30,9 +30,9 @@ CERT_CERT = changeme
|
||||||
CERT_KEY = changeme
|
CERT_KEY = changeme
|
||||||
|
|
||||||
|
|
||||||
FILE_PREFIX = file/
|
FILE_PREFIX = files
|
||||||
HOST_PREFIx = hosts
|
HOST_PREFIx = hosts
|
||||||
IMAGE_PREFIX = image/
|
IMAGE_PREFIX = images
|
||||||
IMAGE_STORE_PREFIX = imagestore/
|
IMAGE_STORE_PREFIX = imagestore/
|
||||||
|
|
||||||
NETWORK_PREFIX = networks
|
NETWORK_PREFIX = networks
|
||||||
|
@ -57,10 +57,5 @@ FILE_DIR = /var/lib/ucloud/files
|
||||||
FILE_PREFIX = noclue-ahmed
|
FILE_PREFIX = noclue-ahmed
|
||||||
|
|
||||||
[ssh]
|
[ssh]
|
||||||
SSH_USERNAME =
|
SSH_USERNAME =
|
||||||
SSH_PRIVATEKEY =
|
SSH_PRIVATEKEY =
|
||||||
|
|
||||||
# unkown vars:
|
|
||||||
IMAGE_DIR =
|
|
||||||
BASE_DIR =
|
|
||||||
IMAGE_STORE_PREFIX =
|
|
|
@ -18,21 +18,16 @@ if __name__ == "__main__":
|
||||||
arg_parser.add_argument('component_args', nargs='*')
|
arg_parser.add_argument('component_args', nargs='*')
|
||||||
args = arg_parser.parse_args()
|
args = arg_parser.parse_args()
|
||||||
|
|
||||||
|
if args.conf_dir:
|
||||||
|
os.environ['UCLOUD_CONF_DIR'] = args.conf_dir
|
||||||
|
|
||||||
try:
|
try:
|
||||||
name = args.component
|
name = args.component
|
||||||
mod = importlib.import_module("ucloud.{}.main".format(name))
|
mod = importlib.import_module("ucloud.{}.main".format(name))
|
||||||
main = getattr(mod, "main")
|
main = getattr(mod, "main")
|
||||||
|
|
||||||
if args.conf_dir:
|
|
||||||
print("setting conf")
|
|
||||||
os.environ['UCLOUD_CONF_DIR'] = args.conf_dir
|
|
||||||
|
|
||||||
main()
|
main()
|
||||||
|
|
||||||
# except decouple.UndefinedValueError as e:
|
|
||||||
# print(e)
|
|
||||||
# sys.exit(1)
|
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logging.exception(e)
|
logging.exception(e)
|
||||||
print(e)
|
print(e)
|
||||||
|
|
|
@ -28,7 +28,7 @@ class CreateVM(Resource):
|
||||||
validator = schemas.CreateVMSchema(data)
|
validator = schemas.CreateVMSchema(data)
|
||||||
if validator.is_valid():
|
if validator.is_valid():
|
||||||
vm_uuid = uuid4().hex
|
vm_uuid = uuid4().hex
|
||||||
vm_key = join_path(config['api']["VM_PREFIX"), vm_uuid)
|
vm_key = join_path(config['etcd']["VM_PREFIX"], vm_uuid)
|
||||||
specs = {
|
specs = {
|
||||||
"cpu": validator.specs["cpu"],
|
"cpu": validator.specs["cpu"],
|
||||||
"ram": validator.specs["ram"],
|
"ram": validator.specs["ram"],
|
||||||
|
@ -56,7 +56,7 @@ class CreateVM(Resource):
|
||||||
# Create ScheduleVM Request
|
# Create ScheduleVM Request
|
||||||
r = RequestEntry.from_scratch(
|
r = RequestEntry.from_scratch(
|
||||||
type=RequestType.ScheduleVM, uuid=vm_uuid,
|
type=RequestType.ScheduleVM, uuid=vm_uuid,
|
||||||
request_prefix=config['api']["REQUEST_PREFIX")
|
request_prefix=config['etcd']["REQUEST_PREFIX"]
|
||||||
)
|
)
|
||||||
request_pool.put(r)
|
request_pool.put(r)
|
||||||
|
|
||||||
|
@ -71,7 +71,7 @@ class VmStatus(Resource):
|
||||||
validator = schemas.VMStatusSchema(data)
|
validator = schemas.VMStatusSchema(data)
|
||||||
if validator.is_valid():
|
if validator.is_valid():
|
||||||
vm = vm_pool.get(
|
vm = vm_pool.get(
|
||||||
join_path(config['api']["VM_PREFIX"), data["uuid"])
|
join_path(config['etcd']["VM_PREFIX"], data["uuid"])
|
||||||
)
|
)
|
||||||
vm_value = vm.value.copy()
|
vm_value = vm.value.copy()
|
||||||
vm_value["ip"] = []
|
vm_value["ip"] = []
|
||||||
|
@ -79,7 +79,7 @@ class VmStatus(Resource):
|
||||||
network_name, mac, tap = network_mac_and_tap
|
network_name, mac, tap = network_mac_and_tap
|
||||||
network = etcd_client.get(
|
network = etcd_client.get(
|
||||||
join_path(
|
join_path(
|
||||||
config['api']["NETWORK_PREFIX"),
|
config['etcd']["NETWORK_PREFIX"],
|
||||||
data["name"],
|
data["name"],
|
||||||
network_name,
|
network_name,
|
||||||
),
|
),
|
||||||
|
@ -100,7 +100,7 @@ class CreateImage(Resource):
|
||||||
validator = schemas.CreateImageSchema(data)
|
validator = schemas.CreateImageSchema(data)
|
||||||
if validator.is_valid():
|
if validator.is_valid():
|
||||||
file_entry = etcd_client.get(
|
file_entry = etcd_client.get(
|
||||||
join_path(config['api']["FILE_PREFIX"), data["uuid"])
|
join_path(config['etcd']["FILE_PREFIX"], data["uuid"])
|
||||||
)
|
)
|
||||||
file_entry_value = json.loads(file_entry.value)
|
file_entry_value = json.loads(file_entry.value)
|
||||||
|
|
||||||
|
@ -113,7 +113,7 @@ class CreateImage(Resource):
|
||||||
"visibility": "public",
|
"visibility": "public",
|
||||||
}
|
}
|
||||||
etcd_client.put(
|
etcd_client.put(
|
||||||
join_path(config['etcd']["IMAGE_PREFIX"), data["uuid"]),
|
join_path(config['etcd']["IMAGE_PREFIX"], data["uuid"]),
|
||||||
json.dumps(image_entry_json),
|
json.dumps(image_entry_json),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -125,7 +125,7 @@ class ListPublicImages(Resource):
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def get():
|
def get():
|
||||||
images = etcd_client.get_prefix(
|
images = etcd_client.get_prefix(
|
||||||
config['etcd']["IMAGE_PREFIX"), value_in_json=True
|
config['etcd']["IMAGE_PREFIX"], value_in_json=True
|
||||||
)
|
)
|
||||||
r = {
|
r = {
|
||||||
"images": []
|
"images": []
|
||||||
|
@ -148,7 +148,7 @@ class VMAction(Resource):
|
||||||
|
|
||||||
if validator.is_valid():
|
if validator.is_valid():
|
||||||
vm_entry = vm_pool.get(
|
vm_entry = vm_pool.get(
|
||||||
join_path(config['etcd']["VM_PREFIX"), data["uuid"])
|
join_path(config['etcd']["VM_PREFIX"], data["uuid"])
|
||||||
)
|
)
|
||||||
action = data["action"]
|
action = data["action"]
|
||||||
|
|
||||||
|
@ -326,7 +326,7 @@ class GetSSHKeys(Resource):
|
||||||
|
|
||||||
# {user_prefix}/{realm}/{name}/key/{key_name}
|
# {user_prefix}/{realm}/{name}/key/{key_name}
|
||||||
etcd_key = join_path(
|
etcd_key = join_path(
|
||||||
config['etcd']['USER_PREFIX'),
|
config['etcd']['USER_PREFIX'],
|
||||||
data["realm"],
|
data["realm"],
|
||||||
data["name"],
|
data["name"],
|
||||||
"key",
|
"key",
|
||||||
|
@ -430,9 +430,7 @@ class CreateNetwork(Resource):
|
||||||
|
|
||||||
prefix = nb_prefix.available_prefixes.create(
|
prefix = nb_prefix.available_prefixes.create(
|
||||||
data={
|
data={
|
||||||
"prefix_length": config['network'][
|
"prefix_length": config['network']["PREFIX_LENGTH"],
|
||||||
"PREFIX_LENGTH"]
|
|
||||||
),
|
|
||||||
"description": '{}\'s network "{}"'.format(
|
"description": '{}\'s network "{}"'.format(
|
||||||
data["name"], data["network_name"]
|
data["name"], data["network_name"]
|
||||||
),
|
),
|
||||||
|
|
|
@ -25,8 +25,7 @@ config_file = os.path.join(conf_dir, conf_name)
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
|
|
||||||
try:
|
try:
|
||||||
with open(config_file, "r") as conf_fd:
|
config.read(config_file)
|
||||||
conf.read(conf_fd)
|
|
||||||
except FileNotFoundError:
|
except FileNotFoundError:
|
||||||
log.warn("Configuration file not found - using defaults")
|
log.warn("Configuration file not found - using defaults")
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue