Skip to content
This repository was archived by the owner on Mar 3, 2025. It is now read-only.

WIP: introduce source union type#59

Closed
joelanford wants to merge 1 commit intoapi-refactorfrom
source-union-type
Closed

WIP: introduce source union type#59
joelanford wants to merge 1 commit intoapi-refactorfrom
source-union-type

Conversation

@joelanford
Copy link
Copy Markdown
Member

DO NOT MERGE

This builds upon the api-refactor branch/PR and introduces a source union type with initial implementations for:

  • image (I manually tested this one)
  • https
  • git
  • configMaps

This will enable catalogd to source catalog contents from a variety of sources, not just container images.

@openshift-ci openshift-ci Bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Apr 28, 2023
@everettraven
Copy link
Copy Markdown
Collaborator

I know it is still a work in progress, but could we break this out into a PR for each source type? As is it is quite a bit of changes to go through and I think breaking it out would allow for better reviews on each individual source implementation.

@joelanford
Copy link
Copy Markdown
Member Author

I think we need to think about this a bit more. This is essentially copied from Rukpak, but I don't think we should have two nearly identical implementations because they will absolutely drift for no good reason.

Instead, I think we should consider one or both of:

  1. Having catalogd actually use rukpak to source the catalog via the Bundle API.
  2. Extracting Rukpak's sourcing API and implementations into a library that can be reused outside Rukpak contexts (right now the Bundle API is leaked into the sourcing logic).

If we do either of these, we may also need to pass around an io.ReadCloser rather than an fs.FS, which is more flexible, less opinionated, and potentially more performant.

@joelanford
Copy link
Copy Markdown
Member Author

Closing since this was overtaken by #65

@joelanford joelanford closed this May 24, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants