Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>airpuls RIC SDKNew to Visual Studio Code? Get it now.
airpuls RIC SDK

airpuls RIC SDK

airpuls GmbH

|
3 installs
| (0) | Free
Create and manage airpuls Near-RT RIC xApp projects: scaffolding, lifecycle actions, environment diagnostics, and RIC deploy targets, driven by the airpuls-sdk CLI.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

airpuls RIC SDK — VS Code extension

Create and manage airpuls Near-RT RIC xApp projects from inside VS Code. The extension is a front end for the airpuls-sdk CLI (the airpuls-sdk-cli Python distribution): every lifecycle operation runs the CLI, so behavior, validation, and remote effects are identical to the terminal workflow.

Features

  • New xApp from an empty window — the airpuls activity-bar view and the Explorer's empty state offer New xApp: a short prompt flow (name, description, deployment name, endpoint, sinks, image) that runs airpuls-sdk xapp new and opens the generated project. Prompts show their default as a hint and start empty; an empty answer takes the default.
  • Sidebar panel — the airpuls activity-bar container stacks three views beside the editor, so the panel never occupies an editor tab and coding continues while it is open:
    • Status — SDK installation (CLI, version, settings file), xApp identity (deployment name, endpoint, languages, schema type/version, sinks), and — for a tls:// project — the credential files under certs/ with per-file copy actions. Right-clicking the sinks row offers Add Sink…: pick a RIC and the flow probes that installation for the sink destinations it serves — its Redis, its InfluxDB — then writes the chosen one, endpoint and credentials included, into xapp.yml. The user never types a destination; the installation is the source of truth. Pending from the CLI: the probe document's sinks list and xapp add sink's discovery options.
    • Doctor — airpuls-sdk doctor as one node per environment check with a pass/warn/fail icon, the detail inline, and the remedial hint in the tooltip. Runs automatically the first time the view is revealed; the title-bar icon reruns it.
    • Deploy Targets — one node per registered RIC with the current xApp's deployment presence, and per target the staged xApp IPC transport (tls or plaintext) as the first child, the deployment's licence state right after it (the checkout's own verify-license.sh: offline checks plus online validation against the licence server it configures), the deployment stack's compose services with a run-state light (green up, red down; omitted when the checkout defines no compose stack), and the current xApp's credential files minted on the host. Probed through config ric probe on reveal and via the title-bar icon — every probe reads the target afresh, since the RIC configuration may change. Inline deploy / credentials / undeploy icons and registry actions in the context menu.
  • Lifecycle actions as view-title icons — new xApp, run, test, and deploy sit as icons in the Status view's title bar; build, validate, package, undeploy, deploy-with-image, and the credential actions are in its … overflow menu and the command palette. Interactive verbs run in an integrated terminal so streamed output, confirmation prompts, and the CLI's SSH password fallback work unchanged; quick verbs run captured and report as notifications with a transcript in the airpuls output channel.

Development use only

The Deploy Targets workflow — deploy, undeploy, credentials, and the probes — moves keys and certificates between this machine and the RIC host over SSH, and the copy actions place certificate and key material on the clipboard. That handling is acceptable in a development lab and nowhere else: never register a production RIC as a deploy target. A dialog states this before the first deploy target is registered; the acknowledgment is remembered, so it appears once.

Requirements

  • Python with the airpuls-sdk-cli distribution installed (pip install airpuls-sdk-cli) — provides the airpuls-sdk CLI. It installs wherever Python runs; Linux and macOS are its supported platforms, and on Windows the deployment actions need an SSH key the host already trusts. The CLI must speak the global --json flag; a release without it is reported with an upgrade hint.
  • The airpuls-ric-sdk runtime (pip install airpuls-ric-sdk, Linux x86_64) only for commands that execute an xApp — Run and the tests that import it. On other hosts, open the project in the Dev Container the scaffolding generates.
  • OpenSSH client tools for deploy, undeploy, credentials, and the deployment probes.
  • Docker for xapp package and deploy --with-image.

airpuls-sdk doctor (the Doctor tab) reports all of the above.

Settings

  • airpuls.cliPath — path to the airpuls-sdk executable. Empty resolves it from PATH, then ~/.local/bin.
  • airpuls.configFile — CLI settings file override, exported as AIRPULS_SDK_CONFIG to every CLI invocation. Empty uses the CLI's per-user default.

CLI output contract

Every captured invocation runs the CLI's machine-readable channel: the global --json flag makes an invocation write exactly one JSON document to stdout — {"schema": 1, "ok": …, "command": …, "data": …, "warnings": […]} plus an error block on failure — and never prompt. The extension parses only these documents (schema 1); no rendered output is ever interpreted. Facts come from --version, config show (the RIC registry and settings-file path), xapp info (project identity), doctor (environment checks), config ric probe (per-target reachability, staged transport, minted credentials, deployed entries), and the xapp new result. The filesystem contributes only what the CLI does not report: locating the enclosing xapp.yml and the presence of credential files under certs/. The extension opens no remote connections of its own — every remote fact arrives through the CLI, which probes in SSH batch mode without prompting. Interactive verbs run the CLI in text mode inside the integrated terminal, where its rendering and prompts are the interface.

Development

npm install
npm run compile      # tsc → out/
npm test             # node --test (pure parser modules)

Launch the extension with F5 (Run Extension) from VS Code, or build a VSIX with npm run package.

This project is self-contained: no references into the enclosing repository, movable to its own repository as-is. Its only coupling to the SDK is the airpuls-sdk command-line contract.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft