X-Git-Url: https://code.grnet.gr/git/ganeti-local/blobdiff_plain/2d54e29cd20fa61ff4337f5332a77075cb9fb7b5..90ed09b092aab24babb633072f0ff091105f9655:/scripts/gnt-backup diff --git a/scripts/gnt-backup b/scripts/gnt-backup index 6593aa5..b7e49d1 100755 --- a/scripts/gnt-backup +++ b/scripts/gnt-backup @@ -31,8 +31,6 @@ import sys from ganeti.cli import * from ganeti import opcodes from ganeti import constants -from ganeti import errors -from ganeti import utils _VALUE_TRUE = "true" @@ -73,12 +71,16 @@ def ExportInstance(opts, args): @return: the desired exit code """ + ignore_remove_failures = opts.ignore_remove_failures + op = opcodes.OpExportInstance(instance_name=args[0], target_node=opts.node, shutdown=opts.shutdown, - shutdown_timeout=opts.shutdown_timeout) + shutdown_timeout=opts.shutdown_timeout, + remove_instance=opts.remove_instance, + ignore_remove_failures=ignore_remove_failures) - fin_resu, dlist = SubmitOpCode(op) + fin_resu, dlist = SubmitOpCode(op, opts=opts) if not isinstance(dlist, list): ToStderr("Cannot parse execution results") return 1 @@ -99,6 +101,7 @@ def ExportInstance(opts, args): rcode = 1 return rcode + def ImportInstance(opts, args): """Add an instance to the cluster. @@ -121,31 +124,34 @@ def RemoveExport(opts, args): """ op = opcodes.OpRemoveExport(instance_name=args[0]) - SubmitOpCode(op) + SubmitOpCode(op, opts=opts) return 0 # this is defined separately due to readability only import_opts = [ - NODE_PLACEMENT_OPT, BACKEND_OPT, - DISK_TEMPLATE_OPT, DISK_OPT, - OS_SIZE_OPT, + DISK_TEMPLATE_OPT, + FILESTORE_DIR_OPT, + FILESTORE_DRIVER_OPT, + HYPERVISOR_OPT, + IALLOCATOR_OPT, + IDENTIFY_DEFAULTS_OPT, NET_OPT, + NODE_PLACEMENT_OPT, + NOIPCHECK_OPT, + NONAMECHECK_OPT, NONICS_OPT, NWSYNC_OPT, + OSPARAMS_OPT, + OS_SIZE_OPT, SRC_DIR_OPT, SRC_NODE_OPT, - NOIPCHECK_OPT, - NONAMECHECK_OPT, - IALLOCATOR_OPT, - FILESTORE_DIR_OPT, - FILESTORE_DRIVER_OPT, - HYPERVISOR_OPT, SUBMIT_OPT, ] + commands = { 'list': ( PrintExportList, ARGS_NONE, @@ -153,7 +159,8 @@ commands = { "", "Lists instance exports available in the ganeti cluster"), 'export': ( ExportInstance, ARGS_ONE_INSTANCE, - [FORCE_OPT, SINGLE_NODE_OPT, NOSHUTDOWN_OPT, SHUTDOWN_TIMEOUT_OPT], + [FORCE_OPT, SINGLE_NODE_OPT, NOSHUTDOWN_OPT, SHUTDOWN_TIMEOUT_OPT, + REMOVE_INSTANCE_OPT, IGNORE_REMOVE_FAILURES_OPT], "-n [opts...] ", "Exports an instance to an image"), 'import': (