Skip to content

EPIC: Write a Get Component Version Command #448

@jakobmoellerdev

Description

@jakobmoellerdev

Description
What is the goal of this epic?

The goal of the epic is to write a basic CLI command that can serve as a baseline to replace ocm get cv

User Story

I as an OCM CLI stakeholder, wanto use the basic command in the form.

ocm get componentversions — Get Component Version

The options for the existing OCM implementation for this are

Options:
  -c, --constraints constraints   version constraint
  -h, --help                      help for componentversions
      --latest                    restrict component versions to latest
      --lookup stringArray        repository name or spec for closure lookup fallback
  -o, --output string             output mode (JSON, json, tree, wide, yaml)
  -r, --recursive                 follow component reference nesting
      --repo string               repository name or spec
  -S, --scheme string             schema version
  -s, --sort stringArray          sort fields

We want to offer support for this command without lookup support at first.

Scope
List all deliverables that are part of this epic. The Epic is considered DONE if all of the below mentioned deliverables are available.

  • Basic Lookup of a Component Version with CTF and OCI OCM repositories is working
  • [ ] A way to recursivley get component versions turns out this was not actually used by a majority of users so it was not implemented for now
  • A way to output the component descriptors in form json, yaml as well as a base output similar to the ocm table output
  • Scheme support for descriptors v2
  • Way to restrict component versions to latest only
  • Way to restrict component versions via a constraint argument

Out of Scope

  • Sorting fields
  • Lookup via closure fallbacks
  • Repository Name / Scope Lookups via Config are out of scope

Out of Scope
List features or implementation strategies that shouldn't be considered in this iteration.

Metadata

Metadata

Labels

area/ipceiImportant Project of Common European Interestkind/epicLarge multi-story topic

Type

No fields configured for Epic.

Projects

Status
🍺 Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions