mirror of
https://github.com/vvsviridov/enm-cli.git
synced 2025-10-23 08:22:21 +00:00
add img
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -2,3 +2,4 @@ node_modules
|
|||||||
.vscode
|
.vscode
|
||||||
package-lock.json
|
package-lock.json
|
||||||
.env
|
.env
|
||||||
|
img/*.yml
|
117
README.md
117
README.md
@@ -1,58 +1,70 @@
|
|||||||
# Cli application based on ENM (Ericsson Network Manager) REST API
|
# CLI application based on ENM (Ericsson Network Manager) REST API
|
||||||
|
|
||||||
[](https://github.com/vvsviridov/enm-cli)
|
[](https://github.com/vvsviridov/enm-cli)
|
||||||
[](https://www.npmjs.com/package/enm-cli)
|
[](https://www.npmjs.com/package/enm-cli)
|
||||||
|
|
||||||
## Main goal
|
## Key Features
|
||||||
|
|
||||||
A simple command line interface for some of the Ericsson Network Manager applications.
|
- 🚲 Simple and easy to use
|
||||||
|
- 📟 Does not require GUI
|
||||||
|
- 🚀 Faster than a web-browser
|
||||||
|
- 🏗 Allows to make changes in config mode
|
||||||
|
- 🤯 No needs to remember nodes IP addresses
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
First you need **node.js** which can be downloaded from official site [nodejs.org](https://nodejs.org/en/download/) and installed as described in the docs.
|
First you need **node.js** which can be downloaded from official site [nodejs.org](https://nodejs.org/en/download/) and installed as described in the docs.
|
||||||
|
|
||||||
Then you can run directly from NPM without installation
|
### Run directly from NPM without installation
|
||||||
|
|
||||||
```
|
```shell
|
||||||
npx enm-cli -u https://enm.your.company.domain.com
|
npx enm-cli -u https://enm.your.company.com
|
||||||
```
|
```
|
||||||
|
|
||||||
Or install with NPM
|
### Install with NPM
|
||||||
|
|
||||||
```
|
```shell
|
||||||
npm i enm-cli
|
npm install -g enm-cli
|
||||||
```
|
```
|
||||||
|
|
||||||
Or download this repository and run from the project root directory ...
|
### Download this repository and run from the project root directory
|
||||||
|
|
||||||
```
|
```shell
|
||||||
npm install
|
npm install
|
||||||
```
|
```
|
||||||
|
|
||||||
... to install dependencies,
|
... to install dependencies,
|
||||||
|
|
||||||
```
|
```shell
|
||||||
npm link
|
npm link
|
||||||
```
|
```
|
||||||
|
|
||||||
... to add application to your OS $PATH variable if you want to run it from anywhere.
|
... to add application to your OS $PATH variable if you want to run it from anywhere.
|
||||||
Now you can launch apllication
|
|
||||||
|
|
||||||
|
## Store your credentials
|
||||||
|
|
||||||
|
### Dotenv file
|
||||||
|
|
||||||
|
Create `.env` file in project's root folder and store your credentials as:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
LOGIN=YourLogin
|
||||||
|
PASSWORD=YourPassword
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Prompted by app
|
||||||
|
|
||||||
|
By default you'll be prompted for username and password
|
||||||
|
|
||||||
|
## Launch apllication
|
||||||
|
|
||||||
|
```shell
|
||||||
> enm-cli -l USERNAME -p PASSWORD -u https://enm.your.company.domain.com
|
> enm-cli -l USERNAME -p PASSWORD -u https://enm.your.company.domain.com
|
||||||
💾 Select Application: (Use arrow keys)
|
💾 Select Application: (Use arrow keys)
|
||||||
> Topology Browser
|
> Topology Browser
|
||||||
Auto Provisioning
|
Auto Provisioning
|
||||||
Bulk Import
|
Bulk Import
|
||||||
```
|
Shell Terminal
|
||||||
|
|
||||||
## Store your credentials to file
|
|
||||||
|
|
||||||
Create `.env` file in project's root folder and store your credentials as:
|
|
||||||
|
|
||||||
```
|
|
||||||
LOGIN=YourLogin
|
|
||||||
PASSWORD=YourPassword
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
@@ -61,7 +73,7 @@ Recommended environment is Windows Terminal (not _cmd.exe_) or any shell with ri
|
|||||||
|
|
||||||
### Help Page
|
### Help Page
|
||||||
|
|
||||||
```
|
```shell
|
||||||
> enm-cli --help
|
> enm-cli --help
|
||||||
Usage: enm-cli [options]
|
Usage: enm-cli [options]
|
||||||
|
|
||||||
@@ -69,16 +81,18 @@ Options:
|
|||||||
-V, --version output the version number
|
-V, --version output the version number
|
||||||
-l, --login <letters> ENM User Login (env: LOGIN)
|
-l, --login <letters> ENM User Login (env: LOGIN)
|
||||||
-p, --password <letters> ENM User Password (env: PASSWORD)
|
-p, --password <letters> ENM User Password (env: PASSWORD)
|
||||||
-a, --application <letters> Start specified application (choices: "tplg", "prvn", "bulk")
|
-a, --application <letters> Start specified application (choices: "tplg", "prvn", "bulk", "shll")
|
||||||
-u, --url <valid URL> ENM Url
|
-u, --url <valid URL> ENM Url
|
||||||
-h, --help display help for command
|
-h, --help display help for command
|
||||||
```
|
```
|
||||||
|
|
||||||
# AutoProvisioning Application
|
## AutoProvisioning Application
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
### Connection
|
### Connection
|
||||||
|
|
||||||
```
|
```shell
|
||||||
>enm-cli -l USERNAME -p PASSWORD -u https://enm.your.company.domain.com -a prvn
|
>enm-cli -l USERNAME -p PASSWORD -u https://enm.your.company.domain.com -a prvn
|
||||||
✔ Login in...
|
✔ Login in...
|
||||||
✔ Getting projects...
|
✔ Getting projects...
|
||||||
@@ -100,7 +114,7 @@ Options:
|
|||||||
|
|
||||||
Start typing and you see only commands and projects matches input.
|
Start typing and you see only commands and projects matches input.
|
||||||
|
|
||||||
```
|
```shell
|
||||||
323 projects> pro
|
323 projects> pro
|
||||||
──────────────
|
──────────────
|
||||||
──────────────
|
──────────────
|
||||||
@@ -124,7 +138,7 @@ Available commands are:
|
|||||||
- `[back]` - Return to projects.
|
- `[back]` - Return to projects.
|
||||||
- `[exit]` - Exit this app.
|
- `[exit]` - Exit this app.
|
||||||
|
|
||||||
```
|
```shell
|
||||||
323 projects> Project1 (1) 1✅
|
323 projects> Project1 (1) 1✅
|
||||||
✔ Getting Project1s status...
|
✔ Getting Project1s status...
|
||||||
✔ Getting Project1s properties...
|
✔ Getting Project1s properties...
|
||||||
@@ -155,7 +169,7 @@ Project1> (Use arrow keys or type to search)
|
|||||||
|
|
||||||
Select node ...
|
Select node ...
|
||||||
|
|
||||||
```
|
```shell
|
||||||
Project1 (RadioNode1) > (Use arrow keys or type to search)
|
Project1 (RadioNode1) > (Use arrow keys or type to search)
|
||||||
──────────────
|
──────────────
|
||||||
> [status]
|
> [status]
|
||||||
@@ -183,9 +197,11 @@ Available commands are:
|
|||||||
- `[back]` - Return to project's nodes.
|
- `[back]` - Return to project's nodes.
|
||||||
- `[exit]` - Exit this app.
|
- `[exit]` - Exit this app.
|
||||||
|
|
||||||
# TopologyBrowser Application
|
## TopologyBrowser Application
|
||||||
|
|
||||||
```
|

|
||||||
|
|
||||||
|
```shell
|
||||||
PS C:\> enm-cli -l USERNAME -p PASSWORD -u https://enm.your.company.domian.com -a tplg
|
PS C:\> enm-cli -l USERNAME -p PASSWORD -u https://enm.your.company.domian.com -a tplg
|
||||||
✔ Login in...
|
✔ Login in...
|
||||||
Authentication Successful
|
Authentication Successful
|
||||||
@@ -219,6 +235,7 @@ Authentication Successful
|
|||||||
- `[amos]` - launch advanced moshell (amos)
|
- `[amos]` - launch advanced moshell (amos)
|
||||||
- `[scripting]` - launch shell terminal on scripting VM
|
- `[scripting]` - launch shell terminal on scripting VM
|
||||||
- `[wfcli]` - launch WinFIOL CLI
|
- `[wfcli]` - launch WinFIOL CLI
|
||||||
|
- `[nodecli]` - launch Node CLI
|
||||||
- `[exit]` - logout and exit application
|
- `[exit]` - logout and exit application
|
||||||
|
|
||||||
### Advanced MOshell Scripting, Scripting Terminal and WinFIOL CLI
|
### Advanced MOshell Scripting, Scripting Terminal and WinFIOL CLI
|
||||||
@@ -229,7 +246,7 @@ These applications are executes on ENM virtual machines and does not required an
|
|||||||
|
|
||||||
Start typing and you see only matches commands to your input.
|
Start typing and you see only matches commands to your input.
|
||||||
|
|
||||||
```
|
```shell
|
||||||
SubNetwork=ONRM_ROOT_MO> subn
|
SubNetwork=ONRM_ROOT_MO> subn
|
||||||
> SubNetwork=Core
|
> SubNetwork=Core
|
||||||
SubNetwork=LTE
|
SubNetwork=LTE
|
||||||
@@ -241,7 +258,7 @@ SubNetwork=ONRM_ROOT_MO> exi
|
|||||||
|
|
||||||
You can navigate to the next level selecting object ...
|
You can navigate to the next level selecting object ...
|
||||||
|
|
||||||
```
|
```shell
|
||||||
SubNetwork=ONRM_ROOT_MO> subn
|
SubNetwork=ONRM_ROOT_MO> subn
|
||||||
SubNetwork=Core
|
SubNetwork=Core
|
||||||
SubNetwork=LTE
|
SubNetwork=LTE
|
||||||
@@ -255,7 +272,7 @@ SubNetwork=ONRM_ROOT_MO,SubNetwork=RNC>
|
|||||||
|
|
||||||
View objects attributes ...
|
View objects attributes ...
|
||||||
|
|
||||||
```
|
```shell
|
||||||
SubNetwork=ONRM_ROOT_MO,SubNetwork=RNC> show
|
SubNetwork=ONRM_ROOT_MO,SubNetwork=RNC> show
|
||||||
> show
|
> show
|
||||||
✔ Reading Topology...
|
✔ Reading Topology...
|
||||||
@@ -280,7 +297,7 @@ SubNetwork=ONRM_ROOT_MO,SubNetwork=RNC> MeContext=RNC01
|
|||||||
|
|
||||||
... show attributes with filter
|
... show attributes with filter
|
||||||
|
|
||||||
```
|
```shell
|
||||||
... Network=ONRM_ROOT_MO,SubNetwork=RNC,MeContext=RNC01> show Type
|
... Network=ONRM_ROOT_MO,SubNetwork=RNC,MeContext=RNC01> show Type
|
||||||
> show type
|
> show type
|
||||||
✔ Reading Topology...
|
✔ Reading Topology...
|
||||||
@@ -295,7 +312,7 @@ SubNetwork=ONRM_ROOT_MO,SubNetwork=RNC> MeContext=RNC01
|
|||||||
|
|
||||||
Return one level up in FDN tree ...
|
Return one level up in FDN tree ...
|
||||||
|
|
||||||
```
|
```shell
|
||||||
... Network=ONRM_ROOT_MO,SubNetwork=RNC,MeContext=RNC01> up
|
... Network=ONRM_ROOT_MO,SubNetwork=RNC,MeContext=RNC01> up
|
||||||
> up
|
> up
|
||||||
✔ Reading Topology...
|
✔ Reading Topology...
|
||||||
@@ -304,7 +321,7 @@ SubNetwork=ONRM_ROOT_MO,SubNetwork=RNC>
|
|||||||
|
|
||||||
Return to the root from anywhere ...
|
Return to the root from anywhere ...
|
||||||
|
|
||||||
```
|
```shell
|
||||||
... Network=ONRM_ROOT_MO,SubNetwork=RNC,MeContext=RNC01> home
|
... Network=ONRM_ROOT_MO,SubNetwork=RNC,MeContext=RNC01> home
|
||||||
> home
|
> home
|
||||||
✔ Reading Topology...
|
✔ Reading Topology...
|
||||||
@@ -313,13 +330,13 @@ SubNetwork=ONRM_ROOT_MO>
|
|||||||
|
|
||||||
Go to specific FDN ...
|
Go to specific FDN ...
|
||||||
|
|
||||||
```
|
```shell
|
||||||
... Network=ONRM_ROOT_MO,SubNetwork=RNC,MeContext=RNC01> fdn NetworkElement=RBS01
|
... Network=ONRM_ROOT_MO,SubNetwork=RNC,MeContext=RNC01> fdn NetworkElement=RBS01
|
||||||
```
|
```
|
||||||
|
|
||||||
And logout and exit ...
|
And logout and exit ...
|
||||||
|
|
||||||
```
|
```shell
|
||||||
... Network=ONRM_ROOT_MO,SubNetwork=RNC,MeContext=RNC01> exit
|
... Network=ONRM_ROOT_MO,SubNetwork=RNC,MeContext=RNC01> exit
|
||||||
> exit
|
> exit
|
||||||
✔ Logout...
|
✔ Logout...
|
||||||
@@ -340,7 +357,7 @@ Available commands are:
|
|||||||
- `[end]` - end config mode without commiting
|
- `[end]` - end config mode without commiting
|
||||||
- `[exit]` - logout and exit application
|
- `[exit]` - logout and exit application
|
||||||
|
|
||||||
```
|
```shell
|
||||||
... ManagedElement=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1> config
|
... ManagedElement=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1> config
|
||||||
> config
|
> config
|
||||||
✔ Reading Attributes...
|
✔ Reading Attributes...
|
||||||
@@ -366,7 +383,7 @@ Available commands are:
|
|||||||
|
|
||||||
To modify attribute select it ...
|
To modify attribute select it ...
|
||||||
|
|
||||||
```
|
```shell
|
||||||
... lement=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1(config)# userLabel
|
... lement=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1(config)# userLabel
|
||||||
... ent=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1(userLabel)#
|
... ent=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1(userLabel)#
|
||||||
commit
|
commit
|
||||||
@@ -380,7 +397,7 @@ To modify attribute select it ...
|
|||||||
|
|
||||||
Now you can get it ...
|
Now you can get it ...
|
||||||
|
|
||||||
```
|
```shell
|
||||||
... ent=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1(userLabel)# get
|
... ent=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1(userLabel)# get
|
||||||
> get
|
> get
|
||||||
|
|
||||||
@@ -394,14 +411,14 @@ Now you can get it ...
|
|||||||
|
|
||||||
And set it's value ...
|
And set it's value ...
|
||||||
|
|
||||||
```
|
```shell
|
||||||
... ent=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1(userLabel)# set
|
... ent=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1(userLabel)# set
|
||||||
? userLabel (STRING): ? test_label
|
? userLabel (STRING): ? test_label
|
||||||
```
|
```
|
||||||
|
|
||||||
Check configuration before applying
|
Check configuration before applying
|
||||||
|
|
||||||
```
|
```shell
|
||||||
... ent=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1(userLabel)# check
|
... ent=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1(userLabel)# check
|
||||||
|
|
||||||
FDN: SubNetwork=ONRM_ROOT_MO,SubNetwork=RBS,MeContext=ERBS01,ManagedElement=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1
|
FDN: SubNetwork=ONRM_ROOT_MO,SubNetwork=RBS,MeContext=ERBS01,ManagedElement=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1
|
||||||
@@ -412,7 +429,7 @@ Check configuration before applying
|
|||||||
|
|
||||||
Applying changes to the network ...
|
Applying changes to the network ...
|
||||||
|
|
||||||
```
|
```shell
|
||||||
... ent=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1(userLabel)# commit
|
... ent=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1(userLabel)# commit
|
||||||
|
|
||||||
FDN: SubNetwork=ONRM_ROOT_MO,SubNetwork=RBS,MeContext=ERBS01,ManagedElement=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1
|
FDN: SubNetwork=ONRM_ROOT_MO,SubNetwork=RBS,MeContext=ERBS01,ManagedElement=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1
|
||||||
@@ -424,7 +441,7 @@ Success
|
|||||||
|
|
||||||
View attribute's description
|
View attribute's description
|
||||||
|
|
||||||
```
|
```shell
|
||||||
... lement=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1(config)# acBarringForCsfb
|
... lement=ERBS01,ENodeBFunction=1,EUtranCellFDD=test1(config)# acBarringForCsfb
|
||||||
... S01,ENodeBFunction=1,EUtranCellFDD=test1(acBarringForCsfb)# description
|
... S01,ENodeBFunction=1,EUtranCellFDD=test1(acBarringForCsfb)# description
|
||||||
|
|
||||||
@@ -499,6 +516,14 @@ CONSTRAINTS
|
|||||||
Value Resolution: null
|
Value Resolution: null
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Bulk Import
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Shell Terminal
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
## Contribution
|
## Contribution
|
||||||
|
|
||||||
1. [Fork it]
|
1. [Fork it]
|
||||||
|
BIN
img/render1673690475520.gif
Normal file
BIN
img/render1673690475520.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 30 MiB |
BIN
img/render1673699059489.gif
Normal file
BIN
img/render1673699059489.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 7.6 MiB |
BIN
img/render1673699800882.gif
Normal file
BIN
img/render1673699800882.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 11 MiB |
BIN
img/render1673702182559.gif
Normal file
BIN
img/render1673702182559.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 13 MiB |
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "enm-cli",
|
"name": "enm-cli",
|
||||||
"version": "1.0.6a",
|
"version": "1.0.6b",
|
||||||
"description": "This is a cli application for Ericsson Network Manager (ENM)",
|
"description": "This is a cli application for Ericsson Network Manager (ENM)",
|
||||||
"bin": "./bin/enm-cli.js",
|
"bin": "./bin/enm-cli.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
Reference in New Issue
Block a user