From adc6872c65a4b266a67ab20770c29916ca79cb04 Mon Sep 17 00:00:00 2001 From: iosc Date: Mon, 22 Mar 2021 15:28:31 +0100 Subject: USERDOCAP-636 - all books renamed into enea edge Change-Id: I3ce4380c19653ef14792960ad968664b70f3c2bf --- .../doc/automation_framework_test_harness.xml | 2800 ++++++++++++++++++++ .../doc/book.xml | 33 + .../doc/components.xml | 137 + .../doc/getting_started.xml | 239 ++ .../doc/images/ChainedVNFsService_setup.png | Bin 0 -> 83776 bytes .../doc/images/autofw_testh_overview.png | Bin 0 -> 60150 bytes .../doc/images/environment_basicsetup.png | Bin 0 -> 79325 bytes .../doc/overview.xml | 188 ++ .../doc/troubleshooting_guide.xml | 43 + doc/book-enea-edge-auto-fw-th-user-guide/swcomp.mk | 10 + 10 files changed, 3450 insertions(+) create mode 100644 doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml create mode 100644 doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml create mode 100644 doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml create mode 100644 doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml create mode 100755 doc/book-enea-edge-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png create mode 100755 doc/book-enea-edge-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png create mode 100755 doc/book-enea-edge-auto-fw-th-user-guide/doc/images/environment_basicsetup.png create mode 100644 doc/book-enea-edge-auto-fw-th-user-guide/doc/overview.xml create mode 100644 doc/book-enea-edge-auto-fw-th-user-guide/doc/troubleshooting_guide.xml create mode 100755 doc/book-enea-edge-auto-fw-th-user-guide/swcomp.mk (limited to 'doc/book-enea-edge-auto-fw-th-user-guide') diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml new file mode 100644 index 0000000..a569d59 --- /dev/null +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml @@ -0,0 +1,2800 @@ + + + Automation Framework and Test Harness + +
+ Automation Framework + + All Automation Framework sources are under the + <AF-TH-install-dir>/automation_framework + directory. + + The /device folder contains Python scripts for + adding uCPE device(s), receiving uCPE events' reports, removing a uCPE + device, waiting for a uCPE device to connect to the Enea Edge Management, as well + as scripts for adding and removing an offline configuration store. This + folder also contains scripts for uploading and removing an NFVA image into + the Enea Edge Management, and for installing and activating a NFVA image on a uCPE + Device. + + The /customScripts folder contains Python scripts + for uploading custom scripts onto the Enea Edge Management and uCPE device(s), for + removing custom scripts from the Enea Edge Management and uCPE device(s). + + The /network folder contains Python scripts for + binding or unbinding a network interface to and from a uCPE device (DPDK + or SR-IOV), creating or deleting an OVS network bridge, or dumping network + interface information about the available interfaces. Three of the scripts + mentioned here (binding, creating, deleting) are also applicable for an + Offline Configuration Store. + + + Commands within the network folder that include the option + -o allow the user to perform the action + in an offline configuration store alternative available for use at a + later setup time. Commands that include the -n option refer to a uCPE device, with the + operation being performed on uCPE device. All options contain either + -n, -o + or both. One of them must always be provided, if both are provided, -o + has priority, and -n is thus ignored. + + + The /unittestSuite folder contains JSON files for + complex scenarios (multiple operations), as well as Python unit-test class + and loader scripts for generating specific test cases for the available + Python scripts. The generated test cases are injected into the Python + unit-test suite class to be run using the Python unit-test + framework. + + The /unittestSuite/config folder contains + configuration files in JSON format that describe the list of test cases + for a particular Python script. Each defined test case is a dictionary + that must contain the test case name and arguments to be passed to the + Python script for running the test case. + + The /unittestSuite/vnf_config directory contains + symlinks for the Fortigate license file and for the + /vnf_config/fortigateImage folder. + + The /vnf folder contains Python scripts for + onboarding and offboarding a VNF image, instantiating a VNF, controlling a + VNF instance or destroying an existing one. + + The eneaUcpeMgr.py file acts as a library for + the (Python) Automation Framework scripts. It contains common functions + and unit-test configuration options. + +
+ Python Unit-Test Suite + + The Python unit-test class defined in the + unittestSuite.py script provides a way to automate + the execution of specific test cases for each supported Python + script. + + This class requires a test suite configuration JSON file that + contains a dictionary list of the Python scripts to be processed. Each + dictionary must contain the path of the Python script to be loaded and + the path to the file describing the test cases to be performed against + the designated script. + + Steps for running the Python unit-test suite on the Enea Edge Management + are provided below. + +
+ Script Options + + $ python unittestSuite.py -h +Usage: unittestSuite.py [options] + +Run selected unit-test suite against Enea Edge Management. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -n DEVICENAME, --deviceName=DEVICENAME + Name of vCPE device (Virtual Infrastructure Manager) + -s SUITEFILE, --suite=SUITEFILE + Test suite configuration file in JSON format + -d DESCRIPTION, --description=DESCRIPTION + Test suite description + -o OFFLINE, --offline=OFFLINE + Offline Configuration(ZTP) + + Mandatory options: + -H/--host, -n/--deviceName, -s/--suiteFile, -d/--description +
+ +
+ Configuring Unit-Test JSON File + + The Unit-Test suite JSON configuration file contains a list of + dictionaries. Each dictionary indicates the path of the Python module + to load and the test case's configuration file to be executed against + the loaded module. + + Below is a sample unit-test configuration file, describing the + Fortigate deployment scenario + fortigateDeploy.json, found in + <AF-TH-install-dir>/automation_framework/unittestSuite: + + [ + { + "config": "config/waitDeviceUp.json", + "module": "../device/waitDeviceUp.py" + }, + { + "config": "config/bindNetworkInterface.json", + "module": "../network/bindNetworkInterface.py" + }, + { + "config": "config/newNetworkBridge.json", + "module": "../network/newNetworkBridge.py" + }, + { + "config": "config/onboardVNFRaw.json", + "module": "../vnf/onboardVNFRaw.py" + }, + { + "config": "config/instantiateVNFI.json", + "module": "../vnf/instantiateVNFI.py" + }, + { + "config": "config/controlVNFI.json", + "module": "../vnf/controlVNFI.py" + } +] + + Below is a sample unit-test configuration file, describing the + Fortigate cleanup scenario + fortigateCleanup.json: + + [ + { + "config": "config/destroyVNFI.json", + "module": "../vnf/destroyVNFI.py" + }, + { + "config": "config/delNetworkBridge.json", + "module": "../network/delNetworkBridge.py" + }, + { + "config": "config/unbindNetworkInterface.json", + "module": "../network/unbindNetworkInterface.py" + }, + { + "config": "config/offboardVNF.json", + "module": "../vnf/offboardVNF.py" + } +] + + The config key contains the path to the test + case's configuration file. + + The module key contains the path to the + Python script to be executed. +
+ +
+ Unit-Test Configuration Options + + Unit-test behavior can be tweaked through setting any of the + following options. This is done through the + eneaUcpeMgr.py file: + + # Defaults for the framework +username = "admin" +password = "admin" +host = None +deviceName = None +directory = "." +ftpUsername = "ftp" +ftpPassword = "ftp" +ftpPort = "2021" + +# Stop the test run on the first error or failure +failfast = True + +# Logging levels ordered by the highest severity: +# CRITICAL 50 +# ERROR 40 +# WARNING 30 +# INFO 20 +# DEBUG 10 +# NOTSET 0 +fileLoggingLevel = logging.DEBUG +consoleLoggingLevel = logging.INFO + + + + eneaUcpeMgr.py Options + + + + + + + + + + + Option + + Description + + + + + + username + + The user authentication used to log into the + Enea Edge Management. This can be overwritten by setting the Python + unit-test suite command line option + -u. + + + + password + + The password used to log into the Enea Edge Management. This + can be overwritten by setting the Python unit-test suite + command line option -p. + + + + host + + The IP address of the Enea Edge Management host. This can be + overwritten by setting the Python unit-test suite command line + option -H. + + + + devicename + + The name of the vCPE agent against which tests will be + performed. This can be overwritten by setting the Python + unit-test suite command line option + -n. + + + + ftpUsername + + The user authentication used for the FTP connection + when onboarding a VNF image. This can be overwritten by + setting the Python script command line option + -f. + + + + ftpPassword + + The password used for the FTP connection when + onboarding a VNF image. This can be overwritten by setting the + Python script command line option + -w. + + + + ftpPort + + The port used for the FTP connection when onboarding a + VNF image. This can be overwritten by setting the Python + script command line option -P. + + + + failfast + + Describes the unit-test execution behavior on the first + error or failure encountered. + + + + fileLoggingLevel + + Sets the file logging level. + + + + consoleLoggingLevel + + Sets the console logging level. + + + +
+
+ +
+ Python Unit-Test Suite Logging + + Logging messages are displayed in the console and also saved to + the specified log file. They are shown depending on the chosen logging + level. + + Logging messages are ranked by their severity + level:CRITICAL 50 +ERROR 40 +WARNING 30 +INFO 20 +DEBUG 10 +NOTSET 0 + + + Logging messages less severe than the set logging level will + be ignored. + + + Setting the console logging level to INFO is done through the + consoleLoggingLevel option:consoleLoggingLevel = logging.INFOSetting + the file logging level to DEBUG is done through the + fileLoggingLevel option:fileLoggingLevel = logging.DEBUG +
+ +
+ Running Python Unit-Test Suite + + + Please update all JSON configuration files to use the name of + your vCPE agent device. In the following chapters, intelc3850-2 is + used as an example. + + + Below you'll find sample unit-test command line options for + running the Fortigate deployment + scenario: + + $ python unittestSuite.py -u admin -p admin -H localhost -n intelc3850-2 -s +fortigateDeploy.json -d "Fortigate deployment scenario" + + Setting the console logging level to DEBUG: + + consoleLoggingLevel = logging.DEBUG + Expected Output: + + 2020-04-15 07:58:40,668 - DEBUG: Started logging + +Running Fortigate deployment scenario... + +test 001: Wait VCPE Agent device be up (__main__.UnittestSuite) ... +2020-04-15 07:58:40,681 - INFO: Wait uCPE device +2020-04-15 07:58:40,722 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:58:40,723 - DEBUG: Session token is: 280028c0-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:58:40,746 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:58:40,747 - DEBUG: Wait for device 'intelc3850-2' to connect +2020-04-15 07:58:41,769 - DEBUG: HACK: sleep 30s more +2020-04-15 07:59:11,791 - DEBUG: HACK: continue +2020-04-15 07:59:11,792 - INFO: Status: Connected +2020-04-15 07:59:11,793 - INFO: Done +2020-04-15 07:59:11,827 - DEBUG: Logging out and exiting... +ok +test 002: Bind lan NIC to DPDK (__main__.UnittestSuite) ... +2020-04-15 07:59:11,832 - INFO: Bind NIC +2020-04-15 07:59:11,868 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:11,870 - DEBUG: Session token is: 3a90a960-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:11,897 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:11,898 - DEBUG: Bind NIC 'eno6' to dpdk +2020-04-15 07:59:12,952 - INFO: Done +2020-04-15 07:59:12,983 - DEBUG: Logging out and exiting... +ok +test 003: Bind wan NIC to DPDK (__main__.UnittestSuite) ... +2020-04-15 07:59:12,986 - INFO: Bind NIC +2020-04-15 07:59:13,023 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:13,025 - DEBUG: Session token is: 3b410da0-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:13,048 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:13,050 - DEBUG: Bind NIC 'eno8' to dpdk +2020-04-15 07:59:14,365 - INFO: Done +2020-04-15 07:59:14,392 - DEBUG: Logging out and exiting... +ok +test 004: Creating network bridge LAN (__main__.UnittestSuite) ... +2020-04-15 07:59:14,395 - INFO: New OVS network bridge +2020-04-15 07:59:14,428 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:14,429 - DEBUG: Session token is: 3c174961-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:14,452 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:14,453 - DEBUG: Create new OVS network bridge 'lan_br' +2020-04-15 07:59:14,454 - DEBUG: Attaching interface 'eno6' to bridge 'lan_br' +2020-04-15 07:59:21,751 - INFO: Done +2020-04-15 07:59:21,779 - DEBUG: Logging out and exiting... +ok +test 005: Creating network bridge WAN (__main__.UnittestSuite) ... +2020-04-15 07:59:21,782 - INFO: New OVS network bridge +2020-04-15 07:59:21,818 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:21,819 - DEBUG: Session token is: 407ec231-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:21,845 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:21,846 - DEBUG: Create new OVS network bridge 'wan_br' +2020-04-15 07:59:21,847 - DEBUG: Attaching interface 'eno8' to bridge 'wan_br' +2020-04-15 07:59:22,813 - INFO: Done +2020-04-15 07:59:22,845 - DEBUG: Logging out and exiting... +ok +test 006: Onboarding Fortigate VNF (wizard API) (__main__.UnittestSuite) ... +2020-04-15 07:59:22,849 - INFO: Onboard wizard +2020-04-15 07:59:22,885 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:22,886 - DEBUG: Session token is: 4121b8f1-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:22,890 - DEBUG: FTP file '../../vnf_image/fortios.qcow2' on host \ +'localhost', port '2021' +2020-04-15 07:59:23,127 - DEBUG: Onboard VNF raw: fortios.qcow2 +2020-04-15 07:59:27,107 - INFO: Done +2020-04-15 07:59:27,140 - DEBUG: Logging out and exiting... +ok +test 007: Instantiate Fortigate VNF (__main__.UnittestSuite) ... +2020-04-15 07:59:27,144 - INFO: Instantiate VNF +2020-04-15 07:59:27,182 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:27,184 - DEBUG: Session token is: 43b16480-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:27,207 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:27,281 - DEBUG: Found VNF descriptor with name 'fortigateImage' +2020-04-15 07:59:27,286 - DEBUG: Reading file content as text: \ +vnf_config/fortigateImage/fortigateFW.conf +2020-04-15 07:59:27,359 - DEBUG: Encrypt file content: \ +vnf_config/fortigateImage/fortigateFW.conf +2020-04-15 07:59:27,364 - DEBUG: Reading file content as text: \ +vnf_config/fortigateImage/fortigateLicense.lic +2020-04-15 07:59:27,407 - DEBUG: Encrypt file content: \ +vnf_config/fortigateImage/fortigateLicense.lic +2020-04-15 07:59:27,409 - DEBUG: Instantiate fortigateImage VNF on 'intelc3850-2' +2020-04-15 07:59:32,720 - INFO: Done +2020-04-15 07:59:32,747 - DEBUG: Logging out and exiting... +ok +test 008: Pause Fortigate VNF instance (__main__.UnittestSuite) ... +2020-04-15 07:59:32,840 - INFO: Control VNF +2020-04-15 07:59:32,877 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:32,880 - DEBUG: Session token is: 47166170-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:32,904 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:32,954 - DEBUG: Found VNF instance with name 'fortigateFWInstance' +2020-04-15 07:59:32,955 - DEBUG: Control VNF instance 'intelc3850-2', command: pause +2020-04-15 07:59:33,114 - INFO: Done +2020-04-15 07:59:33,138 - DEBUG: Logging out and exiting... +ok +test 009: Resume Fortigate VNF instance (__main__.UnittestSuite) ... +2020-04-15 07:59:33,142 - INFO: Control VNF +2020-04-15 07:59:33,174 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:33,177 - DEBUG: Session token is: 4743b300-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:33,209 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:33,257 - DEBUG: Found VNF instance with name 'fortigateFWInstance' +2020-04-15 07:59:33,258 - DEBUG: Control VNF instance 'intelc3850-2', command: resume +2020-04-15 07:59:33,365 - INFO: Done +2020-04-15 07:59:33,389 - DEBUG: Logging out and exiting... +ok +test 010: Stop Fortigate VNF instance (__main__.UnittestSuite) ... +2020-04-15 07:59:33,393 - INFO: Control VNF +2020-04-15 07:59:33,436 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:33,438 - DEBUG: Session token is: 476aea10-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:33,467 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:33,511 - DEBUG: Found VNF instance with name 'fortigateFWInstance' +2020-04-15 07:59:33,513 - DEBUG: Control VNF instance 'intelc3850-2', command: stop +2020-04-15 07:59:33,865 - INFO: Done +2020-04-15 07:59:33,891 - DEBUG: Logging out and exiting... +ok +test 011: Start Fortigate VNF instance (__main__.UnittestSuite) ... +2020-04-15 07:59:33,895 - INFO: Control VNF +2020-04-15 07:59:33,931 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:33,932 - DEBUG: Session token is: 47b70e41-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:33,956 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:34,013 - DEBUG: Found VNF instance with name 'fortigateFWInstance' +2020-04-15 07:59:34,015 - DEBUG: Control VNF instance 'intelc3850-2', command: start +2020-04-15 07:59:36,599 - INFO: Done +2020-04-15 07:59:36,623 - DEBUG: Logging out and exiting... +ok + +---------------------------------------------------------------------- +Ran 11 tests in 55.946s + +OK + + Below you'll find sample unit-test command line options for + running the Fortigate cleanup + scenario: + + $ python unittestSuite.py -u admin -p admin -H localhost -n intelc3850-2 -s +fortigateCleanup.json -d "Fortigate cleanup scenario" + + Setting the console logging level to INFO: + + consoleLoggingLevel = logging.INFO + + Expected Output: + + Running Fortigate cleanup scenario... + +test 001: Destroying Fortigate VNF (__main__.UnittestSuite) ... +2020-04-15 08:03:40,756 - INFO: Destroy VNF +2020-04-15 08:03:41,358 - INFO: Done +ok +test 002: Deleting network bridge LAN (__main__.UnittestSuite) ... +2020-04-15 08:03:41,494 - INFO: Delete OVS network bridge +2020-04-15 08:03:41,731 - INFO: Done +ok +test 003: Deleting network bridge WAN (__main__.UnittestSuite) ... +2020-04-15 08:03:41,766 - INFO: Delete OVS network bridge +2020-04-15 08:03:43,270 - INFO: Done +ok +test 004: Unbind lan NIC from DPDK (__main__.UnittestSuite) ... +2020-04-15 08:03:43,375 - INFO: Unbind NIC +2020-04-15 08:03:45,405 - INFO: Done +ok +test 005: Unbind wan NIC from DPDK (__main__.UnittestSuite) ... +2020-04-15 08:03:45,434 - INFO: Unbind NIC +2020-04-15 08:03:47,633 - INFO: Done +ok +test 006: Offboarding Fortigate VNF (__main__.UnittestSuite) ... +2020-04-15 08:03:47,701 - INFO: Offboard VNF +2020-04-15 08:03:47,919 - INFO: Done +ok + +---------------------------------------------------------------------- +Ran 6 tests in 7.192s + +OK +
+
+ +
+ Adding a uCPE Device + + Steps for adding, configuring and running a uCPE device onto the + Enea Edge Management are described below . + +
+ Script Options + + $ python addDevice.py -h +Usage: addDevice.py [options] + +Add a uCPE device in Enea Edge Management. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -f DEVICEFILE, --file=DEVICEFILE + File containing uCPE Information in JSON format + + Mandatory options: + -H/--host, -f/--file +
+ +
+ Configuring the JSON File + + The JSON configuration file needed for adding a uCPE device + should contain a list of dictionaries. Each dictionary indicates the + test case name and the arguments passed to the + addDevice Python module. + + Sample configuration file in JSON + format: + + [ + { + "name": "Add VCPE Agent device ", + "args": "-f ../../lab_config/intelc3850-2/intelc3850-2.json" + } +] + + Sample + intelc3850-2.json configuration + file: + + { + "name": "intelc3850-2", + "deviceGroupingTags": " ", + "description": "", + "address": "172.24.12.114", + "version": "2.4.0", + "port": "22", + "username": "root", + "password": "root", + "certificate": null, + "passphrase": null, + "callHome": "false", + "maintMode": "false", + "deviceId": "intelc3850-2" +} +
+ +
+ Running the Python Module + + The addDevice Python module can be executed + independently by running the following command: + + $ python addDevice.py -u admin -p admin -H localhost -f config/device.json +2019-03-07 17:33:10,755 - DEBUG: Started logging +2019-03-07 17:33:10,756 - INFO: Add uCPE device +2019-03-07 17:33:10,975 - DEBUG: Login successful on host 'localhost' +2019-03-07 17:33:10,979 - DEBUG: Session token is: 508b6ea2-40ee-11e9-a81f525400d08e1d +2019-03-07 17:33:11,049 - DEBUG: Add new device 'intelc3850-2' to Enea Edge Management host +2019-03-07 17:33:11,483 - INFO: Done +2019-03-07 17:33:11,501 - DEBUG: Logging out and exiting.... +
+
+ +
+ Removing a uCPE Device + + Steps for removing a uCPE device from the Enea Edge Management are + described below. + +
+ Script Options + + $ python removeDevice.py -h +Usage: removeDevice.py [options] + +Remove a uCPE from Enea Edge Management. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -f DEVICEFILE, --file=DEVICEFILE + File containing uCPE Information in JSON format + + Mandatory options: + -H/--host, -f/--file +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to remove a uCPE device + should contain a list of dictionaries. Each dictionary indicates the + test case name and the arguments passed to the + removeDevice Python module. + + Sample unit-test JSON file + format: + + [ + { + "name": "Remove VCPE Agent device ", + "args": "-f ../../lab_config/intelc3850-2/intelc3850-2.json" + } +] + + Sample + intelc3850-2.json configuration + file: + + { + "name": "intelc3850-2" +} +
+ +
+ Running the Python Module + + The removeDevice Python module can be + executed individually by running the following command: + + $ python removeDevice.py -u admin -p admin -H localhost -f +../../lab_config/intelc3850-2/intelc3850-2.json +2019-03-07 17:33:56,834 - DEBUG: Started logging +2019-03-07 17:33:56,835 - INFO: Remove uCPE device +2019-03-07 17:33:56,856 - DEBUG: Login successful on host 'localhost' +2019-03-07 17:33:56,856 - DEBUG: Session token is: 6bebcb43-40ee-11e9-a81f525400d08e1d +2019-03-07 17:33:56,856 - DEBUG: Delete device 'intelc3850-2' from Enea Edge Management +host +2019-03-07 17:33:56,875 - DEBUG: Found device with name 'intelc3850-2' +2019-03-07 17:33:57,159 - INFO: Done +2019-03-07 17:33:57,171 - DEBUG: Logging out and exiting... +
+
+ +
+ Waiting a uCPE Device + + Steps and details for how to Wait a uCPE device to connect to the + Enea Edge Management after installation, are described below. + +
+ Script Options + + $ python waitDeviceUp.py -h +Usage: waitDeviceUp.py [options] + +Wait for uCPE to connect to the Enea Edge Management after installation. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -f DEVICEFILE, --file=DEVICEFILE + File containing uCPE Information in JSON format + -t TIMEOUT, --timeout=TIMEOUT + Time in seconds for maximum wait period, default = + instant + + Mandatory options: + -H/--host, -f/--file +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to wait a uCPE device should + contain a list of dictionaries. Each dictionary indicates the test + case name and the test case arguments passed to the + waitDeviceUp Python module. + + Sample unit-test JSON file + format: + + [ + { + "name": "Wait VCPE Agent device be up", + "args": "-f ../../lab_config/intelc3850-2/intelc3850-2.json -t 60" + } +] + + Sample + intelc3850-2.json configuration + file: + + { + "name": "intelc3850-2" +} +
+ +
+ Running the Python Module + + The waitDeviceUp Python module can be + executed individually by running the following command + line:$ python waitDeviceUp.py -u admin -p admin -H localhost -t 60 -f +../../lab_config/intelc3850-2/intelc3850-2.json +2019-03-07 18:03:21,132 - DEBUG: Started logging +2019-03-07 18:03:21,133 - INFO: Wait uCPE device +2019-03-07 18:03:21,149 - DEBUG: Login successful on host 'localhost' +2019-03-07 18:03:21,149 - DEBUG: Session token is: 8785b1a0-40f2-11e9-a81f525400d08e1d +2019-03-07 18:03:21,157 - DEBUG: Found device with name 'intelc3850-2' +2019-03-07 18:03:21,157 - DEBUG: Wait for device 'intelc3850-2' to connect +2019-03-07 18:03:29,356 - DEBUG: Status: Connected +2019-03-07 18:03:29,356 - INFO: Done +2019-03-07 18:03:29,365 - DEBUG: Logging out and exiting... +
+
+ + + +
+ Enabling or Disabling the DPDK + + Steps and details on how to enable or disable the DPDK are + explained below. + +
+ Script Options + + $ python configDPDK.py -h +Usage: configDPDK.py [options] + +Configure DPDK + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -s STATE, --state=STATE + Enable/Disable + -n DEVICENAME, --device-name=DEVICENAME + Name of the device + -o STORENAME, --store-name=STORENAME + Name of the store + + Mandatory options: + -H/--host, -s/--state, -n/--device-name or -o/--store-name +
+ +
+ Running the Python Module + + The configDPDK Python module can be executed + individually by running the following command lines: + + To Enable DPDK: + + $ python configDPDK.py -s enable -n intelc3850-2 + +2020-01-06 08:35:16,820 - DEBUG: Started logging +2020-01-06 08:35:16,821 - INFO: Configure DPDK +2020-01-06 08:35:16,870 - DEBUG: Login successful on host '172.24.3.90' +2020-01-06 08:35:16,871 - DEBUG: Session token is: 601149e0-3089-11ea-b0c7-525400b7889f +2020-01-06 08:35:16,894 - DEBUG: Found device with name 'inteld1521-1' +2020-01-06 08:35:16,895 - DEBUG: Set DPDK state to enable +2020-01-06 08:35:16,936 - INFO: Done +2020-01-06 08:35:16,961 - DEBUG: Logging out and exiting... + + To Disable DPDK: + + $ python configDPDK.py -s disable -n intelc3850-2 + +2020-01-06 08:33:57,157 - DEBUG: Started logging +2020-01-06 08:33:57,158 - INFO: Configure DPDK +2020-01-06 08:33:57,215 - DEBUG: Login successful on host '172.24.3.90' +2020-01-06 08:33:57,216 - DEBUG: Session token is: 3096e670-3089-11ea-b0c7-525400b7889f +2020-01-06 08:33:57,239 - DEBUG: Found device with name 'inteld1521-1' +2020-01-06 08:33:57,241 - DEBUG: Set DPDK state to disable +2020-01-06 08:33:57,284 - INFO: Done +2020-01-06 08:33:57,310 - DEBUG: Logging out and exiting... +
+
+ +
+ Binding a Network Interface + + How to Bind a physical network interface to a DPDK, Standard or + SR-IOV is detailed below. + +
+ Script Options + + $ python bindNetworkInterface.py -h +Usage: bindNetworkInterface.py [options] + +Binds a physical network interface to a DPDK or SR-IOV. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -f NICFILE, --file=NICFILE + File containing network interface Information in JSON + format + -n DEVICENAME, --device-name=DEVICENAME + Name of the device + -o STORENAME, --store-name=STORENAME + Name of the store + + Mandatory options: + -H/--host, -f/--file, -n/--device-name or -o/--store-name +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to bind a physical network + interface should contain a list of dictionaries. Each dictionary + indicates the test case name and the test case arguments passed to the + bindNetworkInterface Python module. + + Sample unit-test JSON file + format:[ + { + "name": "Bind lan NIC to DPDK", + "args": "-f ../../lab_config/intelc3850-2/lan_nic.json" + }, + { + "name": "Bind wan NIC to DPDK", + "args": "-f ../../lab_config/intelc3850-2/wan_nic.json" + }, + { + "name": "Bind wan/lan NIC to SR-IOV", + "args": "-f ../../lab_config/intelc3850-2/sriov_nic.json" + }, + { + "name": "Bind wan/lan NIC to Standard", + "args": "-f ../../lab_config/intelc3850-2/std_nic.json" + } +]Sample + lan_nic.json configuration + file:{ + "name": "enp4s0f0", + "type": "dpdk", + "subType": "vfio-pci" +}Sample + wan_nic.json configuration + file:{ + "name": "enp4s0f1", + "type": "dpdk", + "subType": "vfio-pci" +}Sample + sriov_nic.json configuration + file:{ + "name": "enp4s0f1", + "type": "sr-iov", + "subType": "adapter-pool", + "sriovNumVfs": "2" +}Sample + std_nic.json configuration + file:{ + "name": "eno2", + "type": "standard" +} +
+ +
+ Running the Python Module + + The bindNetworkInterface Python module can be + executed individually by running the following command line: + + $ python bindNetworkInterface.py -u admin -p admin -H localhost -f +../../lab_config/intelc3850-2/lan_nic.json -n intelc3850-2 +2019-03-07 18:03:29,365 - DEBUG: Started logging +2019-03-07 18:03:29,366 - INFO: Bind NIC +2019-03-07 18:03:29,406 - DEBUG: Login successful on host 'localhost' +2019-03-07 18:03:29,406 - DEBUG: Session token is: 8c719cb0-40f2-11e9-a81f525400d08e1d +2019-03-07 18:03:29,415 - DEBUG: Found device with name 'intelc3850-2' +2019-03-07 18:03:29,415 - DEBUG: Bind NIC '0000:01:00.1' +2019-03-07 18:03:30,030 - INFO: Done +2019-03-07 18:03:30,067 - DEBUG: Logging out and exiting... +
+
+ +
+ Unbinding a Network Interface + + How to Unbind a physical network interface from a DPDK or SR-IOV + is described below. + +
+ Script Options + + $ python unbindNetworkInterface.py -h +Usage: unbindNetworkInterface.py [options] + +Unbinds a physical interface to the DPDK or SR-IOV. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -f NICFILE, --file=NICFILE + File containing network interface Information in JSON + format + -n DEVICENAME, --device-name=DEVICENAME + Name of the device + + Mandatory options: + -H/--host, -f/--file, -n/--device-name +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to unbind a network interface + should contain a list of dictionaries. Each dictionary indicates the + test case name and the test case arguments passed to the + unbindNetworkInterface Python module. + + Sample unit-test JSON file + format:[ + { + "name": "Unbind lan NIC from DPDK", + "args": "-f ../../lab_config/intelc3850-2/lan_nic.json" + }, + { + name": "Unbind wan NIC from DPDK", + "args": "-f ../../lab_config/intelc3850-2/wan_nic.json" + } +] + + Sample lan_nic.json + configuration file: + + { + "name": "enp4s0f0", + "type": "dpdk" +} + + Sample wan_nic.json + configuration file: + + { + "name": "enp4s0f1", + "type": "dpdk", +} + +
+ +
+ Running the Python Module + + The unbindNetworkInterface Python module + can be executed individually by running the following command + line: + + $ python unbindNetworkInterface.py -u admin -p admin -H localhost -f +../../lab_config/intelc3850-2/lan_nic.json -n intelc3850-2 +2019-03-07 17:33:54,377 - DEBUG: Started logging +2019-03-07 17:33:54,378 - INFO: Unbind NIC +2019-03-07 17:33:54,431 - DEBUG: Login successful on host 'localhost' +2019-03-07 17:33:54,432 - DEBUG: Session token is: 6a77a1d1-40ee-11e9-a81f525400d08e1d +2019-03-07 17:33:54,467 - DEBUG: Found device with name 'intelc3850-2' +2019-03-07 17:33:54,468 - DEBUG: Unbind NIC '0000:01:00.1' +2019-03-07 17:33:55,616 - INFO: Done +2019-03-07 17:33:55,659 - DEBUG: Logging out and exiting... +
+
+ +
+ Getting a Network Interface + + Details and steps on how to List the network interfaces for a + device, are described below. + +
+ Script Options + + $ python getNetworkInterfaces.py -h +2019-07-04 16:35:50,496 - DEBUG: Started logging +2019-07-04 16:35:50,496 - INFO: Dump NICs +Usage: getNetworkInterfaces.py [options] + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME Enea Edge Management login username + -p PASSWORD, --password=PASSWORD Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -n DEVICENAME, --device-name=DEVICENAME Name of the uCPE to get network / + interfaces from + + Mandatory options: + -H/--host, -n/--device-name +
+ +
+ Running the Python Module + + The getNetworkInterfaces Python module can be + executed individually by running the following command: + + $ python getNetworkInterfaces.py -H localhost -n intelc3850-2 +2020-01-07 05:58:03,630 - DEBUG: Started logging +2020-01-07 05:58:03,630 - INFO: Dump NICs +2020-01-07 05:58:03,687 - DEBUG: Login successful on host '172.24.3.90' +2020-01-07 05:58:03,688 - DEBUG: Session token is: 93dd3cd0-313c-11ea-b0c7-525400b7889f +2020-01-07 05:58:03,715 - DEBUG: Found device with name 'intelc3850-2' +2020-01-07 05:58:03,717 - DEBUG: +----------------External Network Interfaces for intelc3850-2---------------- +2020-01-07 05:58:07,622 - DEBUG: eno4 DpdkTypes: [u'igb_uio', u'vfio-pci'] \ +MacAddress: 0c:c4:7a:fb:85:dfsriov(7) +2020-01-07 05:58:07,624 - DEBUG: +2020-01-07 05:58:07,656 - DEBUG: +----------------Configured External Network Interfaces for intelc3850-2---------------- +2020-01-07 05:58:07,657 - DEBUG: eno3 DpdkType: vfio-pci ID: \ +47556b22-b5c2-4acb-b3cb-09b1f024b3a7 +2020-01-07 05:58:07,658 - DEBUG: enp1s0f1 DpdkType: vfio-pci ID: \ +2c06b4f7-6814-4432-8765-a9d0cd5303c1 +2020-01-07 05:58:07,659 - DEBUG: enp1s0f0 DpdkTypes: [u'igb_uio', u'vfio-pci'] \ +MacAddress: ac:1f:6b:2d:ee:58sriov(63) +2020-01-07 05:58:07,660 - DEBUG: +2020-01-07 05:58:07,690 - DEBUG: +----------------Configured External Network Interfaces for intelc3850-2---------------- +2020-01-07 05:58:07,691 - DEBUG: eno3 DpdkType: vfio-pci ID: \ +47556b22-b5c2-4acb-b3cb-09b1f024b3a7 +2020-01-07 05:58:07,692 - DEBUG: enp1s0f1 DpdkType: vfio-pci ID: \ +2c06b4f7-6814-4432-8765-a9d0cd5303c1 +2020-01-07 05:58:07,693 - DEBUG: eno2 DpdkTypes: [u'igb_uio', u'vfio-pci'] \ +MacAddress: 0c:c4:7a:fb:85:ddsriov(7) +2020-01-07 05:58:07,695 - DEBUG: +2020-01-07 05:58:07,724 - DEBUG: +----------------Configured External Network Interfaces for intelc3850-2---------------- +2020-01-07 05:58:07,725 - DEBUG: eno3 DpdkType: vfio-pci ID: \ +47556b22-b5c2-4acb-b3cb-09b1f024b3a7 +2020-01-07 05:58:07,726 - DEBUG: enp1s0f1 DpdkType: vfio-pci ID: \ +2c06b4f7-6814-4432-8765-a9d0cd5303c1 +2020-01-07 05:58:07,727 - DEBUG: eno1 DpdkTypes: [u'igb_uio', u'vfio-pci'] \ +MacAddress: 0c:c4:7a:fb:85:dcsriov(7) +2020-01-07 05:58:07,728 - DEBUG: +2020-01-07 05:58:07,760 - DEBUG: +----------------Configured External Network Interfaces for intelc3850-2---------------- +2020-01-07 05:58:07,761 - DEBUG: eno3 DpdkType: vfio-pci ID: \ +47556b22-b5c2-4acb-b3cb-09b1f024b3a7 +2020-01-07 05:58:07,761 - DEBUG: enp1s0f1 DpdkType: vfio-pci ID: \ +2c06b4f7-6814-4432-8765-a9d0cd5303c1 +2020-01-07 05:58:07,762 - DEBUG: +2020-01-07 05:58:07,763 - INFO: Done +2020-01-07 05:58:07,787 - DEBUG: Logging out and exiting... +
+
+ +
+ Creating an OVS Network Bridge + + Instructions on how to Create an OVS Bridge on a device are + detailed below. + +
+ Script Options + + $ python newNetworkBridge.py -h +Usage: newNetworkBridge.py [options] + +Create an OVS Bridge on a device. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -f OVSFILE, --file=OVSFILE + File containing OVS bridge Information in JSON format + -n DEVICENAME, --device-name=DEVICENAME + Name of the device + -o STORENAME, --store-name=STORENAME + Name of the store + + Mandatory options: + -H/--host, -f/--file, -n/--device-name or -o/--store-name +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to create a new network + bridge should contain a list of dictionaries. Each dictionary + indicates the test case name and the test case arguments passed to the + newNetworkBridge Python module. + + Sample unit-test JSON file + format: + + [ + { + "name": "Creating network bridge LAN ", + "args": "-f ../../lab_config/intelc3850-2/lan_br.json" + }, + { + "name": "Creating network bridge WAN ", + "args": "-f ../../lab_config/intelc3850-2/wan_br.json" + } +] + + Sample lan_br.json + configuration file: + + { + "name": "lan_br", + "interfaces": ["enp4s0f0"] +} + + Sample wan_br.json + configuration file: + + { + "name": "wan_br", + "interfaces": ["enp4s0f1"] +} +
+ +
+ Running the Python Module + + The newNetworkBridge Python module can be + executed individually by running the following command line: + + $ python newNetworkBridge.py -u admin -p admin -H localhost -f +../../lab_config/intelc3850-2/lan_br.json -n intelc3850-2 +2019-03-07 18:03:30,767 - DEBUG: Started logging +2019-03-07 18:03:30,768 - INFO: New OVS network bridge +2019-03-07 18:03:30,801 - DEBUG: Login successful on host 'localhost' +2019-03-07 18:03:30,801 - DEBUG: Session token is: 8d454061-40f2-11e9-a81f525400d08e1d +2019-03-07 18:03:30,811 - DEBUG: Found device with name 'intelc3850-2' +2019-03-07 18:03:30,812 - DEBUG: Create new OVS network bridge 'lan_br' +2019-03-07 18:03:37,358 - INFO: Done +2019-03-07 18:03:37,402 - DEBUG: Logging out and exiting... +
+
+ +
+ Deleting an OVS Network Bridge + + How to Delete an OVS Bridge from a device is detailed in the + following. + +
+ Script Options + + $ python delNetworkBridge.py -h +Usage: delNetworkBridge.py [options] + +Delete an OVS Bridge from a device. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -f OVSFILE, --file=OVSFILE + File containing OVS bridge Information in JSON format + -n DEVICENAME, --device-name=DEVICENAME + Name of the device + -o STORENAME, --store-name=STORENAME + Name of the store + + Mandatory options: + -H/--host, -f/--file, -n/--device-name or -o/--store-name +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to delete a network bridge + should contain a list of dictionaries. Each dictionary indicates the + test case name and the test case arguments passed to the + delNetworkBridge Python module. + + Sample unit-test JSON file + format: + + [ + { + "name": "Deleting network bridge LAN ", + "args": "-f ../../lab_config/intelc3850-2/lan_br.json" + }, + { + "name": "Deleting network bridge WAN ", + "args": "-f ../../lab_config/intelc3850-2/wan_br.json" + } +] + + Sample lan_br.json + configuration file: + + { + "name" : "lan_br" +} + + Sample wan_br.json + configuration file: + + { + "name" : "wan_br" +} +
+ +
+ Running the Python Module + + The delNetworkBridge Python module can be + executed individually by running the following command line: + + $ python delNetworkBridge.py -u admin -p admin -H localhost -f +../../lab_config/intelc3850-2/lan_br.json -n intelc3850-2 +2019-03-07 17:33:51,712 - DEBUG: Started logging +2019-03-07 17:33:51,713 - INFO: Delete OVS network bridge +2019-03-07 17:33:51,751 - DEBUG: Login successful on host 'localhost' +2019-03-07 17:33:51,752 - DEBUG: Session token is: 68e08711-40ee-11e9-a81f525400d08e1d +2019-03-07 17:33:51,768 - DEBUG: Found device with name 'intelc3850-2' +2019-03-07 17:33:51,768 - DEBUG: Delete OVS network bridge 'lan_br' +2019-03-07 17:33:52,839 - INFO: Done +2019-03-07 17:33:52,872 - DEBUG: Logging out and exiting... +
+
+ +
+ Onboarding a VNF Image Raw + + How to Onboard a VNF image in the Enea Edge Management based upon its raw + constituents, is detailed in depth below. + +
+ Script Options + + $ python onboardVNFRaw.py -h +Usage: onboardVNFRaw.py [options] + +Onboard a VNF in Enea Edge Management based upon its raw constituents. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -f FTPUSERNAME, --ftpUsername=FTPUSERNAME + Username for FTP + -w FTPPASSWORD, --ftpPassword=FTPPASSWORD + FTP password + -P FTPPORT, --ftpPort=FTPPORT + FTP port + -i IMAGEPATH, --imagePath=IMAGEPATH + VNF image path + -b IMAGEINFO, --imageInfo=IMAGEINFO + File name of VNF image information in JSON format + + Mandatory options: + -H/--host, -b/--imageInfo, -i/--imagePath +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to onboard a VNF image Raw + should contain a list of dictionaries. Each dictionary indicates the + test case name and the test case arguments passed to the + onboardVNFRaw Python module. + + Sample unit-test JSON file + format: + + [ + { + "name": "Onboarding Fortigate VNF (wizard API)", + "args": "-b ../../vnf_config/fortigateImage/fortigateImage.json -i +../../vnf_images/fortios.qcow2" + } +] + + Sample + fortigateImage.json configuration + file:{ + "name" : "fortigateImage", + "version" : "1.0", + "description" : "Fortigate VNF Image", + "provider" : "Fortinet, Inc", + "numVcpus" : 1, + "imageFormat" : "QCOW2", + "memoryInMb" : 1024, + "storageInGb" : 20, + "image" : "fortios.qcow2", + "interfaces" : [ + { + "name" : "external", + "type" : "PhysicalPort", + "description" : "External interface" + }, + { + "name" : "in", + "type" : "PhysicalPort", + "description" : "Incoming interface" + }, + { + "name" : "out", + "type" : "PhysicalPort", + "description" : "Outgoing interface" + } + ], + "cloudInitDataSource" : "ConfigDrive", + "cloudInitDriveType" : "cdrom", + "cloudInitContentParams" : [ + { + "path" : "License", + "description" : "Operational license" + } + ] +} +
+ +
+ Running the Python Module + + The onboardVNFRaw Python module can be + executed individually by running the following command line: + + $ python onboardVNFRaw.py -u admin -p admin -f ftp -w ftp -H localhost -b b +../../vnf_config/fortigateImage/fortigateImage.json -i +../../vnf_images/fortios.qcow2 +2019-03-07 18:03:37,791 - DEBUG: Started logging +2019-03-07 18:03:37,792 - INFO: Onboard wizard +2019-03-07 18:03:37,859 - DEBUG: Login successful on host 'localhost' +2019-03-07 18:03:37,859 - DEBUG: Session token is: 91770330-40f2-11e9-a81f525400d08e1d +2019-03-07 18:03:37,860 - DEBUG: FTP file '../../vnf_images/fortios.qcow2' on host +'localhost', port '2021' +2019-03-07 18:03:38,027 - DEBUG: Onboard VNF raw: fortios.qcow2 +2019-03-07 18:03:41,701 - INFO: Done +2019-03-07 18:03:41,748 - DEBUG: Logging out and exiting... +
+
+ +
+ Offboarding a VNF + + Steps on how to Offboard a VNF from the Enea Edge Management are detailed + below. + +
+ Script Options + + $ python offboardVNF.py -h +Usage: offboardVNF.py [options] + +Offboard a VNF from Enea Edge Management. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -n VNFDNAME, --vnfdName=VNFDNAME + Name of VNF descriptor to offboard + + Mandatory options: + -H/--host, -n/--vnfdName +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to offboard a VNF should + contain a list of dictionaries. Each dictionary indicates the test + case name and the test case arguments passed to the + offboardVNF Python module. + + Sample unit-test JSON file + format: + + [ + { + "name": "Offboarding Fortigate VNF ", + "args": "-n fortigateImage" + } +] +
+ +
+ Running the Python Module + + The offboardVNF Python module can be + executed individually by running the following command line: + + $ python offboardVNF.py -u admin -p admin -H localhost -n fortigateImage +2019-03-07 17:33:56,523 - DEBUG: Started logging +2019-03-07 17:33:56,524 - INFO: Offboard VNF +2019-03-07 17:33:56,557 - DEBUG: Login successful on host 'localhost' +2019-03-07 17:33:56,557 - DEBUG: Session token is: 6bbe2b90-40ee-11e9-a81f525400d08e1d +2019-03-07 17:33:56,682 - DEBUG: Found VNF descriptor with name 'fortigateImage' +2019-03-07 17:33:56,683 - DEBUG: Offboard VNF: fortigateImage +2019-03-07 17:33:56,811 - INFO: Done +2019-03-07 17:33:56,834 - DEBUG: Logging out and exiting... +
+
+ +
+ Instantiating a VNF + + Instantiating a VNF via the Enea Edge Management is detailed below. + +
+ Script Options + + $ python instantiateVNFI.py -h +Usage: instantiateVNFI.py [options] + +Instantiate a VNF via Enea Edge Management. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -t VNFTYPE, --vnfType=VNFTYPE + VNF Type (Name of VNF descriptor) + -n VIMDEVICENAME, --device-name=VIMDEVICENAME + Name of the device + -f PROPSFILE, --file=PROPSFILE + File containing VNF instance properties in JSON format + + Mandatory options: + -H/--host, -t/--vnfType, -n/--device-name, -f/--file +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to instantiate a VNF should + contain a list of dictionaries. Each dictionary indicates the test + case name and the test case arguments passed to the + instantiateVNFI Python module. + + Sample unit-test JSON file + format: + + [ + { + "name": "Instantiate Fortigate VNF ", + "args": "-t fortigateImage -f +../../vnf_config/fortigateImage/fortigateFWInstance.json" + } +] + + The VNF instance JSON configuration file is specific to each + VNF. +
+ +
+ Running the Python Module + + The instantiateVNFI Python module can be + executed individually by running the following command line: + + $ python instantiateVNFI.py -u admin -p admin -H localhost -n intelc3850-2 -t +fortigateImage -f ../../vnf_config/fortigateImage/fortigateFWInstance.json +2019-03-07 18:03:41,777 - DEBUG: Started logging +2019-03-07 18:03:41,778 - INFO: Instantiate VNF +2019-03-07 18:03:41,813 - DEBUG: Login successful on host 'localhost' +2019-03-07 18:03:41,815 - DEBUG: Session token is: 93d69e10-40f2-11e9-a81f525400d08e1d +2019-03-07 18:03:41,834 - DEBUG: Found device with name 'intelc3850-2' +2019-03-07 18:03:41,878 - DEBUG: Found VNF descriptor with name 'fortigateImage' +2019-03-07 18:03:41,888 - DEBUG: Encrypt string content: +cloudInit("vnf_config/fortigateImage/fortigateFW.conf") +2019-03-07 18:03:41,889 - DEBUG: Encrypt string content: +License("vnf_config/fortigateImage/fortigateLicense.lic") +2019-03-07 18:03:41,889 - DEBUG: Instantiate fortigateImage VNF on 'intelc3850-2' +2019-03-07 18:03:49,887 - INFO: Done +2019-03-07 18:03:49,921 - DEBUG: Logging out and exiting... +
+
+ +
+ Controlling a VNF Instance + + How to Control a VNF instance from the Enea Edge Management is + detailed below. + + + If a sequence of commands aiming to change the state of the VNF + (start/stop/suspend/shutdown) is issued rapidly, certain VNFs might + become unresponsive. Depending on the actual VNF, the time required + between life-cycle operations may vary from several seconds to half a + minute or even more. If a VNF becomes unresponsive, the only possible + action is to "Force Delete" the instance from the Enea Edge Management. + + +
+ Script Options + + $ python controlVNFI.py -h +Usage: controlVNFI.py [options] + +Controls a VNF instance from Enea Edge Management. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -i VNFINSTANCENAME, --vnfInstanceName=VNFINSTANCENAME + Name of VNF instance + -n VIMDEVICENAME, --device-name=VIMDEVICENAME + Name of the device + -c COMMAND, --command=COMMAND + Control command (stop, start, pause or resume) + + Mandatory options: + -H/--host, -i/--vnfInstanceName, -n/--device-name, -c/--command +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to control a VNF instance + should contain a list of dictionaries. Each dictionary indicates the + test case name and the test case arguments passed to the + controlVNFI Python module. + + Sample unit-test JSON file + format: + + [ + { + "name": "Pause Fortigate VNF instance", + "args": "-i fortigateFWInstance -c pause" + }, + { + "name": "Resume Fortigate VNF instance", + "args": "-i fortigateFWInstance -c resume" + }, + { + "name": "Stop Fortigate VNF instance ", + "args": "-i fortigateFWInstance -c stop" + }, + { + "name": "Start Fortigate VNF instance", + "args": "-i fortigateFWInstance -c start" + } +] +
+ +
+ Running the Python Module + + The controlVNFI Python module can be + executed individually by running the following command line: + + $ python controlVNFI.py -u admin -p admin -H localhost -n intelc3850-2 -i +fortigateFWInstance -c stop +2019-03-07 18:03:51,991 - DEBUG: Started logging +2019-03-07 18:03:51,992 - INFO: Control VNF +2019-03-07 18:03:52,031 - DEBUG: Login successful on host 'localhost' +2019-03-07 18:03:52,031 - DEBUG: Session token is: 99ed9ba3-40f2-11e9-a81f525400d08e1d +2019-03-07 18:03:52,046 - DEBUG: Found device with name 'intelc3850-2' +2019-03-07 18:03:52,073 - DEBUG: Found VNF instance with name 'fortigateFWInstance' +2019-03-07 18:03:52,073 - DEBUG: Control VNF instance 'intelc3850-2', command: stop +2019-03-07 18:03:53,011 - INFO: Done +2019-03-07 18:03:53,047 - DEBUG: Logging out and exiting... +
+
+ +
+ Destroying a VNF Instance + + Steps and options on how to Destroy a VNF instance from the Enea + Edge Management are described below. + +
+ Script Options + + $ python destroyVNFI.py -h +Usage: destroyVNFI.py [options] + +Destroys a VNF instance from Enea Edge Management. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -i VNFINSTANCENAME, --vnfInstanceName=VNFINSTANCENAME + Name of VNF instance + -n VIMDEVICENAME, --device-name=VIMDEVICENAME + Name of the device + + Mandatory options: + -H/--host, -i/--vnfInstanceName, -n/--device-name +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to destroy a VNF instance + should contain a list of dictionaries. Each dictionary indicates the + test case name and the test case arguments passed to the + destroyVNFI Python module. + + Sample unit-test JSON file + format:[ + { + "name": "Destroying Fortigate VNF ", + "args": "-i fortigateFWInstance" + } +] +
+ +
+ Running the Python Module + + The destroyVNFI Python module can be + executed individually by running the following command line: + + $ python destroyVNFI.py -u admin -p admin -H localhost -n intelc3850-2 -i +fortigateFWInstance +2019-03-07 17:33:51,025 - DEBUG: Started logging +2019-03-07 17:33:51,026 - INFO: Destroy VNF +2019-03-07 17:33:51,119 - DEBUG: Login successful on host 'localhost' +2019-03-07 17:33:51,119 - DEBUG: Session token is: 68803ea5-40ee-11e9-a81f525400d08e1d +2019-03-07 17:33:51,128 - DEBUG: Found device with name 'intelc3850-2' +2019-03-07 17:33:51,148 - DEBUG: Found VNF instance with name 'fortigateFWInstance' +2019-03-07 17:33:51,149 - DEBUG: Destroy VNF: fortigateFWInstance +2019-03-07 17:33:51,655 - INFO: Done +2019-03-07 17:33:51,712 - DEBUG: Logging out and exiting... +
+
+ +
+ Uploading a Enea Edge image onto the Enea Edge Management + + Steps and options on how to Upload a Enea Edge image onto the + Enea Edge Management are described below. + +
+ Script Options + + $ python uploadImage.py -h +Upload NFVA image on Enea Edge Management +Usage: uploadImage.py [options] + +Upload NFVA image on Enea Edge Management. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -f FILENAME, --fileName=FILENAME + Path to NFVA image file name + -m MODULE, --module=MODULE + Module name (default is: VcpeAgent) + -t UPGRADETYPE, --upgradeType=UPGRADETYPE + Upgrade Type depends on architecture: xeon_d or + atom_c3000 + + Mandatory options: + -H/--host, -f/--fileName, -m/--module, -t/--upgradeType +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to upload a Enea Edge image + should contain a list of dictionaries. Each dictionary indicates the + test case name and the test case arguments passed to the + uploadImage Python module. + + Sample unit-test JSON file + format:[ + { + "name": "Upload NFVA image on Enea Edge Management", + "args": "-f /tmp/enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d" + } +] +
+ +
+ Running the Python Module + + The uploadImage Python module can be + executed individually by running the following command line: + + $ python uploadImage.py -u admin -p admin -H localhost \ +-f /tmp/enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d +2020-02-28 11:38:42,754 - DEBUG: Started logging +2020-02-28 11:38:42,755 - INFO: Upload NFVA image on Enea Edge Management +2020-02-28 11:38:43,307 - DEBUG: Login successful on host 'localhost' +2020-02-28 11:38:43,308 - DEBUG: Session token is: 7da3f960-5a16-11ea-a3de-5652b3ac1c30 +2020-02-28 11:41:29,148 - INFO: Verify image validation flag +2020-02-28 11:41:29,149 - INFO: Valid flag: True +2020-02-28 11:41:29,344 - INFO: The image \ +'enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2' was successfully uploaded +2020-02-28 11:41:29,344 - INFO: Done +2020-02-28 11:41:29,388 - DEBUG: Logging out and exiting... +
+
+ +
+ Deleting a Enea Edge image file from the + Enea Edge Management + + Steps and options on how to Delete a Enea Edge image from the + Enea Edge Management are described below. + +
+ Script Options + + $ python deleteUpgradeFile.py -h +Delete NFVA image from Enea Edge Management +Usage: deleteUpgradeFile.py [options] + +Delete NFVA image from Enea Edge Management. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -i IMAGENAME, --imageName=IMAGENAME + NFVA Image name + -m MODULE, --module=MODULE + Module name - default is VcpeAgent + + Mandatory options: + -H/--host, -i/--imageName, -m/--module. +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to delete a Enea Edge image + should contain a list of dictionaries. Each dictionary indicates the + test case name and the test case arguments passed to the + deleteUpgradeFile Python module. + + Sample unit-test JSON file + format:[ + { + "name": "Delete NFVA image on Enea Edge Management", + "args": "-i enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2" + } +] +
+ +
+ Running the Python Module + + The deleteUpgradeFile Python module can be + executed individually by running the following command line: + + $ python deleteUpgradeFile.py -u admin -p admin -H localhost -i \ +enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 +2020-02-28 12:06:20,111 - DEBUG: Started logging +2020-02-28 12:06:20,112 - INFO: Delete NFVA image from Enea Edge Management +2020-02-28 12:06:20,210 - DEBUG: Login successful on host 'localhost' +2020-02-28 12:06:20,211 - DEBUG: Session token is: 594b2d50-5a1a-11ea-a3de-5652b3ac1c30 +2020-02-28 12:06:20,255 - INFO: The image \ +'enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2' was successfully found +2020-02-28 12:06:20,256 - INFO: The oid for \ +'enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2' image name is as follows: \ +VcpeAgent/xeon_d/enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 +2020-02-28 12:06:20,449 - INFO: The 'enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2' \ +image was successfully removed +2020-02-28 12:06:20,479 - INFO: Done +2020-02-28 12:06:20,517 - DEBUG: Logging out and exiting... +
+
+ +
+ Installing and activating a Enea Edge image on an uCPE device + from the Enea Edge Management + + Steps and options on how to Install and Activate a Enea Edge + image on an uCPE device from the Enea Edge Management are described + below. + +
+ Script Options + + $ python installAndActivate.py -h +Install and activate NFVA image from Enea Edge Management +Usage: installAndActivate.py [options] + +Install and activate NFVA image from Enea Edge Management. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -i IMAGENAME, --imageName=IMAGENAME + Image name + -m MODULE, --module=MODULE + Module name -- VcpeAgent + -t UPGRADETYPE, --upgradeType=UPGRADETYPE + Upgrade Type -- xeon_d or atom_c3000 + -d DEVICENAME, --deviceName=DEVICENAME + Device Name + + Mandatory options: + -H/--host, -i/--imageName, -t/--upgradeType, -d/--deviceName, + -m/--module +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to install and activate a Enea Edge + image on a uCPE device from the Enea Edge Management should + contain a list of dictionaries. Each dictionary indicates the test + case name and the test case arguments passed to the + installAndActivate Python module. + + Sample unit-test JSON file + format: + + [ + { + "name": "Install and activate NFVA image on uCPE device from Enea Edge Management", + "args": "-i enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d -d inteld1521-16" + } +] +
+ +
+ Running the Python Module + + The installAndActivate Python module can be + executed individually by running the following command line: + + $ python installAndActivate.py -u admin -p admin -H localhost -i \ +enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d -d inteld1521-16 +2020-02-28 12:36:46,137 - DEBUG: Started logging +2020-02-28 12:36:46,138 - INFO: Install and activate NFVA image from Enea Edge Management +2020-02-28 12:36:46,288 - DEBUG: Login successful on host 'localhost' +2020-02-28 12:36:46,288 - DEBUG: Session token is: 99b7cde0-5a1e-11ea-a3de-5652b3ac1c30 +2020-02-28 12:36:46,325 - DEBUG: Found device with name 'inteld1521-16' +2020-02-28 12:36:46,459 - INFO: Display info about NFVA installation \ +[inteld1521-16:1001:172.24.12.152] Install Started +2020-02-28 12:36:46,492 - INFO: Transferring Image: \ +enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 +2020-02-28 12:36:56,552 - INFO: Verifying Release [1] +2020-02-28 12:37:06,599 - INFO: Verifying Release [2] +2020-02-28 12:37:16,652 - INFO: Validating Upgrade to \ +enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 +2020-02-28 12:37:26,713 - INFO: Validating upgrade to \ +enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [3] +2020-02-28 12:37:36,770 - INFO: Validating upgrade to \ +enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [5] +2020-02-28 12:37:46,819 - INFO: Validating upgrade to \ +enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [7] +2020-02-28 12:37:56,879 - INFO: Validating upgrade to \ +enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [9] +2020-02-28 12:38:06,920 - INFO: Validating upgrade to \ +enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [11] +2020-02-28 12:38:16,975 - INFO: Validating upgrade to \ +enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [13] +2020-02-28 12:38:27,019 - INFO: Validating upgrade to \ +enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [15] +2020-02-28 12:38:37,091 - INFO: Validating upgrade to \ +enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [18] +2020-02-28 12:38:47,133 - INFO: Validating upgrade to \ +enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [20] +2020-02-28 12:38:57,186 - INFO: Waiting for release to become active +2020-02-28 12:39:07,231 - INFO: Upgrade Request Complete +2020-02-28 12:39:17,242 - INFO: Installation completed! +2020-02-28 12:39:17,243 - INFO: Done +2020-02-28 12:39:17,294 - DEBUG: Logging out and exiting... +
+
+ +
+ Clearing information about completed upgrades of uCPE devices + from the Enea Edge Management + + Steps and options on how to clear information about completed + upgrades of uCPE devices from the Enea Edge Management are described + below. + +
+ Script Options + + $ python clearCompletedUpgradesInfo.py -h +Clear info about completed upgrades +Usage: clearCompletedUpgradesInfo.py [options] + +Clear info about completed upgrades + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + + Mandatory options: + -H/--host +
+ +
+ Configuring the JSON File + + No JSON configuration file is needed to clear information about + completed upgrades of uCPE devices from the Enea Edge Management. The + clearCompletedUpgradesInfo Python module can be + run without a JSON file as a parameter. +
+ +
+ Running the Python Module + + The clearCompletedUpgradesInfo Python + module can be executed individually by running the following command + line: + + $ python clearCompletedUpgradesInfo.py -u admin -p admin -H localhost +2020-02-28 12:51:55,861 - DEBUG: Started logging +2020-02-28 12:51:55,862 - INFO: Clear info about completed upgrades +2020-02-28 12:51:55,950 - DEBUG: Login successful on host 'localhost' +2020-02-28 12:51:55,951 - DEBUG: Session token is: b7eb83e0-5a20-11ea-a3de-5652b3ac1c30 +2020-02-28 12:51:55,993 - INFO: Done +2020-02-28 12:51:56,025 - DEBUG: Logging out and exiting... +
+
+ +
+ Uploading a Custom Script to the Enea Edge Management + + Steps and options on how to upload a custom script to the + Enea Edge Management are described below. + +
+ Script Options + + $ python customScripts/upload.py -h +2020-04-14 10:26:23,582 - INFO: Upload Custom Script +Usage: upload.py [options] + +Add a Custom Script to Enea Edge Management + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -f CUSTOMSCRIPT, --file=CUSTOMSCRIPT + Custom Script File + -e PHASE, --phase=PHASE + Execution phase. Must be one of the following: once- + before-startup | always-before-startup | once-after- + startup | always-after-startup + + Mandatory options: + -H/--host, -f/--file, -e/--phase +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to upload a Custom Script to + the Enea Edge Management must contain a list of dictionaries. Each dictionary + indicates the test case name and the test case arguments passed to the + customScripts/upload Python module. + + Sample unit-test JSON file + format: + + [ + { + "name": "Uploading a Custom Script to the Enea Edge Management", + "args": "-f ../../lab_config/customScripts/test_success_after_always \ + -e always-after-startup" + } +] +
+ +
+ Running the Python Module + + The customScripts/upload Python module can + be executed individually by running the following command line: + + $ python automation_framework/customScripts/upload.py \ +-f lab_config/customScripts/test_success_after_always -e always-after-startup +2020-04-14 14:08:02,824 - DEBUG: Started logging +2020-04-14 14:08:02,915 - INFO: Upload Custom Script +2020-04-14 14:08:02,994 - DEBUG: Login successful on host '172.24.3.109' +2020-04-14 14:08:02,995 - DEBUG: Session token is: 97544990-7e48-11ea-835c-02423a1c239f +2020-04-14 14:08:02,996 - DEBUG: Upload test_success_after_always to Enea Edge Management. \ +Content: #!/bin/bash +echo test_success_after_always +2020-04-14 14:08:03,138 - INFO: Done +2020-04-14 14:08:03,169 - DEBUG: Logging out and exiting... +
+
+ +
+ Uploading a Custom Script from the Enea Edge Management to a + Device + + Steps and options on how to upload a custom script from the + Enea Edge Management to a Device are described below. + +
+ Script Options + + $ python customScripts/uploadOnDevice.py -h +2020-04-14 10:27:05,614 - INFO: Upload Custom Script on Device +Usage: uploadOnDevice.py [options] + +Add a Custom Script to a Device + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -c CUSTOMSCRIPTNAME, --customScriptName=CUSTOMSCRIPTNAME + Custom Script Name that resides on Enea Edge Management + -e PHASE, --phase=PHASE + Execution phase. Must be one of the following: once- + before-startup | always-before-startup | once-after- + startup | always-after-startup + -n DEVICENAME, --device-name=DEVICENAME + Name of the device + -r, --reboot Reboot the device after uploading + + Mandatory options: + -H/--host, -c/--customScriptName, -e/--phase, -n/--device-name +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to upload a Custom Script + from the Enea Edge Management to a Device must contain a list of dictionaries. + Each dictionary indicates the test case name and the test case + arguments passed to the + customScripts/uploadOnDevice Python + module. + + Sample unit-test JSON file + format: + + [ +{ +"name": "Uploading a Custom Script from Enea Edge Management to device", +"args": "-c test_success_after_always -e always-after-startup -n inteld1521-6" +} +] +
+ +
+ Running the Python Module + + The customScripts/uploadOnDevice Python + module can be executed individually by running the following command + line: + + $ python automation_framework/customScripts/uploadOnDevice.py -c \ +test_success_after_always -e always-after-startup -n inteld1521-6 +2020-04-14 14:26:26,205 - DEBUG: Started logging +2020-04-14 14:26:26,206 - INFO: Upload Custom Script on Device +2020-04-14 14:26:26,251 - DEBUG: Login successful on host '172.24.3.109' +2020-04-14 14:26:26,252 - DEBUG: Session token is: 28ebcb10-7e4b-11ea-835c-02423a1c239f +2020-04-14 14:26:26,286 - DEBUG: Found device with name 'inteld1521-6' +2020-04-14 14:26:26,287 - DEBUG: Upload test_success_after_always to inteld1521-6 +2020-04-14 14:26:26,314 - INFO: Done +2020-04-14 14:26:26,341 - DEBUG: Logging out and exiting... +
+
+ +
+ Removing a Custom Script from the Enea Edge Management + + Steps and options on how to remove a custom script from the + Enea Edge Management are described below. + +
+ Script Options + + $ python customScripts/delete.py -h +2020-04-14 14:36:52,010 - INFO: Delete Custom Script on Enea Edge Management +Usage: delete.py [options] + +Delete a Custom Script from a Device + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -c CUSTOMSCRIPTNAME, --customScriptName=CUSTOMSCRIPTNAME + Custom Script Name that resides on a Device + -e PHASE, --phase=PHASE + Execution phase. Must be one of the following: once- + before-startup | always-before-startup | once-after- + startup | always-after-startup + + Mandatory options: + -H/--host, -e/--phase +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to remove a Custom Script + from the Enea Edge Managementdid you mean device or + Enea Edge Management? must contain a list of dictionaries. Each dictionary + indicates the test case name and the test case arguments passed to the + customScripts/delete Python module. + + Sample unit-test JSON file + format: + + [ +{ +"name": "Removing a Custom Script from Enea Edge Management", +"args": "-c test_success_after_always -e always-after-startup" +} +] +
+ +
+ Running the Python Module + + The customScripts/delete Python module can + be executed individually by running the following command line: + + $ python automation_framework/customScripts/delete.py -c \ +test_success_after_always -e always-after-startup +2020-04-14 14:39:22,042 - DEBUG: Started logging +2020-04-14 14:39:22,042 - INFO: Delete Custom Script on Enea Edge Management +2020-04-14 14:39:22,081 - DEBUG: Login successful on host '172.24.3.109' +2020-04-14 14:39:22,082 - DEBUG: Session token is: f75a83a0-7e4c-11ea-835c-02423a1c239f +2020-04-14 14:39:22,099 - DEBUG: Found custom script: 'test_success_after_always' +2020-04-14 14:39:22,099 - DEBUG: Delete script test_success_after_always, \ +phase always-after-startup from Enea Edge Management +2020-04-14 14:39:22,118 - INFO: Done +2020-04-14 14:39:22,135 - DEBUG: Logging out and exiting... +
+
+ +
+ Removing a Custom Script from a Device + + Steps and options on how to remove a custom script from a device + are described below. + +
+ Script Options + + $ python customScripts/deleteOnDevice.py -h +2020-04-14 10:27:23,536 - INFO: Delete Custom Script on Device +Usage: deleteOnDevice.py [options] + +Delete a Custom Script from a Device + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -c CUSTOMSCRIPTNAME, --customScriptName=CUSTOMSCRIPTNAME + Custom Script Name that resides on a Device + -e PHASE, --phase=PHASE + Execution phase. Must be one of the following: once- + before-startup | always-before-startup | once-after- + startup | always-after-startup + -n DEVICENAME, --device-name=DEVICENAME + Name of the device + + Mandatory options: + -H/--host, -n/--device-name +
+ +
+ Configuring the JSON File + + The JSON configuration file needed to remove a Custom Script + from a device must contain a list of dictionaries. Each dictionary + indicates the test case name and the test case arguments passed to the + customScripts/deleteOnDevice Python + module. + + Sample unit-test JSON file + format: + + [ +{ +"name": "Removing a Custom Script from device", +"args": "-c test_success_after_always -e always-after-startup -n inteld1521-6" +} +] +
+ +
+ Running the Python Module + + The customScripts/deleteOnDevice Python + module can be executed individually by running the following command + line: + + $ python automation_framework/customScripts/deleteOnDevice.py -c \ +test_success_after_always -e always-after-startup -n inteld1521-6 +2020-04-14 14:33:52,288 - DEBUG: Started logging +2020-04-14 14:33:52,288 - INFO: Delete Custom Script on Device +2020-04-14 14:33:52,327 - DEBUG: Login successful on host '172.24.3.109' +2020-04-14 14:33:52,327 - DEBUG: Session token is: 32cde4f0-7e4c-11ea-835c-02423a1c239f +2020-04-14 14:33:52,349 - DEBUG: Found device with name 'inteld1521-6' +2020-04-14 14:33:52,349 - DEBUG: Delete test_success_after_always, \ +phase always-after-startup from inteld1521-6 +2020-04-14 14:33:52,373 - INFO: Done +2020-04-14 14:33:52,391 - DEBUG: Logging out and exiting... +
+
+ +
+ Custom Script - Full Example + + All Python API used in this example are described in detail in the following sections. + + The list of custom scripts can be found in + <AF-TH-install-dir>/lab_config/customScripts: + + + + test_fail_after_always. Phase: + always-after-startup. + + + + test_fail_after_once. Phase: + once-after-startup. + + + + test_fail_before_always. Phase: + always-before-startup. + + + + test_fail_before_once. Phase: + once-before-startup. + + + + test_success_after_always. Phase: + always-after-startup. + + + + test_success_after_once. Phase: + once-after-startup. + + + + test_success_before_always. Phase: + always-before-startup. + + + + test_success_before_once. Phase: + once-before-startup. + + + + + The following example uses the + test_success_after_always custom script. + + +
+ Uploading a Custom Script to the Enea Edge Management + + $ python automation_framework/customScripts/upload.py \ +-f lab_config/customScripts/test_success_after_always -e always-after-startup +2020-04-14 14:08:02,824 - DEBUG: Started logging +2020-04-14 14:08:02,915 - INFO: Upload Custom Script +2020-04-14 14:08:02,994 - DEBUG: Login successful on host '172.24.3.109' +2020-04-14 14:08:02,995 - DEBUG: Session token is: 97544990-7e48-11ea-835c-02423a1c239f +2020-04-14 14:08:02,996 - DEBUG: Upload test_success_after_always to Enea Edge Management. \ +Content: #!/bin/bash +echo test_success_after_always +2020-04-14 14:08:03,138 - INFO: Done +2020-04-14 14:08:03,169 - DEBUG: Logging out and exiting... +
+ +
+ Uploading a Custom Script from the Enea Edge Management to a + Device + + $ python automation_framework/customScripts/uploadOnDevice.py -c \ +test_success_after_always -e always-after-startup -n inteld1521-6 +2020-04-14 14:26:26,205 - DEBUG: Started logging +2020-04-14 14:26:26,206 - INFO: Upload Custom Script on Device +2020-04-14 14:26:26,251 - DEBUG: Login successful on host '172.24.3.109' +2020-04-14 14:26:26,252 - DEBUG: Session token is: 28ebcb10-7e4b-11ea-835c-02423a1c239f +2020-04-14 14:26:26,286 - DEBUG: Found device with name 'inteld1521-6' +2020-04-14 14:26:26,287 - DEBUG: Upload test_success_after_always to inteld1521-6 +2020-04-14 14:26:26,314 - INFO: Done +2020-04-14 14:26:26,341 - DEBUG: Logging out and exiting... +
+ +
+ Removing a Custom Script from a Device + + $ python automation_framework/customScripts/deleteOnDevice.py -c \ +test_success_after_always -e always-after-startup -n inteld1521-6 +2020-04-14 14:33:52,288 - DEBUG: Started logging +2020-04-14 14:33:52,288 - INFO: Delete Custom Script on Device +2020-04-14 14:33:52,327 - DEBUG: Login successful on host '172.24.3.109' +2020-04-14 14:33:52,327 - DEBUG: Session token is: 32cde4f0-7e4c-11ea-835c-02423a1c239f +2020-04-14 14:33:52,349 - DEBUG: Found device with name 'inteld1521-6' +2020-04-14 14:33:52,349 - DEBUG: Delete test_success_after_always, \ +phase always-after-startup from inteld1521-6 +2020-04-14 14:33:52,373 - INFO: Done +2020-04-14 14:33:52,391 - DEBUG: Logging out and exiting... +
+ +
+ Removing a Custom Script from the Enea Edge Management + + $ python automation_framework/customScripts/delete.py -c \ +test_success_after_always -e always-after-startup +2020-04-14 14:39:22,042 - DEBUG: Started logging +2020-04-14 14:39:22,042 - INFO: Delete Custom Script on Enea Edge Management +2020-04-14 14:39:22,081 - DEBUG: Login successful on host '172.24.3.109' +2020-04-14 14:39:22,082 - DEBUG: Session token is: f75a83a0-7e4c-11ea-835c-02423a1c239f +2020-04-14 14:39:22,099 - DEBUG: Found custom script: 'test_success_after_always' +2020-04-14 14:39:22,099 - DEBUG: Delete script test_success_after_always, \ +phase always-after-startup from Enea Edge Management +2020-04-14 14:39:22,118 - INFO: Done +2020-04-14 14:39:22,135 - DEBUG: Logging out and exiting... +
+
+ +
+ Adding an Offline Configuration Store + + Steps and options on how to add a Config Store in the + Enea Edge Management are described below. + +
+ Script Options + + To add a config store in the Enea Edge Management use the + addConfigStore.py script detailed below. Bear in + mind a CONFIGSTORE json file is needed to + successfully run the script in order to add an offline configuration + store. +
+ +
+ Configuring the JSON file + + Example of a CONFIGSTORE json file: + + { + "descr": "intelc3850-2", + "version": "2.4.0", + "deviceGroupingTags": "", + "deviceId": "intelc3850-2", + "name": "intelc3850-2" +} +
+ +
+ Running the Python Module + + Adding an offline config store in the Enea Edge Management using + the command line: + + python automation_framework/device/addConfigStore.py -f \ +lab_config/inteld1521-16/store.json +2020-10-16 09:35:51,084 - INFO: Add offline config store +2020-10-16 09:35:51,160 - INFO: Done +
+
+ +
+ Uploading an Offline Configuration Store to an uCPE + Device + + Steps and options on how to upload a config store to a device are + described below. + +
+ Script options + + To upload a config store to a uCPE Device use the + uploadConfigStore.py script detailed + below. + + python uploadConfigStore.py -h +Usage: uploadConfigStore.py [options] + +Upload offline configuration to uCPE Device. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -s STORE, --store=STORE + Offline config store name + -d DEVICE, --device=DEVICE + Device Name + + Mandatory options: + -H/--host, -s/--store, -d/--device +
+ +
+ Running the Python Modules + + python automation_framework/device/uploadConfigStore.py -s inteld1521-16 \ +-d inteld1521-16 +2020-10-16 09:37:29,074 - INFO: Upload offline configuration to uCPE Device +2020-10-16 09:37:49,321 - INFO: The 'inteld1521-16' config store was successfully \ +uploaded on device! +2020-10-16 09:37:49,322 - INFO: Done +
+
+ +
+ Checking the Upload of an Offline Configuration Store + + Steps and options on how to check an upload of a Config Store to a + Device are described below. + +
+ Script options + + To check an upload a config store to a uCPE Device use the + getUploadStatus.py script detailed below. + + python getUploadStatus.py -h +Usage: getUploadStatus.py [options] + +Get upload offline configure status on uCPE Device. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -d DEVICE, --device=DEVICE + Device Name + + Mandatory options: + -H/--host, -d/--device +
+ +
+ Running the Python Modules + + python automation_framework/device/getUploadStatus.py -d inteld1521-16 +2020-10-16 09:38:33,388 - INFO: Get upload offline configure status on uCPE Device +2020-10-16 09:38:33,486 - INFO: Successful: True +2020-10-16 09:38:33,487 - INFO: Store name: inteld1521-16 +2020-10-16 09:38:33,488 - INFO: In progress: False +2020-10-16 09:38:33,489 - INFO: A config store was successfully uploaded on device! +2020-10-16 09:38:33,490 - INFO: Done +
+
+ +
+ Removing an Offline Configuration Store in the + Enea Edge Management + + Steps and options on how to remove an upload of a Config Store + from the Enea Edge Management are described below. + + + Modifications of an Offline Configurations Store are not + possible post deployment in the Enea Edge Management, as there is no option + for changing script states (e.g. changing the DPDK state in the + configDPDK.py python script or unbinding + interfaces). The offline store must be deleted and the new + state(s)/changes added in, before being deployed anew. This was not + deemed necessary for the current ZTP functionality. + + +
+ Script options + + To remove a config store from the Enea Edge Management use the + removeConfigStore.py script detailed + below. + + python removeConfigStore.py -h +Usage: removeConfigStore.py [options] + +Remove a config store from Enea Edge Management. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea Edge Management login username + -p PASSWORD, --password=PASSWORD + Enea Edge Management login password + -H HOST, --host=HOST Enea Edge Management host name or IP address + -o STORENAME, --store-name=STORENAME + Name of the Offline Config Store + + Mandatory options: + -H/--host, -o/--store-name +
+ +
+ Running the Python Modules + + python automation_framework/device/removeConfigStore.py -o inteld1521-16 +2020-10-16 09:39:39,127 - INFO: Remove offline config store +2020-10-16 09:39:39,289 - INFO: Done +
+
+
+ +
+ Test Harness + + All Test Harness sources are under the + <AF-TH-install-dir> directory and the host file + is the Ansible inventory file. See the complete tree listing at the + beginning of this chapter for details. + + The Ansible based Test Harness represents an example of how to + structure all the files needed for creating automated test cases using the + AF and provides a way to implement them. The + ansible.cfg file contains an example of the Ansible + default configuration. It offers the possibility to display the Ansible + console output in different ways, by setting the + stdout_callback option to selective + or debug. The default value for this option is set to + selective to print only certain tasks. It is + recommended to switch to debug when a test fails. By + setting the parameter any_errors_fatal to + True, task failures will be considered fatal errors + (the play execution will stop). and why would this stop of play + execution help in this debugging scenario + + All Playbooks that execute AF python modules run on + localhost. New entries have to be created for direct + communication over SSH with the boards, as done in the + [fortigateFW] example. + + The setup_env.sh script sets up the + testHarness test environment by creating + testHarness-venv python virtualenv, executing requests + needed by Automation Framework python modules and installing + Ansible. + + The Ansible package version installed in the test environment is + 2.9.6. The playbooks are based on this version of Ansible. + + The /playbooks directory contains all the + implemented Ansible Playbooks. For more details please refer to the Sample Test Cases Chapter in the + Manual. + + The /uCPEM_config directory stores JSON + configuration files needed for the setup of the Enea Edge Management used by TH. + One configuration file is needed per Enea Edge Management installation, to be used + in the TH. + + The /vnf_image directory stores the VNF Images + needed by the Ansible Playbooks (i.e. the sample test cases). + + The /lab_config directory stores the JSON + configuration files related to a device (devices, NICs and bridges) as + well as sample custom scripts. Each subfolder should be named exactly like + the device name and should contain all the related configuration files + needed for the test cases to be run on it. + + The /vnf_config directory stores the + configuration files related to a VNF Descriptor and VNF instances. + Typically these include a VNF Image JSON, VNF Instance JSON, VNF license + and any other files required by the type of the VNF. Each subfolder should + be named exactly like the name of the VNF Descriptor and should contain + all the related configuration files needed for test cases to be run using + this VNF. + + The /log directory is created when the + setup_env.sh is run. When test cases are run, the + Ansible and the Python logs are stored in the + ansible.log and debug.log files, + respectively. +
+
diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml new file mode 100644 index 0000000..e0a5cdf --- /dev/null +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml @@ -0,0 +1,33 @@ + + +]> + + <trademark class="registered">Enea</trademark> Enea Edge Automation Framework and Test Harness User Guide + + Release Version + + + + + + + + + + + + + + + + + diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml new file mode 100644 index 0000000..24a7a29 --- /dev/null +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml @@ -0,0 +1,137 @@ + + + Components + + An overview of the Enea Edge Runtime and the Edge Management + in cooperation with the Automation Framework and Test Harness, will + be presented in detail. + +
+ Component Overview + + + + + + +
+ +
+ Enea Edge + + Enea Edge is comprised of the Enea Edge Management and the Enea + Edge Runtime. + +
+ Enea Edge Management + + The Enea Edge Management application needs to be installed on a + supported platform. Upon installation, the system will be set up to + manage Enea Edge "devices", these are the virtualized CPE devices + used in testing. + + For more on Enea Edge Management installation instructions, please + refer to the section on how to Installing the Enea Edge Management in the + + Manual. +
+ +
+ Enea Edge Runtime + + One or more uCPE devices running the Enea Edge Runtime + are required as hosts to run the VNF(s). The uCPE device is + known to the Enea Edge Management as the "VcpeAgent" device module. + + + Before running any use case with the Automation Framework or the + Test Harness, make sure the uCPE device(s) have been added to the Edge Management. + + + Adding a VcpeAgent device can be done via two methods: + + + + Through the Enea Edge Management GUI. Add the device using the + appropriate parameters by launching the UI under + Devices -> Manage in the + main screen. + + + + REST API. Invoke the Enea Edge Management REST API to add a + device. + + + + For more on Enea Edge installation instructions, please + refer to chapter Preparing the USB stick for installation of the + Enea Edge Runtime in the + Manual. +
+
+ +
+ Automation Framework + + Testing can be performed by running the available Python scripts + against the Enea Edge Management REST API (Python samples supplied). This can be + done by using the Python scripts individually or by using the Python + unit-test suite that is able to automatically run test-cases defined for + each available Python script. + + In either case, it is desirable to use a different host (instead of + running the tests on the same system as the Enea Edge Management) in order to + ensure that the Enea Edge Management is setup and installed correctly in terms of + allowing external users to access it and use it effectively. +
+ +
+ Test Harness + + The Test Harness (TH) provides a way for driving configuration with + Ansible Playbooks, by running the python modules from the Automation + Framework (AF) and by direct connection over SSH to the boards that run + Enea Edge. + + The Test Harness includes an automated test suite that + contains: + + + + VNF, Device and Network Smoke Test Cases. A sample test suite + that acts as basic smoke tests for Enea Edge and also as a + sanity-check test suite for the AF and TH. + + + + VNF Deployment and Lifecycle. A sample test suite that verifies + the instantiation, lifecycle control and destruction of a VNF for Enea + Edge. + + + + Service Creation and Lifecycle. A sample test suite that + contains complex test cases showcasing service creation and lifecycle + management. + + + + For details about the test suites or test cases please refer to + chapter Sample Test Cases in the + Manual. +
+
\ No newline at end of file diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml new file mode 100644 index 0000000..97666cf --- /dev/null +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml @@ -0,0 +1,239 @@ + + + Getting Started with the Automation Framework and Test + Harness + +
+ Prerequisites + + For installation of the Automation Framework and Test Harness a + CentOS 7 host machine is needed with support for: + + + + Python 2.7. + + + + EPEL Repository:sudo yum install epel-release + + + + PIP package manager: sudo yum -y install python-pip + + + + Virtualenv tool: sudo pip install virtualenv + + + + + The Automation Framework and Test Harness installation may be done + on the same machine used for Enea Edge Management installation, although this is + not encouraged. For more details see section Automation Framework in the . + +
+ +
+ Environment + +
+ Lab setup overview for Basic Setup + + + + + + +
The following enviroment setup is needed for running all tests + defined in the + manual:
+ + Lab Network + Requirements + + DHCP enabled. + + + + Internet Connectivity. + + + + Enea Edge Management Host + Requirements + + + + Running CentOS 7. + + + + Connected to the Lab Network. + + + + Enea Edge Management installed. + + + For details on how to install the Enea Edge Management, see Installing the Enea Edge Management in the + + Manual. + + + + + uCPE device + Requirements + + Minimum of 4 Physical Network Devices. + + + + 4GB RAM and 4 cores (Intel C3000 or Xeon D). + + + + 2 Physical connections to the Lab Network. + + + + Enea Edge Runtime installed. + + + For information on how to install Enea Edge refer to + Preparing the USB stick for installation + of the Enea Edge Runtime in the + Manual. + + +
+ Lab Setup Overview for ChainedVNFsService + + + + + + +
+ + uCPE device 1 and 2 + Requirements + + Minimum of 4 Physical Network Devices. + + + + 16GB RAM and 8 cores (Intel C3000 or Xeon D). + + + + 2 Physical connections to the Lab Network. + + + + 1 Physical connection back to back between both uCPE + devices. + + + + Enea Edge Runtime installed. + + +
+ +
+ Installation and Initial Setup + + + + Unzip the + Enea_NFV_Access_AF-TH_<version>-build<build_number>.zip + archive file, provided by Enea, on a supported host machine. + + The directory in which the archive has been unpacked will be + denoted as <AF-TH-installdir>. + + + + Enter the <AF-TH-install-dir> directory + and run the setup_env.sh script to do the initial + setup of the Test Harness environment: source setup_env.sh + + + + Set up the Enea Edge Management which will be used by the TH: + + + + Create the Enea Edge Management JSON config file in the + <AF-TH-install-dir>/uCPEM_config/ + directory:{ +"ucpe_usr":"Enea Edge Management Username", +"ucpe_pass":"Enea Edge Management Password", +"ucpe_host":"Enea Edge Management IP/Hostname", +"ftp_usr":"FTP Username", +"ftp_pass":"FTP Password", +"ftp_port":"FTP Port" +}See the + <AF-TH-install-dir>/uCPEM_config/ucpem01.json + file as an example. + + + + Run the setupuCPEManager.yml Ansible + Playbook with the JSON config path as a parameter: + ansible-playbook playbooks/setupuCPEManager.yml -e\ +"@uCPEM_config/<config_name>.json" + + Example ansible-playbook playbooks/setupuCPEManager.yml -e\ +"@uCPEM_config/ucpem01.json" + + + + + + + The steps presented in this section are to be executed only once, + for the initial setup of the TH environment. + + + After the initial setup, each session ends by closing the Python + virtual environment through running deactivate from the + <AF-THinstall-dir> directory. + + Subsequent use of the installation requires activating the Python + virtual enviroment before using the Automation Framework and Test Harness: + source + <AF-TH-install-dir>/testHarness-venv/bin/activate. + + Furthermore, if a user wants to use a new Enea Edge Management instance for + a new session, the user also has to re-run the + setupuCPEManager.yml playbook with the corresponding + JSON config for the new Enea Edge Management instance. + + + Automation Framework and Test Harness History Information can be + found in the AF&TH CHANGELOG file available in: + <AF-TH-install-dir>/CHANGELOG + +
+
\ No newline at end of file diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png b/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png new file mode 100755 index 0000000..0329450 Binary files /dev/null and b/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png differ diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png b/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png new file mode 100755 index 0000000..a384877 Binary files /dev/null and b/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png differ diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/environment_basicsetup.png b/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/environment_basicsetup.png new file mode 100755 index 0000000..c30dcfd Binary files /dev/null and b/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/environment_basicsetup.png differ diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/overview.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/overview.xml new file mode 100644 index 0000000..b2486a0 --- /dev/null +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/overview.xml @@ -0,0 +1,188 @@ + + + Overview + + This document describes the Automation Framework and Test Harness for + Enea Edge, along with instructions regarding the necessary steps to + run these software tools. + +
+ Description + + The Automation Framework provides a way for driving configuration + with Python scripting. It complements the Enea Edge Management GUI and uses + the northbound REST APIs, given to provide full usability of the Enea Management + features. + + The Test Harness is based on running Ansible Playbooks to complete + different test cases, which make use of the Automation Framework Python + modules and/or direct commands on the uCPE devices running the Enea Edge Runtime. +
+ +
+ Definitions and Acronyms + + + Definitions + + + + + + + Component + + Description + + + + + + Enea Edge + + The Enea Edge (with ODM) Runtime and the + Enea Edge Management. + + + +
+ + + Acronyms + + + + + + + Component + + Description + + + + + + AF + + Automation Framework for Enea Edge. + + + + API + + Application Programming Interface. + + + + DHCP + + Dynamic Host Configuration Protocol. + + + + DPDK + + Data Plane Development Kit. + + + + FTP + + File Transfer Protocol. + + + + GUI + + Graphical User Interface. + + + + IP + + Internet Protocol. + + + + JSON + + JavaScript Object Notation. + + + + NIC + + Network Interface Card. + + + + NETCONF + + Network Configuration Protocol. + + + + NFV + + Network Functions Virtualization. + + + + ODM + + Enea Element On Device Management. + + + + OVS + + Open vSwitch. + + + + REST + + Representational State Transfer. + + + + SR-IOV + + Single Root Input/Output Virtualization. + + + + SSH + + Secure Shell. + + + + TH + + Test Harness for Enea Edge. + + + + Enea Edge Management + + Enea Universal Customer Premises Equipment Manager. + + + + VCPE + + Virtual Customer Premises Equipment. + + + + VNF + + Virtualized Network Function. + + + +
+
+
\ No newline at end of file diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/troubleshooting_guide.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/troubleshooting_guide.xml new file mode 100644 index 0000000..a5cd664 --- /dev/null +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/troubleshooting_guide.xml @@ -0,0 +1,43 @@ + + + Troubleshooting Guide + + The following are best practices and possible solutions to problems + that may occur during operation: + + + + All the Playbooks have to be run from the root directory of the + Test Harness (TH) to avoid failures such as "File not found!", since the + paths to the required configuration files are hardcoded into the + Playbooks. + + + + If the setup_env.sh fails, for debugging remove + &> /dev/null from the failed command. The + output of the command will be printed, and will not be redirected to + /dev/null anymore. + + + + When setting up the Enea Edge Management to be used by the TH through the + setupuCPEManager.yml Playbook, if the uCPE + username/password/host are incorrect or are missing, all the Sample test + cases will fail. If the FTP username/password/port are wrong or are + missing, the tests that require file transfer to the Enea Edge Management will + fail. + + + + Ansible logs are not written into the + log/ansible.log file when the + stdout_callback is set to + selective in the ansible.cfg file. + For debugging, check the python logs from the + log/debug.log file or change the + stdout_callback to debug and rerun + the test. + + + \ No newline at end of file diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/swcomp.mk b/doc/book-enea-edge-auto-fw-th-user-guide/swcomp.mk new file mode 100755 index 0000000..d17c2b3 --- /dev/null +++ b/doc/book-enea-edge-auto-fw-th-user-guide/swcomp.mk @@ -0,0 +1,10 @@ +# Component build specification + +# Version of THIS book +BOOK_VER ?= $(REL_VER)-dev + +DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print) + +BOOKPACKAGES := book-enea-edge-auto-fw-th-user-guide +BOOKDESC_$(BOOKPACKAGES) := "Enea Enea Edge $(PROD_VER) Automation Framework and Test Harness User Guide" +BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS) -- cgit v1.2.3-54-g00ecf From f4e0e6b56ee6d64526c7fc92f81e431300e36b7f Mon Sep 17 00:00:00 2001 From: Daniel Date: Mon, 22 Mar 2021 19:35:59 +0100 Subject: USERDOCAP-636 AFTH User Guide and OSR updates Change-Id: I5a9ed963da80e8681c5be80ff0d814a3b0feefc4 --- .../doc/about.xml | 2 +- .../doc/licenses.xml | 6 +- .../doc/automation_framework_test_harness.xml | 268 +++++++++++---------- .../doc/components.xml | 10 +- .../doc/getting_started.xml | 18 +- .../doc/overview.xml | 12 +- 6 files changed, 156 insertions(+), 160 deletions(-) (limited to 'doc/book-enea-edge-auto-fw-th-user-guide') diff --git a/doc/book-enea-edge-auto-fw-th-open-source/doc/about.xml b/doc/book-enea-edge-auto-fw-th-open-source/doc/about.xml index 4dc19aa..24f674d 100644 --- a/doc/book-enea-edge-auto-fw-th-open-source/doc/about.xml +++ b/doc/book-enea-edge-auto-fw-th-open-source/doc/about.xml @@ -5,7 +5,7 @@ About this Report This document contains the open source and license information - pertaining to the Automation Framework and Test Harness provided with + pertaining to the Enea Edge Automation Framework and Test Harness provided with Enea Edge - Automation Framework and Test Harness + Enea Edge Automation Framework and Test Harness - Automation Framework and Test Harness + Enea Edge Automation Framework and Test Harness ENEA-SRC-R2 - Copyright (C) 2019 by Enea. + Copyright (C) 2019 by Enea Software AB. All rights reserved. This Software is furnished under a software license agreement and diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml index a569d59..6a47839 100644 --- a/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml @@ -32,12 +32,14 @@ Commands within the network folder that include the option -o allow the user to perform the action in an offline configuration store alternative available for use at a - later setup time. Commands that include the -n option refer to a uCPE device, with the - operation being performed on uCPE device. All options contain either - -n, -o - or both. One of them must always be provided, if both are provided, -o - has priority, and -n is thus ignored. + later setup time. + Commands that include the -n + option refer to a uCPE device, with the operation being performed on uCPE device. + All options contain either -n, + -o or both. One of them must always be provided, + if both are provided, -o has priority, and -n is thus ignored. + In the following script examples Enea Edge Management + is reffered as Enea uCPE Manager. The /unittestSuite folder contains JSON files for @@ -88,16 +90,16 @@ $ python unittestSuite.py -h Usage: unittestSuite.py [options] -Run selected unit-test suite against Enea Edge Management. +Run selected unit-test suite against Enea uCPE Manager. Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -n DEVICENAME, --deviceName=DEVICENAME Name of vCPE device (Virtual Infrastructure Manager) -s SUITEFILE, --suite=SUITEFILE @@ -548,16 +550,16 @@ OK $ python addDevice.py -h Usage: addDevice.py [options] -Add a uCPE device in Enea Edge Management. +Add a uCPE device in Enea uCPE Manager. Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -f DEVICEFILE, --file=DEVICEFILE File containing uCPE Information in JSON format @@ -615,7 +617,7 @@ Options: 2019-03-07 17:33:10,756 - INFO: Add uCPE device 2019-03-07 17:33:10,975 - DEBUG: Login successful on host 'localhost' 2019-03-07 17:33:10,979 - DEBUG: Session token is: 508b6ea2-40ee-11e9-a81f525400d08e1d -2019-03-07 17:33:11,049 - DEBUG: Add new device 'intelc3850-2' to Enea Edge Management host +2019-03-07 17:33:11,049 - DEBUG: Add new device 'intelc3850-2' to uCPE Manager host 2019-03-07 17:33:11,483 - INFO: Done 2019-03-07 17:33:11,501 - DEBUG: Logging out and exiting.... @@ -633,16 +635,16 @@ Options: $ python removeDevice.py -h Usage: removeDevice.py [options] -Remove a uCPE from Enea Edge Management. +Remove a uCPE from Enea uCPE Manager. Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -f DEVICEFILE, --file=DEVICEFILE File containing uCPE Information in JSON format @@ -689,7 +691,7 @@ Options: 2019-03-07 17:33:56,835 - INFO: Remove uCPE device 2019-03-07 17:33:56,856 - DEBUG: Login successful on host 'localhost' 2019-03-07 17:33:56,856 - DEBUG: Session token is: 6bebcb43-40ee-11e9-a81f525400d08e1d -2019-03-07 17:33:56,856 - DEBUG: Delete device 'intelc3850-2' from Enea Edge Management +2019-03-07 17:33:56,856 - DEBUG: Delete device 'intelc3850-2' from uCPE Manager host 2019-03-07 17:33:56,875 - DEBUG: Found device with name 'intelc3850-2' 2019-03-07 17:33:57,159 - INFO: Done @@ -709,16 +711,16 @@ host $ python waitDeviceUp.py -h Usage: waitDeviceUp.py [options] -Wait for uCPE to connect to the Enea Edge Management after installation. +Wait for uCPE to connect to the Enea uCPE Manager after installation. Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -f DEVICEFILE, --file=DEVICEFILE File containing uCPE Information in JSON format -t TIMEOUT, --timeout=TIMEOUT @@ -787,14 +789,14 @@ Options: $ python getEventsForUcpe.py -h Usage: getEventsForUcpe.py [options] -Print the events log for a specific uCPE installed in Enea Edge Management. +Print the events log for a specific uCPE installed in Enea uCPE Manager. Options: --version show program's version number and exit -h, --help show this help message and exit --u USERNAME, --username=USERNAME Enea Edge Management login username --p PASSWORD, --password=PASSWORD Enea Edge Management login password --H HOST, --host=HOST Enea Edge Management host name or IP address +-u USERNAME, --username=USERNAME Enea uCPE Manager login username +-p PASSWORD, --password=PASSWORD Enea uCPE Manager login password +-H HOST, --host=HOST Enea uCPE Manager host name or IP address -f DEVICEFILE, --file=DEVICEFILE File containing uCPE Information in JSON format -s SEVERITY, --severity=SEVERITY Event severity level (Critical|Major|Minor) @@ -869,10 +871,10 @@ Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -s STATE, --state=STATE Enable/Disable -n DEVICENAME, --device-name=DEVICENAME @@ -936,10 +938,10 @@ Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -f NICFILE, --file=NICFILE File containing network interface Information in JSON format @@ -1042,10 +1044,10 @@ Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -f NICFILE, --file=NICFILE File containing network interface Information in JSON format @@ -1131,9 +1133,9 @@ Usage: getNetworkInterfaces.py [options] Options: --version show program's version number and exit -h, --help show this help message and exit - -u USERNAME, --username=USERNAME Enea Edge Management login username - -p PASSWORD, --password=PASSWORD Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + -u USERNAME, --username=USERNAME Enea uCPE Manager login username + -p PASSWORD, --password=PASSWORD Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -n DEVICENAME, --device-name=DEVICENAME Name of the uCPE to get network / interfaces from @@ -1215,10 +1217,10 @@ Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -f OVSFILE, --file=OVSFILE File containing OVS bridge Information in JSON format -n DEVICENAME, --device-name=DEVICENAME @@ -1306,10 +1308,10 @@ Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -f OVSFILE, --file=OVSFILE File containing OVS bridge Information in JSON format -n DEVICENAME, --device-name=DEVICENAME @@ -1389,16 +1391,16 @@ Options: $ python onboardVNFRaw.py -h Usage: onboardVNFRaw.py [options] -Onboard a VNF in Enea Edge Management based upon its raw constituents. +Onboard a VNF in Enea uCPE Manager based upon its raw constituents. Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -f FTPUSERNAME, --ftpUsername=FTPUSERNAME Username for FTP -w FTPPASSWORD, --ftpPassword=FTPPASSWORD @@ -1506,16 +1508,16 @@ Options: $ python offboardVNF.py -h Usage: offboardVNF.py [options] -Offboard a VNF from Enea Edge Management. +Offboard a VNF from Enea uCPE Manager. Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -n VNFDNAME, --vnfdName=VNFDNAME Name of VNF descriptor to offboard @@ -1571,16 +1573,16 @@ Options: $ python instantiateVNFI.py -h Usage: instantiateVNFI.py [options] -Instantiate a VNF via Enea Edge Management. +Instantiate a VNF via Enea uCPE Manager. Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -t VNFTYPE, --vnfType=VNFTYPE VNF Type (Name of VNF descriptor) -n VIMDEVICENAME, --device-name=VIMDEVICENAME @@ -1660,16 +1662,16 @@ License("vnf_config/fortigateImage/fortigateLicense.lic") $ python controlVNFI.py -h Usage: controlVNFI.py [options] -Controls a VNF instance from Enea Edge Management. +Controls a VNF instance from Enea uCPE Manager. Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -i VNFINSTANCENAME, --vnfInstanceName=VNFINSTANCENAME Name of VNF instance -n VIMDEVICENAME, --device-name=VIMDEVICENAME @@ -1744,16 +1746,16 @@ fortigateFWInstance -c stop $ python destroyVNFI.py -h Usage: destroyVNFI.py [options] -Destroys a VNF instance from Enea Edge Management. +Destroys a VNF instance from Enea uCPE Manager. Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -i VNFINSTANCENAME, --vnfInstanceName=VNFINSTANCENAME Name of VNF instance -n VIMDEVICENAME, --device-name=VIMDEVICENAME @@ -1801,28 +1803,28 @@ fortigateFWInstance
- Uploading a Enea Edge image onto the Enea Edge Management + Uploading an Enea Edge image onto the Enea Edge Management - Steps and options on how to Upload a Enea Edge image onto the + Steps and options on how to Upload an Enea Edge image onto the Enea Edge Management are described below.
Script Options $ python uploadImage.py -h -Upload NFVA image on Enea Edge Management +Upload NFVA image on uCPE Manager Usage: uploadImage.py [options] -Upload NFVA image on Enea Edge Management. +Upload NFVA image on uCPE Manager. Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -f FILENAME, --fileName=FILENAME Path to NFVA image file name -m MODULE, --module=MODULE @@ -1838,7 +1840,7 @@ Options:
Configuring the JSON File - The JSON configuration file needed to upload a Enea Edge image + The JSON configuration file needed to upload an Enea Edge image should contain a list of dictionaries. Each dictionary indicates the test case name and the test case arguments passed to the uploadImage Python module. @@ -1846,7 +1848,7 @@ Options: Sample unit-test JSON file format:[ { - "name": "Upload NFVA image on Enea Edge Management", + "name": "Upload NFVA image on uCPE Manager", "args": "-f /tmp/enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d" } ] @@ -1861,7 +1863,7 @@ Options: $ python uploadImage.py -u admin -p admin -H localhost \ -f /tmp/enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d 2020-02-28 11:38:42,754 - DEBUG: Started logging -2020-02-28 11:38:42,755 - INFO: Upload NFVA image on Enea Edge Management +2020-02-28 11:38:42,755 - INFO: Upload NFVA image on uCPE Manager 2020-02-28 11:38:43,307 - DEBUG: Login successful on host 'localhost' 2020-02-28 11:38:43,308 - DEBUG: Session token is: 7da3f960-5a16-11ea-a3de-5652b3ac1c30 2020-02-28 11:41:29,148 - INFO: Verify image validation flag @@ -1874,29 +1876,29 @@ Options:
- Deleting a Enea Edge image file from the + <title>Deleting an Enea Edge image file from the Enea Edge Management - Steps and options on how to Delete a Enea Edge image from the + Steps and options on how to Delete an Enea Edge image from the Enea Edge Management are described below.
Script Options $ python deleteUpgradeFile.py -h -Delete NFVA image from Enea Edge Management +Delete NFVA image from uCPE Manager Usage: deleteUpgradeFile.py [options] -Delete NFVA image from Enea Edge Management. +Delete NFVA image from uCPE Manager. Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -i IMAGENAME, --imageName=IMAGENAME NFVA Image name -m MODULE, --module=MODULE @@ -1909,7 +1911,7 @@ Options:
Configuring the JSON File - The JSON configuration file needed to delete a Enea Edge image + The JSON configuration file needed to delete an Enea Edge image should contain a list of dictionaries. Each dictionary indicates the test case name and the test case arguments passed to the deleteUpgradeFile Python module. @@ -1917,7 +1919,7 @@ Options: Sample unit-test JSON file format:[ { - "name": "Delete NFVA image on Enea Edge Management", + "name": "Delete NFVA image on uCPE Manager", "args": "-i enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2" } ] @@ -1932,7 +1934,7 @@ Options: $ python deleteUpgradeFile.py -u admin -p admin -H localhost -i \ enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 2020-02-28 12:06:20,111 - DEBUG: Started logging -2020-02-28 12:06:20,112 - INFO: Delete NFVA image from Enea Edge Management +2020-02-28 12:06:20,112 - INFO: Delete NFVA image from uCPE Manager 2020-02-28 12:06:20,210 - DEBUG: Login successful on host 'localhost' 2020-02-28 12:06:20,211 - DEBUG: Session token is: 594b2d50-5a1a-11ea-a3de-5652b3ac1c30 2020-02-28 12:06:20,255 - INFO: The image \ @@ -1948,10 +1950,10 @@ image was successfully removed
- Installing and activating a Enea Edge image on an uCPE device + <title>Installing and activating an Enea Edge image on an uCPE device from the Enea Edge Management - Steps and options on how to Install and Activate a Enea Edge + Steps and options on how to Install and Activate an Enea Edge image on an uCPE device from the Enea Edge Management are described below. @@ -1959,19 +1961,19 @@ image was successfully removed Script Options $ python installAndActivate.py -h -Install and activate NFVA image from Enea Edge Management +Install and activate NFVA image from uCPE Manager Usage: installAndActivate.py [options] -Install and activate NFVA image from Enea Edge Management. +Install and activate NFVA image from uCPE Manager. Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -i IMAGENAME, --imageName=IMAGENAME Image name -m MODULE, --module=MODULE @@ -1989,7 +1991,7 @@ Options:
Configuring the JSON File - The JSON configuration file needed to install and activate a Enea Edge + The JSON configuration file needed to install and activate an Enea Edge image on a uCPE device from the Enea Edge Management should contain a list of dictionaries. Each dictionary indicates the test case name and the test case arguments passed to the @@ -2000,7 +2002,7 @@ Options: [ { - "name": "Install and activate NFVA image on uCPE device from Enea Edge Management", + "name": "Install and activate NFVA image on uCPE device from uCPE Manager", "args": "-i enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d -d inteld1521-16" } ] @@ -2015,7 +2017,7 @@ Options: $ python installAndActivate.py -u admin -p admin -H localhost -i \ enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d -d inteld1521-16 2020-02-28 12:36:46,137 - DEBUG: Started logging -2020-02-28 12:36:46,138 - INFO: Install and activate NFVA image from Enea Edge Management +2020-02-28 12:36:46,138 - INFO: Install and activate NFVA image from uCPE Manager 2020-02-28 12:36:46,288 - DEBUG: Login successful on host 'localhost' 2020-02-28 12:36:46,288 - DEBUG: Session token is: 99b7cde0-5a1e-11ea-a3de-5652b3ac1c30 2020-02-28 12:36:46,325 - DEBUG: Found device with name 'inteld1521-16' @@ -2074,10 +2076,10 @@ Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address Mandatory options: -H/--host @@ -2122,16 +2124,16 @@ Options: 2020-04-14 10:26:23,582 - INFO: Upload Custom Script Usage: upload.py [options] -Add a Custom Script to Enea Edge Management +Add a Custom Script to Enea uCPE Manager Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -f CUSTOMSCRIPT, --file=CUSTOMSCRIPT Custom Script File -e PHASE, --phase=PHASE @@ -2156,7 +2158,7 @@ Options: [ { - "name": "Uploading a Custom Script to the Enea Edge Management", + "name": "Uploading a Custom Script to the uCPE Manager", "args": "-f ../../lab_config/customScripts/test_success_after_always \ -e always-after-startup" } @@ -2175,7 +2177,7 @@ Options: 2020-04-14 14:08:02,915 - INFO: Upload Custom Script 2020-04-14 14:08:02,994 - DEBUG: Login successful on host '172.24.3.109' 2020-04-14 14:08:02,995 - DEBUG: Session token is: 97544990-7e48-11ea-835c-02423a1c239f -2020-04-14 14:08:02,996 - DEBUG: Upload test_success_after_always to Enea Edge Management. \ +2020-04-14 14:08:02,996 - DEBUG: Upload test_success_after_always to uCPE Manager. \ Content: #!/bin/bash echo test_success_after_always 2020-04-14 14:08:03,138 - INFO: Done @@ -2203,12 +2205,12 @@ Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -c CUSTOMSCRIPTNAME, --customScriptName=CUSTOMSCRIPTNAME - Custom Script Name that resides on Enea Edge Management + Custom Script Name that resides on Enea uCPE Manager -e PHASE, --phase=PHASE Execution phase. Must be one of the following: once- before-startup | always-before-startup | once-after- @@ -2236,7 +2238,7 @@ Options: [ { -"name": "Uploading a Custom Script from Enea Edge Management to device", +"name": "Uploading a Custom Script from uCPE Manager to device", "args": "-c test_success_after_always -e always-after-startup -n inteld1521-6" } ] @@ -2272,7 +2274,7 @@ test_success_after_always -e always-after-startup -n inteld1521-6 Script Options $ python customScripts/delete.py -h -2020-04-14 14:36:52,010 - INFO: Delete Custom Script on Enea Edge Management +2020-04-14 14:36:52,010 - INFO: Delete Custom Script on uCPE Manager Usage: delete.py [options] Delete a Custom Script from a Device @@ -2281,10 +2283,10 @@ Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -c CUSTOMSCRIPTNAME, --customScriptName=CUSTOMSCRIPTNAME Custom Script Name that resides on a Device -e PHASE, --phase=PHASE @@ -2310,7 +2312,7 @@ Options: [ { -"name": "Removing a Custom Script from Enea Edge Management", +"name": "Removing a Custom Script from uCPE Manager", "args": "-c test_success_after_always -e always-after-startup" } ] @@ -2325,12 +2327,12 @@ Options: $ python automation_framework/customScripts/delete.py -c \ test_success_after_always -e always-after-startup 2020-04-14 14:39:22,042 - DEBUG: Started logging -2020-04-14 14:39:22,042 - INFO: Delete Custom Script on Enea Edge Management +2020-04-14 14:39:22,042 - INFO: Delete Custom Script on uCPE Manager 2020-04-14 14:39:22,081 - DEBUG: Login successful on host '172.24.3.109' 2020-04-14 14:39:22,082 - DEBUG: Session token is: f75a83a0-7e4c-11ea-835c-02423a1c239f 2020-04-14 14:39:22,099 - DEBUG: Found custom script: 'test_success_after_always' 2020-04-14 14:39:22,099 - DEBUG: Delete script test_success_after_always, \ -phase always-after-startup from Enea Edge Management +phase always-after-startup from uCPE Manager 2020-04-14 14:39:22,118 - INFO: Done 2020-04-14 14:39:22,135 - DEBUG: Logging out and exiting...
@@ -2355,10 +2357,10 @@ Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -c CUSTOMSCRIPTNAME, --customScriptName=CUSTOMSCRIPTNAME Custom Script Name that resides on a Device -e PHASE, --phase=PHASE @@ -2477,7 +2479,7 @@ phase always-after-startup from inteld1521-6 2020-04-14 14:08:02,915 - INFO: Upload Custom Script 2020-04-14 14:08:02,994 - DEBUG: Login successful on host '172.24.3.109' 2020-04-14 14:08:02,995 - DEBUG: Session token is: 97544990-7e48-11ea-835c-02423a1c239f -2020-04-14 14:08:02,996 - DEBUG: Upload test_success_after_always to Enea Edge Management. \ +2020-04-14 14:08:02,996 - DEBUG: Upload test_success_after_always to uCPE Manager. \ Content: #!/bin/bash echo test_success_after_always 2020-04-14 14:08:03,138 - INFO: Done @@ -2522,12 +2524,12 @@ phase always-after-startup from inteld1521-6 $ python automation_framework/customScripts/delete.py -c \ test_success_after_always -e always-after-startup 2020-04-14 14:39:22,042 - DEBUG: Started logging -2020-04-14 14:39:22,042 - INFO: Delete Custom Script on Enea Edge Management +2020-04-14 14:39:22,042 - INFO: Delete Custom Script on uCPE Manager 2020-04-14 14:39:22,081 - DEBUG: Login successful on host '172.24.3.109' 2020-04-14 14:39:22,082 - DEBUG: Session token is: f75a83a0-7e4c-11ea-835c-02423a1c239f 2020-04-14 14:39:22,099 - DEBUG: Found custom script: 'test_success_after_always' 2020-04-14 14:39:22,099 - DEBUG: Delete script test_success_after_always, \ -phase always-after-startup from Enea Edge Management +phase always-after-startup from uCPE Manager 2020-04-14 14:39:22,118 - INFO: Done 2020-04-14 14:39:22,135 - DEBUG: Logging out and exiting...
@@ -2599,10 +2601,10 @@ Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -s STORE, --store=STORE Offline config store name -d DEVICE, --device=DEVICE @@ -2645,10 +2647,10 @@ Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -d DEVICE, --device=DEVICE Device Name @@ -2696,16 +2698,16 @@ Options: python removeConfigStore.py -h Usage: removeConfigStore.py [options] -Remove a config store from Enea Edge Management. +Remove a config store from Enea uCPE Manager. Options: --version show program's version number and exit -h, --help show this help message and exit -u USERNAME, --username=USERNAME - Enea Edge Management login username + Enea uCPE Manager login username -p PASSWORD, --password=PASSWORD - Enea Edge Management login password - -H HOST, --host=HOST Enea Edge Management host name or IP address + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address -o STORENAME, --store-name=STORENAME Name of the Offline Config Store diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml index 24a7a29..33c1135 100644 --- a/doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml @@ -3,7 +3,7 @@ Components An overview of the Enea Edge Runtime and the Edge Management - in cooperation with the Automation Framework and Test Harness, will + in cooperation with the Enea Edge Automation Framework and Test Harness, will be presented in detail.
@@ -28,7 +28,7 @@ The Enea Edge Management application needs to be installed on a supported platform. Upon installation, the system will be set up to - manage Enea Edge "devices", these are the virtualized CPE devices + manage Enea Edge Runtime "devices", these are the virtualized CPE devices used in testing. For more on Enea Edge Management installation instructions, please @@ -49,7 +49,7 @@ known to the Enea Edge Management as the "VcpeAgent" device module. - Before running any use case with the Automation Framework or the + Before running any use case with the Enea Edge Automation Framework and Test Harness, make sure the uCPE device(s) have been added to the Edge Management. @@ -83,7 +83,7 @@
Automation Framework - Testing can be performed by running the available Python scripts + Testing can be performed by running Automation Framework (AF) Python scripts against the Enea Edge Management REST API (Python samples supplied). This can be done by using the Python scripts individually or by using the Python unit-test suite that is able to automatically run test-cases defined for @@ -100,7 +100,7 @@ The Test Harness (TH) provides a way for driving configuration with Ansible Playbooks, by running the python modules from the Automation - Framework (AF) and by direct connection over SSH to the boards that run + Framework and by direct connection over SSH to the boards that run Enea Edge. The Test Harness includes an automated test suite that diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml index 97666cf..1a6dc0b 100644 --- a/doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml @@ -1,12 +1,12 @@ - Getting Started with the Automation Framework and Test + <title>Getting Started with the Enea Edge Automation Framework and Test Harness
Prerequisites - For installation of the Automation Framework and Test Harness a + For installation of the Enea Edge Automation Framework and Test Harness a CentOS 7 host machine is needed with support for: @@ -28,7 +28,7 @@ - The Automation Framework and Test Harness installation may be done + The Enea Edge Automation Framework and Test Harness installation may be done on the same machine used for Enea Edge Management installation, although this is not encouraged. For more details see section Unzip the - Enea_NFV_Access_AF-TH_<version>-build<build_number>.zip + Enea_Edge_AF-TH_<version>-build<build_number>.zip archive file, provided by Enea, on a supported host machine. The directory in which the archive has been unpacked will be @@ -187,9 +187,9 @@ Create the Enea Edge Management JSON config file in the <AF-TH-install-dir>/uCPEM_config/ directory:{ -"ucpe_usr":"Enea Edge Management Username", -"ucpe_pass":"Enea Edge Management Password", -"ucpe_host":"Enea Edge Management IP/Hostname", +"ucpe_usr":"uCPE Manager Username", +"ucpe_pass":"uCPE Manager Password", +"ucpe_host":"uCPE Manager IP/Hostname", "ftp_usr":"FTP Username", "ftp_pass":"FTP Password", "ftp_port":"FTP Port" @@ -221,7 +221,7 @@ <AF-THinstall-dir> directory. Subsequent use of the installation requires activating the Python - virtual enviroment before using the Automation Framework and Test Harness: + virtual enviroment before using the Enea Edge Automation Framework and Test Harness: source <AF-TH-install-dir>/testHarness-venv/bin/activate. @@ -231,7 +231,7 @@ JSON config for the new Enea Edge Management instance. - Automation Framework and Test Harness History Information can be + Enea Edge Automation Framework and Test Harness History Information can be found in the AF&TH CHANGELOG file available in: <AF-TH-install-dir>/CHANGELOG diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/overview.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/overview.xml index b2486a0..4fec3d9 100644 --- a/doc/book-enea-edge-auto-fw-th-user-guide/doc/overview.xml +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/overview.xml @@ -2,8 +2,7 @@ Overview - This document describes the Automation Framework and Test Harness for - Enea Edge, along with instructions regarding the necessary steps to + This document describes the Enea Edge Automation Framework and Test Harness, along with instructions regarding the necessary steps to run these software tools.
@@ -40,7 +39,7 @@ Enea Edge - The Enea Edge (with ODM) Runtime and the + The Enea Edge Runtime and the Enea Edge Management. @@ -128,12 +127,7 @@ Network Functions Virtualization. - - ODM - - Enea Element On Device Management. - - + OVS -- cgit v1.2.3-54-g00ecf From 4a4215c0c2e1d64d70d07f0f7e47b7395b72c013 Mon Sep 17 00:00:00 2001 From: Daniel Date: Tue, 23 Mar 2021 16:25:38 +0100 Subject: USERDOCAP-636 Example Usecase updates Change-Id: I0ffe57e5099e6f380975191b4f8270bc8889d9a9 --- .../doc/automation_framework_test_harness.xml | 4 ++-- doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml | 2 +- doc/book-enea-edge-example-usecases/doc/appendix_4.xml | 10 +++++----- 3 files changed, 8 insertions(+), 8 deletions(-) (limited to 'doc/book-enea-edge-auto-fw-th-user-guide') diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml index 6a47839..8c4ee5e 100644 --- a/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml @@ -38,8 +38,8 @@ All options contain either -n, -o or both. One of them must always be provided, if both are provided, -o has priority, and -n is thus ignored. - In the following script examples Enea Edge Management - is reffered as Enea uCPE Manager. + In the following script examples, Enea Edge Management + is reffered as Enea uCPE Manager. The /unittestSuite folder contains JSON files for diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml index e0a5cdf..a1ffed1 100644 --- a/doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml @@ -4,7 +4,7 @@ ]> - <trademark class="registered">Enea</trademark> Enea Edge Automation Framework and Test Harness User Guide + <trademark class="registered">Enea</trademark> Edge Automation Framework and Test Harness User Guide Release Version - Running Enea Automation Framework and Test Harness + Running Enea Edge Automation Framework and Test Harness - For more detailed information regarding the Automation Framework and + For more detailed information regarding the Enea Edge Automation Framework and Test Harness please see the . - The most relevant information from the Automation Framework and Test + The most relevant information from the Enea Edge Automation Framework and Test Harness structure is presented below: |---automation_framework @@ -64,7 +64,7 @@ - version - The NFVA version. + version - The Enea Edge Runtime version. @@ -81,7 +81,7 @@ the uCPE Device needs to be added into Enea Edge Management. - To properly set up the Automation Framework and Test Harness please + To properly set up the Enea Edge Automation Framework and Test Harness please see Installation and Initial Setup in the Date: Thu, 25 Mar 2021 20:29:02 +0100 Subject: USERDOCAP-660 Enea Edge AFTH books updates Change-Id: Iae6801f17ed87697da0076c97b3765f425d05bd7 --- doc/book-enea-edge-auto-fw-th-open-source/doc/README | 4 ++-- .../doc/licenses.xml | 4 ++-- .../doc/automation_framework_test_harness.xml | 4 ++-- .../doc/components.xml | 12 ++++++------ .../doc/getting_started.xml | 16 ++++++++-------- 5 files changed, 20 insertions(+), 20 deletions(-) (limited to 'doc/book-enea-edge-auto-fw-th-user-guide') diff --git a/doc/book-enea-edge-auto-fw-th-open-source/doc/README b/doc/book-enea-edge-auto-fw-th-open-source/doc/README index e546e6f..a2c3d63 100644 --- a/doc/book-enea-edge-auto-fw-th-open-source/doc/README +++ b/doc/book-enea-edge-auto-fw-th-open-source/doc/README @@ -1,3 +1,3 @@ -The licenses.xml in the git repository of Enea NFV Access AFTH Open Source Report -is the frozen version belonging to the last official release of Enea NFV Access. +The licenses.xml in the git repository of Enea Edge AFTH Open Source Report +is the frozen version belonging to the last official release of Enea Edge. diff --git a/doc/book-enea-edge-auto-fw-th-open-source/doc/licenses.xml b/doc/book-enea-edge-auto-fw-th-open-source/doc/licenses.xml index dd9597e..397e2b8 100644 --- a/doc/book-enea-edge-auto-fw-th-open-source/doc/licenses.xml +++ b/doc/book-enea-edge-auto-fw-th-open-source/doc/licenses.xml @@ -40,7 +40,7 @@ xmlns:xi="http://www.w3.org/2001/XInclude" xpointer="element(EneaLinux_REL_VER/1)" /> - Configuration and Automation Framework for the Edge Manager + Configuration and Automation Framework for the Enea Edge Management GUI. ENEA-SRC-R2 @@ -54,7 +54,7 @@ xmlns:xi="http://www.w3.org/2001/XInclude" xpointer="element(EneaLinux_REL_VER/1)" /> - Configuration and Automation Framework for the Edge Manager + Configuration and Automation Framework for the Enea Edge Management GUI. ENEA-EXAMPLE-R2 diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml index 8c4ee5e..4fe1c9a 100644 --- a/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml @@ -2764,11 +2764,11 @@ Options: The /playbooks directory contains all the implemented Ansible Playbooks. For more details please refer to the Sample Test Cases Chapter in the + xpointer="element(book_enea_edge_system_test_specification/1)" /> Manual. The /uCPEM_config directory stores JSON diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml index 33c1135..60675a8 100644 --- a/doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml @@ -33,11 +33,11 @@ For more on Enea Edge Management installation instructions, please refer to the section on how to Installing the Enea Edge Management in the + xpointer="element(book_enea_edge_getting_started/1)" /> Manual.
@@ -70,12 +70,12 @@ For more on Enea Edge installation instructions, please - refer to chapter Preparing the USB stick for installation of the Enea Edge Runtime in the + xpointer="element(book_enea_edge_getting_started/1)" />
Manual.
@@ -127,11 +127,11 @@ For details about the test suites or test cases please refer to - chapter Sample Test Cases in the + xpointer="element(book_enea_edge_system_test_specification/1)" /> Manual.
\ No newline at end of file diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml index 55c5510..455e142 100644 --- a/doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml @@ -31,11 +31,11 @@ The Enea Edge Automation Framework and Test Harness installation may be done on the same machine used for Enea Edge Management installation, although this is not encouraged. For more details see section Automation Framework in the . + xpointer="element(book_enea_edge_auto_fw_th_user_guide/1)" />.
@@ -55,7 +55,7 @@ defined in the + xpointer="element(book_enea_edge_system_test_specification/1)" /> Manual: Lab Network @@ -86,11 +86,11 @@ For details on how to install the Enea Edge Management, see Installing the Enea Edge Management in the + xpointer="element(book_enea_edge_getting_started/1)" /> Manual. @@ -114,13 +114,13 @@ Enea Edge Runtime installed. - For information on how to install Enea Edge refer to - For information on how to install Enea Edge Runtime refer to + Preparing the USB stick for installation of the Enea Edge Runtime in the + xpointer="element(book_enea_edge_getting_started/1)" /> Manual. -- cgit v1.2.3-54-g00ecf From dca61bae299e6634568015a60e3a22b809206b8f Mon Sep 17 00:00:00 2001 From: mrpa Date: Fri, 2 Apr 2021 14:34:05 +0200 Subject: Updated all books with missing information tweaks etc, namely the Getting started Manual and the Release Notes. Change-Id: I4dc6999687fed9aa2081e896b8341194f5452f68 Signed-off-by: mrpa --- doc/Makefile | 10 +- .../doc/automation_framework_test_harness.xml | 226 +++++++------ .../doc/book.xml | 21 +- .../doc/components.xml | 56 ++-- .../doc/getting_started.xml | 40 +-- .../doc/overview.xml | 20 +- .../doc/troubleshooting_guide.xml | 14 +- .../doc/128t_vnf_router.xml | 7 +- .../doc/appendix_1.xml | 2 +- .../doc/appendix_2.xml | 2 +- .../doc/appendix_3.xml | 2 +- .../doc/appendix_4.xml | 21 +- .../doc/appendix_5.xml | 9 +- doc/book-enea-edge-example-usecases/doc/book.xml | 20 +- .../doc/clav_vnf_examples.xml | 96 +++--- .../doc/enea_test_vnf_examples.xml | 12 +- .../doc/forti_vnf_examples.xml | 6 +- .../doc/introduction.xml | 16 +- .../doc/service_chaining_128t_fortigate.xml | 12 +- .../doc/vnf_chaining.xml | 7 +- .../doc/advanced_configurations.xml | 241 ++++++++------ doc/book-enea-edge-getting-started/doc/book.xml | 38 +-- doc/book-enea-edge-getting-started/doc/grafana.xml | 232 +++++++------- .../doc/installation_guide.xml | 356 +++++++++++---------- .../doc/introduction.xml | 60 ++-- .../doc/log_collector.xml | 191 ++++++----- .../doc/net_config_options.xml | 77 ++--- .../doc/troubleshooting.xml | 82 ++--- .../doc/upgrade_ena.xml | 103 +++--- doc/book-enea-edge-getting-started/doc/vnf_mg.xml | 91 +++--- .../doc/about.xml | 4 +- .../doc/about_release.xml | 54 ++-- doc/book-enea-edge-release-info/doc/book.xml | 11 +- .../doc/known_bugs_and_limitations.xml | 137 ++++---- .../doc/main_changes.xml | 78 +++-- doc/docsrc_common/pardoc-distro.xml | 62 ++-- 36 files changed, 1311 insertions(+), 1105 deletions(-) (limited to 'doc/book-enea-edge-auto-fw-th-user-guide') diff --git a/doc/Makefile b/doc/Makefile index 1a1bd48..95cc7eb 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -23,13 +23,13 @@ include init.mk # ******************* AutoGenerated chapters from template and target READMEs ******* -#BUILDBOOT_XML := book-enea-nfv-access-release-info/doc/build_boot_generated.xml -#BUILDBOOT_TEMPLATE := book-enea-nfv-access-release-info/doc/build_boot_template.xml +#BUILDBOOT_XML := book-enea-edge-release-info/doc/build_boot_generated.xml +#BUILDBOOT_TEMPLATE := book-enea-edge-release-info/doc/build_boot_template.xml -#PKGDIFF_GEN_XML := book-enea-nfv-access-release-info/doc/pkgdiff_generated.xml -#JIRA_ISSUES_GEN_XML := book-enea-nfv-access-release-info/doc/jiraissues_generated.xml +#PKGDIFF_GEN_XML := book-enea-edge-release-info/doc/pkgdiff_generated.xml +#JIRA_ISSUES_GEN_XML := book-enea-edge-release-info/doc/jiraissues_generated.xml -MACHINE_LIST_XML := book-enea-nfv-access-release-info/doc/machine_list_generated.xml +MACHINE_LIST_XML := book-enea-edge-release-info/doc/machine_list_generated.xml ELTF_PARAMS_TEMPLATE := s_doceneacommon/doc/eltf_params_template.xml ELTF_PARAMS_UPDATED := s_doceneacommon/doc/eltf_params_updated.xml diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml index 4fe1c9a..9f6e64f 100644 --- a/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml +++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml @@ -1,4 +1,4 @@ - + Automation Framework and Test Harness @@ -11,15 +11,16 @@ The /device folder contains Python scripts for adding uCPE device(s), receiving uCPE events' reports, removing a uCPE - device, waiting for a uCPE device to connect to the Enea Edge Management, as well - as scripts for adding and removing an offline configuration store. This - folder also contains scripts for uploading and removing an NFVA image into - the Enea Edge Management, and for installing and activating a NFVA image on a uCPE - Device. + device, waiting for a uCPE device to connect to the Enea Edge Management + application, as well as scripts for adding and removing an offline + configuration store. This folder also contains scripts for uploading and + removing an NFVA image into the Enea Edge Management application, and for + installing and activating a NFVA image on a uCPE Device. The /customScripts folder contains Python scripts - for uploading custom scripts onto the Enea Edge Management and uCPE device(s), for - removing custom scripts from the Enea Edge Management and uCPE device(s). + for uploading custom scripts onto the Enea Edge Management application and + uCPE device(s), for removing custom scripts from the Enea Edge Management + application and uCPE device(s). The /network folder contains Python scripts for binding or unbinding a network interface to and from a uCPE device (DPDK @@ -32,14 +33,20 @@ Commands within the network folder that include the option -o allow the user to perform the action in an offline configuration store alternative available for use at a - later setup time. - Commands that include the -n - option refer to a uCPE device, with the operation being performed on uCPE device. - All options contain either -n, - -o or both. One of them must always be provided, - if both are provided, -o has priority, and -n is thus ignored. - In the following script examples, Enea Edge Management - is reffered as Enea uCPE Manager. + later setup time. + + Commands that include the -n + option refer to a uCPE device, with the operation being performed on + uCPE device. + + All options contain either -n, + -o or both. One of them must always be + provided, if both are provided, -o has priority, and -n is thus + ignored. + + In the following script examples, Enea Edge Management + is reffered as Enea uCPE + Manager. The /unittestSuite folder contains JSON files for @@ -81,8 +88,8 @@ the path to the file describing the test cases to be performed against the designated script. - Steps for running the Python unit-test suite on the Enea Edge Management - are provided below. + Steps for running the Python unit-test suite on the Enea Edge + Management application are provided below.
Script Options @@ -236,26 +243,27 @@ consoleLoggingLevel = logging.INFO username - The user authentication used to log into the - Enea Edge Management. This can be overwritten by setting the Python - unit-test suite command line option + The user authentication used to log into the Enea Edge + Management application. This can be overwritten by setting the + Python unit-test suite command line option -u. password - The password used to log into the Enea Edge Management. This - can be overwritten by setting the Python unit-test suite - command line option -p. + The password used to log into the Enea Edge Management + application. This can be overwritten by setting the Python + unit-test suite command line option + -p. host - The IP address of the Enea Edge Management host. This can be - overwritten by setting the Python unit-test suite command line - option -H. + The IP address of the Enea Edge Management application + host. This can be overwritten by setting the Python unit-test + suite command line option -H. @@ -541,8 +549,8 @@ OK
Adding a uCPE Device - Steps for adding, configuring and running a uCPE device onto the - Enea Edge Management are described below . + Steps for adding, configuring and running a uCPE device into the + Enea Edge Management application are described below .
Script Options @@ -626,8 +634,8 @@ Options:
Removing a uCPE Device - Steps for removing a uCPE device from the Enea Edge Management are - described below. + Steps for removing a uCPE device from the Enea Edge Management + application are described below.
Script Options @@ -703,7 +711,8 @@ host Waiting a uCPE Device Steps and details for how to Wait a uCPE device to connect to the - Enea Edge Management after installation, are described below. + Enea Edge Management application after installation, are described + below.
Script Options @@ -781,7 +790,8 @@ Options: Printing the uCPE Device Log Steps and details on how to Print the events log for a specific - uCPE device installed in the Enea Edge Management, are explained below. + uCPE device installed in the Enea Edge Management application, are + explained below.