From b1fb0a5ea4fe764e659f5f13a4ebb50f4208ceea Mon Sep 17 00:00:00 2001 From: Stepan Blyschak Date: Fri, 14 Dec 2018 13:23:28 +0000 Subject: [PATCH] [mellanox|ffb] remove unused scripts Signed-off-by: Stepan Blyschak --- platform/mellanox/docker-syncd-mlnx-rpc.mk | 2 +- platform/mellanox/docker-syncd-mlnx.mk | 2 +- platform/mellanox/mlnx-ffb.sh | 28 +--- platform/mellanox/mlnx-issu.mk | 5 - platform/mellanox/mlnx-issu/scripts/issu | 176 --------------------- platform/mellanox/mlnx-issu/setup.py | 14 -- platform/mellanox/rules.mk | 1 - 7 files changed, 6 insertions(+), 222 deletions(-) delete mode 100755 platform/mellanox/mlnx-issu.mk delete mode 100755 platform/mellanox/mlnx-issu/scripts/issu delete mode 100755 platform/mellanox/mlnx-issu/setup.py diff --git a/platform/mellanox/docker-syncd-mlnx-rpc.mk b/platform/mellanox/docker-syncd-mlnx-rpc.mk index b11c5a8c0d51..fc0f6239d548 100644 --- a/platform/mellanox/docker-syncd-mlnx-rpc.mk +++ b/platform/mellanox/docker-syncd-mlnx-rpc.mk @@ -2,7 +2,7 @@ DOCKER_SYNCD_MLNX_RPC = docker-syncd-mlnx-rpc.gz $(DOCKER_SYNCD_MLNX_RPC)_PATH = $(PLATFORM_PATH)/docker-syncd-mlnx-rpc -$(DOCKER_SYNCD_MLNX_RPC)_DEPENDS += $(SYNCD_RPC) $(LIBTHRIFT) $(MLNX_SFPD) $(MLNX_ISSU) +$(DOCKER_SYNCD_MLNX_RPC)_DEPENDS += $(SYNCD_RPC) $(LIBTHRIFT) $(MLNX_SFPD) $(DOCKER_SYNCD_MLNX_RPC)_LOAD_DOCKERS += $(DOCKER_SYNCD_MLNX) SONIC_DOCKER_IMAGES += $(DOCKER_SYNCD_MLNX_RPC) ifeq ($(ENABLE_SYNCD_RPC),y) diff --git a/platform/mellanox/docker-syncd-mlnx.mk b/platform/mellanox/docker-syncd-mlnx.mk index 8a2faccc70ae..da217492d438 100644 --- a/platform/mellanox/docker-syncd-mlnx.mk +++ b/platform/mellanox/docker-syncd-mlnx.mk @@ -2,7 +2,7 @@ DOCKER_SYNCD_MLNX = docker-syncd-mlnx.gz $(DOCKER_SYNCD_MLNX)_PATH = $(PLATFORM_PATH)/docker-syncd-mlnx -$(DOCKER_SYNCD_MLNX)_DEPENDS += $(SYNCD) $(PYTHON_SDK_API) $(MLNX_SFPD) $(MLNX_ISSU) +$(DOCKER_SYNCD_MLNX)_DEPENDS += $(SYNCD) $(PYTHON_SDK_API) $(MLNX_SFPD) $(DOCKER_SYNCD_MLNX)_LOAD_DOCKERS += $(DOCKER_CONFIG_ENGINE) SONIC_DOCKER_IMAGES += $(DOCKER_SYNCD_MLNX) ifneq ($(ENABLE_SYNCD_RPC),y) diff --git a/platform/mellanox/mlnx-ffb.sh b/platform/mellanox/mlnx-ffb.sh index c87ea56f08f5..e3eb87714a7a 100755 --- a/platform/mellanox/mlnx-ffb.sh +++ b/platform/mellanox/mlnx-ffb.sh @@ -49,9 +49,9 @@ check_sdk_upgrade() break; } - ISSU_CHECK_CMD="docker exec -t syncd issu --check ${NEXT_SDK_VERSION}" - - ${ISS_CHECK_CMD} > /dev/null && CHECK_RESULT="${FFB_SUCCESS}" + # TODO: Place a call to SDK check script + # for now assume check succeeded + CHECK_RESULT="${FFB_SUCCESS}" break done @@ -68,6 +68,7 @@ check_ffb() echo "ISSU is not enabled on this HWSKU" return "${FFB_FAILURE}" } + check_sdk_upgrade || { echo "SDK upgrade check failued" return "${FFB_FAILURE}" @@ -75,24 +76,3 @@ check_ffb() return "${FFB_SUCCESS}"; } -# Perform ISSU start -issu_start() -{ - ISSU_START_CMD="docker exec -t syncd issu --start" - ${ISSU_START_CMD} > /dev/null - - EXIT_CODE=$? - - return $EXIT_CODE -} - -# Perform ISSU end -issu_end() -{ - ISSU_END_CMD="docker exec -t syncd issu --end" - ${ISSU_END_CMD} > /dev/null - - EXIT_CODE=$? - - return $EXIT_CODE -} diff --git a/platform/mellanox/mlnx-issu.mk b/platform/mellanox/mlnx-issu.mk deleted file mode 100755 index f0e3b47050ac..000000000000 --- a/platform/mellanox/mlnx-issu.mk +++ /dev/null @@ -1,5 +0,0 @@ -# issu (SONiC MLNX platform ISSU tool) Debian package - -MLNX_ISSU = python-mlnx-issu_1.0-1_all.deb -$(MLNX_ISSU)_SRC_PATH = $(PLATFORM_PATH)/mlnx-issu -SONIC_PYTHON_STDEB_DEBS += $(MLNX_ISSU) diff --git a/platform/mellanox/mlnx-issu/scripts/issu b/platform/mellanox/mlnx-issu/scripts/issu deleted file mode 100755 index 45c0f50436c7..000000000000 --- a/platform/mellanox/mlnx-issu/scripts/issu +++ /dev/null @@ -1,176 +0,0 @@ -#!/usr/bin/env python -''' -This code is for a mlnx platform specific tool, issu. -This tool provides an CLI interface to interact with SDK ISSU module -''' - -from __future__ import print_function - -import sys -import os -import re -import errno -import syslog -import argparse - -from functools import wraps - -from python_sdk_api import sx_api - -# ========================== Constants =============================== -SDK_VERSION_PATTERN = r'(\d+)\.(\d+)\.(.*)' -SYSLOG_IDENTIFIER = "ISSU" - - -# Flag that indicates whether to print logs to stdout -verbose = False - - -# ========================== Syslog wrappers ========================== -def log_info(msg): - syslog.openlog(SYSLOG_IDENTIFIER) - syslog.syslog(syslog.LOG_INFO, msg) - syslog.closelog() - - if verbose: - print(msg) - -def log_warning(msg): - syslog.openlog(SYSLOG_IDENTIFIER) - syslog.syslog(syslog.LOG_WARNING, msg) - syslog.closelog() - - if verbose: - print(msg) - -def log_error(msg): - syslog.openlog(SYSLOG_IDENTIFIER) - syslog.syslog(syslog.LOG_ERR, msg) - syslog.closelog() - - print(msg, file=sys.stderr) - - -# ========================== Global functions ========================= -def with_sdk_handle(func): - """ A decorator for @func that use sx api - that gets a SDK handler, calls func(handler, *args, **kwargs) - and then closes the handler regardless of func failure""" - - @wraps(func) - def wrapped(*args, **kwargs): - log_info("opening sdk") - rc, handle = sx_api.sx_api_open(None) - log_info("sx_api_open handle: 0x%x , rc %d " % ( handle, rc) ) - - if rc != sx_api.SX_STATUS_SUCCESS: - log_error("failed to open api handle. Please check that SDK is running") - sys.exit(errno.EACCES) - - try: - res = func(handle, *args, **kwargs) - finally: - log_info("closing sdk handle") - rc = sx_api.sx_api_close(handle) - - if rc != sx_api.SX_STATUS_SUCCESS: - log_error("failed to close api handle") - - return res - - return wrapped - - -def check_sdk_version_pattern(sdk_version): - """Checker for @sdk_version""" - - if not re.match(SDK_VERSION_PATTERN, sdk_version): - raise argparse.ArgumentTypeError("{} is an invalid SDK version string".format(sdk_version)) - - return sdk_version - - -@with_sdk_handle -def check_issu_upgrade_to_sdk_version(handle, new_sdk): - """This function checks whether ISSU upgrade to @new_sdk version is posible""" - - version = sx_api.new_sx_api_sx_sdk_versions_t_p() - rc = sx_api.sx_api_sx_sdk_version_get(handle, version) - - if rc != sx_api.SX_STATUS_SUCCESS: - log_error("failed to get current SDK version") - sys.exit(errno.EACCES) - - current_sdk = version.sx_sdk - - succeed = True - - log_info('check ISSU upgrade: current SDK: {}, new SDK: {}, check succeed: {}'.format(current_sdk, new_sdk, succeed)) - - return succeed - - -@with_sdk_handle -def issu_start(handle): - """This function calls ISSU start API""" - - log_info("call ISSU start") - rc = sx_api.sx_api_issu_start_set(handle) - - if rc != sx_api.SX_STATUS_SUCCESS: - log_error("failed to execute ISSU start API") - sys.exit(errno.EACCES) - -@with_sdk_handle -def issu_end(handle): - """This function calls ISSU end API""" - - log_info("call ISSU end") - rc = sx_api.sx_api_issu_end_set(handle) - - if rc != sx_api.SX_STATUS_SUCCESS: - log_error("failed to execute ISSU end API") - sys.exit(errno.EACCES) - - -def get_parser(): - """This function creates an argument parser""" - - parser = argparse.ArgumentParser() - parser.add_argument('-c', '--check', nargs=1, action='store', default=None, type=check_sdk_version_pattern, - help='Check if ISSU upgrade is supported to new SDK version') - parser.add_argument('-s', '--start', action='store_true', help='Call ISSU start API') - parser.add_argument('-e', '--end', action='store_true', help='Call ISSU end API') - parser.add_argument('-v', '--verbose', action='store_true', default=False) - - return parser - - -def main(): - - global verbose - - parser = get_parser() - args = parser.parse_args() - - verbose = args.verbose - - if args.check is not None: - new_sdk = args.check[0] - is_supported = check_issu_upgrade_to_sdk_version(new_sdk) - - if verbose: - print('SDK upgrade is{}supported'.format(' ' if is_supported else ' not ')) - - if not is_supported: - sys.exit(1) - elif args.start: - issu_start() - elif args.end: - issu_end() - else: - parser.parse_args(['-h']) - - -if __name__ == '__main__': - main() diff --git a/platform/mellanox/mlnx-issu/setup.py b/platform/mellanox/mlnx-issu/setup.py deleted file mode 100755 index 614c9a0bbe46..000000000000 --- a/platform/mellanox/mlnx-issu/setup.py +++ /dev/null @@ -1,14 +0,0 @@ -from setuptools import setup - -setup( - name='mlnx-issu', - version='1.0', - description='MLNX ISSU tool for SONiC on mellanox platform', - author='SONiC Community', - url='https://github.com/Azure/sonic-buildimage/', - maintainer='Stepan Blyschak', - maintainer_email='stepanb@mellanox.com', - scripts=[ - 'scripts/issu', - ] -) diff --git a/platform/mellanox/rules.mk b/platform/mellanox/rules.mk index 28414b7f9d9f..e1a598225737 100644 --- a/platform/mellanox/rules.mk +++ b/platform/mellanox/rules.mk @@ -12,7 +12,6 @@ include $(PLATFORM_PATH)/libsaithrift-dev.mk include $(PLATFORM_PATH)/docker-ptf-mlnx.mk include $(PLATFORM_PATH)/mlnx-sfpd.mk include $(PLATFORM_PATH)/mlnx-ffb.mk -include $(PLATFORM_PATH)/mlnx-issu.mk SONIC_ALL += $(SONIC_ONE_IMAGE) \ $(DOCKER_FPM)