https://github.com/nokia/vscode-intent-manager
https://github.com/nokia/vscode-intent-manager
Last synced: 10 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/nokia/vscode-intent-manager
- Owner: nokia
- License: bsd-3-clause
- Created: 2023-05-24T11:08:17.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-10-22T01:24:13.000Z (over 1 year ago)
- Last Synced: 2024-10-22T12:12:05.252Z (over 1 year ago)
- Language: JavaScript
- Size: 681 KB
- Stars: 4
- Watchers: 7
- Forks: 3
- Open Issues: 22
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# NOKIA Intent Manager vsCode extension

This vsCode extension connects to Nokia NSP Intent Manager to facilitate Intent development and delivery.
> [!WARNING]
> **Known Issues and Limitations:**
> * Intent decorations are automatically updated by audit/sync methods to reduce server load. In some error scenarios the displayed alignment state does not reflect the server state. Consider to trigger a manual resync to reload alignment states from the backend server.
> * `process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0"` disables SSL verification (not recommended).
> * Log access (opensearch) is on-demand. Limits apply (check settings).
> * No local validation of intent-types. NSP will validate changes during upload/save.
> * If running NSP releases 23.11 and prior, some of the functionality may not be supported due to API restrictions
## License
Copyright 2024 Nokia
Licensed under the BSD 3-Clause License.
SPDX-License-Identifier: BSD-3-Clause
Nokia logo is trademark of Nokia
## Features
The vsCode extension for NSP Intent Manager allows the user to:
* Virtual remote file system to access intent-types and intents.
* Create, Update, Delete operations for intent-types and intents.
* Download intent-types (including resources).
* Upload intent-types from local file-system (git)
* Code snippets to accelerate coding.
* Retrieve logs from OpenSearch (filtered by intent-types and intents)
* Cross navigate to NSP WebUI in context of intent-types and intents
* Multi-target operations (sync, audit, set-state, logging)
* Deletion of intent-types including intents (confirmation dialogue)
This project is community-driven. This means that support is best-effort coming from the community
(i.e. anyone with access to the code extension) and contributions from the community are welcome at any time.
As such, this tool has not been scale tested and it is meant to help in the developer journey with a
limited number of intent-types and instances, but it is not designed to work in a production network setup.
Extensive logging is available for all communication between this vsCode plugin and NSP IM.
Check "OUTPUT" for more details.
## Build VSIX
Please make sure, you've got the following installed in your environment:
```
# npm install -g typescript
# npm install -g @vscode/vsce
```
Installation can be validated like this:
```
% npm list -g
/usr/local/lib/node_modules/node/lib
├── @vscode/vsce@2.27.0
└── typescript@5.4.5
```
Before you compile and build the distribution, make sure all depended modules
are installed:
```
% npm install .
% npm list
nokia-intent-manager@2.1.1 ~/dev/vscode-intent-manager
├── @types/node@18.19.34
├── @types/vscode@1.90.0
├── @typescript-eslint/eslint-plugin@6.21.0
├── @typescript-eslint/parser@6.21.0
├── @vscode/codicons@0.0.36
├── base-64@1.0.0
├── esbuild@0.21.5
├── eslint@8.57.0
├── lodash@4.17.21
├── node-fetch@2.7.0
├── nunjucks@3.2.4
├── typescript@5.4.5
├── vscode-uri@3.0.8
├── vse@0.5.1
└── yaml@2.4.5
```
To see all dependencies, you can run `npm list --all`.
In cases of any issues, visit the `npm doctor`.
To compile and generate the VSIX for installation, run:
vsce package
## Extension Settings and Usage
### General Settings
To configure the extension, you need to configure the following attributes in VsCode Extension Settings.
```
ctrl+shift+p > Preferences: Open Settings > Extensions > Intent Manager
```
* `Intent Manager > Parallel Operations: Enable`: Improve performance by running things in-parallel (EXPERIMENTAL)
* `Timeout`: Client-side timeout for NSP API calls
* `Ignore Labels`: Hide intent-types from the user based on labels (helps to focus)
### Connect to NSP IM
To connect to an NSP IM, you need to configure the following attributes in VsCode **workspace** settings:
```
ctrl+shift+p > Preferences: Open Workspace Settings > Extensions > Intent Manager
```
* `NSPIP`: IP-address or hostname of the NSP server
* `User`: NSP username to be used
* `Password`: NSP password to be used (password is hidden, using vsCode secrets)
* `Port`: Usage of port 443 is recommended
## Release Notes
See release changes in Changelog.
## Contributors
* [Alejandro Aguado](mailto:alejandro.aguado_martin@nokia.com)
* [Sven Wisotzky](mailto:sven.wisotzky@nokia.com)
## Important links
### NOKIA | Network Developer Portal
* [NSP Programmable Automation](https://network.developer.nokia.com/learn/24_8/programming)
**Enjoy!**