Skip to content

Publish the Registry Stack extension for VS Code #395

Description

@jeremi

Tracked by #399. Depends on #394 and #393.

Outcome

VS Code users can install a Registry Stack extension that combines the existing schema-driven YAML experience with the shared project language server and common registryctl project actions.

Depends on the schema-driven baseline and shared Registry Stack language server.

Requirements

  • Activate only when a workspace contains or opens a Registry Stack project.
  • Integrate with the Red Hat YAML extension for normal YAML validation, completion, hover, outline, and formatting.
  • Launch and supervise the shared Registry Stack language server.
  • Discover a compatible registryctl installation or configured language-server binary.
  • Report missing or incompatible binaries with an actionable installation/configuration message.
  • Expose project commands for:
    • registryctl check;
    • offline registryctl test;
    • registryctl build.
  • Never start live tests or read credentials implicitly.
  • Display command output through standard VS Code progress/output/problem surfaces.
  • Package for the Visual Studio Marketplace and Open VSX where policy and ownership allow.

Acceptance criteria

  • Installing the extension in a clean supported VS Code environment enables the schema and language-server features for a sample project.
  • The extension does not claim unrelated YAML files.
  • Language-server startup, restart, crash, missing binary, and version mismatch paths are tested.
  • Check, offline test, and build require an explicit user command and use the selected project/environment.
  • No command logs secret values or full environment contents.
  • Extension packaging is reproducible and has automated smoke tests on supported platforms.
  • Installation, binary discovery, settings, and troubleshooting are documented.
  • A release process and ownership location are documented before marketplace publication.

Non-goals

  • Implementing project semantics in TypeScript
  • Bundling a second copy of the Registry Stack compiler
  • Automatically running live integration tests

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions