pass velero cli executable to crashd

This commit fixes the issue when velero CLI is not in `PATH` or compiled
to other file names.

Signed-off-by: Daniel Jiang <jiangd@vmware.com>
This commit is contained in:
Daniel Jiang
2021-09-02 20:02:33 +08:00
parent edeec848d3
commit 9d76ea835c
2 changed files with 15 additions and 7 deletions
+8 -7
View File
@@ -1,26 +1,27 @@
def capture_backup_logs(namespace):
def capture_backup_logs(cmd, namespace):
if args.backup:
log("Collecting log for backup: {}".format(args.backup))
backupLogsCmd = "velero --namespace={} backup logs {}".format(namespace, args.backup)
backupLogsCmd = "{} --namespace={} backup logs {}".format(cmd, namespace, args.backup)
capture_local(cmd=backupLogsCmd, file_name="backup_{}.log".format(args.backup))
def capture_restore_logs(namespace):
def capture_restore_logs(cmd, namespace):
if args.restore:
log("Collecting log for restore: {}".format(args.restore))
restoreLogsCmd = "velero --namespace={} restore logs {}".format(namespace, args.restore)
restoreLogsCmd = "{} --namespace={} restore logs {}".format(cmd, namespace, args.restore)
capture_local(cmd=restoreLogsCmd, file_name="restore_{}.log".format(args.restore))
ns = args.namespace if args.namespace else "velero"
output = args.output if args.output else "bundle.tar.gz"
cmd = args.cmd if args.cmd else "velero"
# Working dir for writing during script execution
crshd = crashd_config(workdir="./velero-bundle")
set_defaults(kube_config(path=args.kubeconfig, cluster_context=args.kubecontext))
log("Collecting velero resources in namespace: {}". format(ns))
kube_capture(what="objects", namespaces=[ns], groups=['velero.io'])
capture_local(cmd="velero version -n {}".format(ns), file_name="version.txt")
capture_local(cmd="{} version -n {}".format(cmd, ns), file_name="version.txt")
log("Collecting velero deployment logs in namespace: {}". format(ns))
kube_capture(what="logs", namespaces=[ns])
capture_backup_logs(ns)
capture_restore_logs(ns)
capture_backup_logs(cmd, ns)
capture_restore_logs(cmd, ns)
archive(output_file=output, source_paths=[crshd.workdir])
log("Generated debug information bundle: {}".format(output))