diff options
author | John Estabrook <jestabro@vyos.io> | 2022-12-13 12:09:03 -0600 |
---|---|---|
committer | John Estabrook <jestabro@vyos.io> | 2022-12-13 13:49:04 -0600 |
commit | 046bb9ccd56ac5e97c638bb4a9ca856d3d36026a (patch) | |
tree | 6a5a0761c6354e63cb778251b4a934ad09e93cd9 /src | |
parent | 0c5416e9e629a6f9028c85fe5313f43d3484860a (diff) | |
download | vyos-1x-046bb9ccd56ac5e97c638bb4a9ca856d3d36026a.tar.gz vyos-1x-046bb9ccd56ac5e97c638bb4a9ca856d3d36026a.zip |
validators: T4798: replace python file-exists validator with file-path
Diffstat (limited to 'src')
-rwxr-xr-x | src/validators/file-exists | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/src/validators/file-exists b/src/validators/file-exists deleted file mode 100755 index 5cef6b199..000000000 --- a/src/validators/file-exists +++ /dev/null @@ -1,61 +0,0 @@ -#!/usr/bin/env python3 -# -# Copyright (C) 2019 VyOS maintainers and contributors -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 or later as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. -# -# Description: -# Check if a given file exists on the system. Used for files that -# are referenced from the CLI and need to be preserved during an image upgrade. -# Warn the user if these aren't under /config - -import os -import sys -import argparse - - -def exit(strict, message): - if strict: - sys.exit(f'ERROR: {message}') - print(f'WARNING: {message}', file=sys.stderr) - sys.exit() - - -if __name__ == '__main__': - parser = argparse.ArgumentParser() - parser.add_argument("-d", "--directory", type=str, help="File must be present in this directory.") - parser.add_argument("-e", "--error", action="store_true", help="Tread warnings as errors - change exit code to '1'") - parser.add_argument("file", type=str, help="Path of file to validate") - - args = parser.parse_args() - - # - # Always check if the given file exists - # - if not os.path.exists(args.file): - exit(args.error, f"File '{args.file}' not found") - - # - # Optional check if the file is under a certain directory path - # - if args.directory: - # remove directory path from path to verify - rel_filename = args.file.replace(args.directory, '').lstrip('/') - - if not os.path.exists(args.directory + '/' + rel_filename): - exit(args.error, - f"'{args.file}' lies outside of '{args.directory}' directory.\n" - "It will not get preserved during image upgrade!" - ) - - sys.exit() |