feat: add OCI artifact support in tag details view#528
Open
rchincha wants to merge 1 commit into
Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Adds OCI artifact awareness to the tag details view so artifact manifests expose appropriate pull instructions and display artifact-specific metadata/content.
Changes:
- Add ORAS pull command support and show ORAS as the default pull option for artifact manifests.
- Extend manifest modeling + API query to include
ArtifactTypeandLayers, and render “Artifact Type” in the metadata panel. - Render artifact “files” (layers) in the Layers tab via a new
ArtifactFileCardUI, with accompanying test coverage.
Reviewed changes
Copilot reviewed 10 out of 11 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| src/utilities/pullStrings.js | Adds orasPull() helper and exports it. |
| src/utilities/objectModels.js | Maps ArtifactType and normalizes Layers into a UI-friendly shape. |
| src/components/Tag/TagDetailsMetadata.jsx | Passes artifact context to pull dropdown and displays “Artifact Type” card. |
| src/components/Tag/TagDetails.jsx | Plumbs artifactType/layers from the selected manifest into tab content + metadata. |
| src/components/Tag/Tabs/HistoryLayers.jsx | Switches between “Layers” and “Artifact Files” rendering based on manifest type. |
| src/components/Shared/PullCommandButton.jsx | Adds ORAS tab/pull string support for artifacts. |
| src/components/Shared/ArtifactFileCard.jsx | New card component to display artifact layer/file details. |
| src/api.js | Extends image detail query to request ArtifactType + Layers on manifests. |
| src/tests/TagPage/TagDetails.test.jsx | Adds integration-style tests covering ORAS tab/copy and artifact metadata/files. |
| src/tests/TagPage/HistoryLayers.test.jsx | Adds unit tests for artifact file rendering cases. |
| package-lock.json | Lockfile updates from dependency resolution. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| const [isCopied, setIsCopied] = useState(false); | ||
| const [selectedPullTab, setSelectedPullTab] = useState(dockerPull(imageName)); | ||
| const [selectedPullTab, setSelectedPullTab] = useState(defaultPull); | ||
|
|
Comment on lines
+127
to
+134
| <Stack direction="row" onClick={() => setOpen((prev) => !prev)}> | ||
| {!open ? ( | ||
| <KeyboardArrowRight className={classes.dropdownText} /> | ||
| ) : ( | ||
| <KeyboardArrowDown className={classes.dropdownText} /> | ||
| )} | ||
| <Typography className={classes.dropdownButton}>DETAILS</Typography> | ||
| </Stack> |
Signed-off-by: Ramkumar Chinchani <rchincha.dev@gmail.com>
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #528 +/- ##
==========================================
+ Coverage 80.53% 80.62% +0.08%
==========================================
Files 62 63 +1
Lines 1690 1708 +18
Branches 222 223 +1
==========================================
+ Hits 1361 1377 +16
- Misses 266 268 +2
Partials 63 63 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What type of PR is this?
Which issue does this PR fix:
What does this PR do / Why do we need it:
If an issue # is not available please add repro steps and logs from IPAMD/CNI showing the issue:
Testing done on this change:
Automation added to e2e:
Will this break upgrades or downgrades. Has updating a running cluster been tested?:
Does this change require updates to the CNI daemonset config files to work?:
Does this PR introduce any user-facing change?:
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.