This change add support for https with SSL protocol and certificate.
The USM client can work with either insecure (disable SSL/TLS
certificate verification) or with SSL certificate. The client is
also modified to support sessions and versions. These changes are
adapted from cgtsclient.
This adds three authorization modes, [token, keystone & local-root].
In token mode, a keystone token and software-url is used for auth.
Eg: $ software \
--software-url "http://192.168.204.1:5497" \
--os-auth-token "${TOKEN}" list
In keystone mode, sourced keystone configs in env is used for auth.
Eg: $ source /etc/platform/openrc; software list
In local-root mode, authorization is by privileged user (root/sudo)
of the controller where software application is running.
Eg: $ sudo software list
Optional arguments specific to https:
-k, --insecure
--cert-file CERT_FILE
--key-file KEY_FILE
--ca-file CA_FILE
Example usage for insecure connection:
software -k list
Story: 2010676
Task: 49666
Test Plan:
PASS: Verify software cli output for http endpoints
PASS: Verify software cli output for https endpoints
Change-Id: I2e2ff115b8d03cddb02e026da84f389918238dab
Signed-off-by: Joseph Vazhappilly <joseph.vazhappillypaily@windriver.com>
27 lines
708 B
Python
27 lines
708 B
Python
#
|
|
# Copyright (c) 2013-2024 Wind River Systems, Inc.
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
#
|
|
|
|
from software_client.common import utils
|
|
from software_client.v1 import release_shell
|
|
|
|
|
|
COMMAND_MODULES = [
|
|
release_shell,
|
|
]
|
|
|
|
|
|
def enhance_parser(parser, subparsers, cmd_mapper):
|
|
'''Take a basic (nonversioned) parser and enhance it with
|
|
commands and options specific for this version of API.
|
|
|
|
:param parser: top level parser :param subparsers: top level
|
|
parser's subparsers collection where subcommands will go
|
|
'''
|
|
for command_module in COMMAND_MODULES:
|
|
utils.define_commands_from_module(subparsers, command_module,
|
|
cmd_mapper)
|