mimir/tools/deploy

60 lines
1.3 KiB
Text
Raw Permalink Normal View History

2024-10-13 15:53:50 +02:00
#!/usr/bin/env python3
import sys as _sys
import os as _os
import argparse as _argparse
def main():
## args
argument_parser = _argparse.ArgumentParser()
argument_parser.add_argument(
type = str,
dest = "target_system",
metavar = "<target-system>",
help = "either 'localhost' or SSH handle of the target system",
)
argument_parser.add_argument(
"-t",
"--target-directory",
type = str,
dest = "target_directory",
default = "/opt/mimir",
metavar = "<target-directory>",
help = "directory on the target system, where the files shall be put; default: /opt/mimir",
)
argument_parser.add_argument(
"-b",
"--build-directory",
type = str,
dest = "build_directory",
default = "build",
metavar = "<build-directory>",
help = "directory to where the build was put",
)
args = argument_parser.parse_args()
## exec
if (not _os.path.exists(args.build_directory)):
_sys.stderr.write("-- build directory not found; probably you need to run /tools/build\n")
_sys.exit(1)
else:
_os.system(
" ".join([
"rsync",
"--recursive",
"--update",
"--verbose",
"--exclude='conf.json'",
("%s/" % args.build_directory),
(
("%s" % args.target_directory)
if (args.target_system == "localhost") else
("%s:%s" % (args.target_system, args.target_directory, ))
),
])
)
main()