-
Feature
-
Resolution: Unresolved
-
Critical
-
None
-
None
Feature Overview (mandatory - Complete while in New status)
An elevator pitch (value statement) that describes the Feature in a clear, concise way. ie: Executive Summary of the user goal or problem that is being solved, why does this matter to the user? The “What & Why”...
As part of discussions for rearchitecting Red Hat AI 3.x-series product and creating “mid-streams” for RHEL AI and AIPCC we are revisiting the idea of giving Red Hat customers AI application components as packages that they can use to build custom images for their workloads.
Of the options considered for delivering the packages, a public package index supports the most use cases. This feature will focus on the customer use cases. We can address midstream builds separately, since those environments won't have subscriptions.
Goals (mandatory - Complete while in New status)
Provide high-level goal statement, providing user context and expected user outcome(s) for this Feature
- Red Hat customers who build their own notebook or model customization pipeline images will be able to use our packages instead of upstream.
- Red Hat customers who want a secure source of client libraries for communicating with llama-stack and other services we support.
Requirements (mandatory -_ Complete while in Refinement status):
A list of specific needs, capabilities, or objectives that a Feature must deliver to satisfy the Feature. Some requirements will be flagged as MVP. If an MVP gets shifted, the Feature shifts. If a non MVP requirement slips, it does not shift the feature.
Requirement | Notes | isMVP? |
---|---|---|
Choose hosting solution for a public package index on a redhat.com or redhat.io URL | Yes | |
Establish the new service, including CMDB and DNS | ||
Update our wheel build tools to support uploading wheels to the new hosting service | Yes | |
Document the process for going from a request to include a wheel in the index to a user installing the wheel while building an image. | Yes | |
Document at least one process for mirroring the indexes for all variants of a platform version | Yes | |
Provide customer-facing base images (not necessarily the same as our internal images) that are configured to pull wheels from our public indexes automatically. | Yes | |
Done - Acceptance Criteria (mandatory - Complete while in Refinement status):
Acceptance Criteria articulates and defines the value proposition - what is required to meet the goal and intent of this Feature. The Acceptance Criteria provides a detailed definition of scope and the expected outcomes - from a users point of view
- Someone using an AIPCC base image can install packages from the public index using pip or uv, including when running inside a jupyter notebook, and including using subscription-manager to authenticate with the service.
- Index URLs are versioned with a major and minor version number. These will probably correspond to RHOAII versions, but don't have to.
Use Cases - i.e. User Experience & Workflow: (Initial completion while in Refinement status):
Include use case diagrams, main success scenarios, alternative flow scenarios
- Request a new package be added to the index.
- Build a package for the index.
- Update the index contents "atomically" based on builds so that we do not mix wheels with incompatible ABIs.
- Include multiple versions of some packages in the index.
Out of Scope {}{}(Initial completion while in Refinement status):
High-level list of items or persona’s that are out of scope.
- Selecting new packages to include in the index. We will seed it with a few of the important packages we already build. Requests for other packages should be included separately.
- Providing users access to the builder image so they can build versions of their own packages.
- Building binary wheels for platforms other than the AIPCC base images. (Pure python wheels may be used on RHEL.)
- Using the packages on other operating systems directly (Windows, macOS, Ubuntu, etc.)
- Providing developer support, internally or externally, for any of the packages in the index
Documentation Considerations {}{}(Initial completion while in Refinement status):
Provide information that needs to be considered and planned so that documentation will meet customer needs. If the feature extends existing functionality, provide a link to its current documentation..
<your text here>
- We need to document for users how to use the indexes when building their images, including how to authenticate.
- We need to document how to mirror the index, including using Red Hat portfolio products like Satellite and a more general approach for when using other tools.
Questions to Answer {}{}(Initial completion while in Refinement status):
Include a list of refinement / architectural questions that may need to be answered before coding can begin.
- Can we do this in time for 3.0?
- Seek prod sec feedback.
Background and Strategic Fit (Initial completion while in Refinement status):
Customer Considerations {}{}(Initial completion while in Refinement status):
Provide any additional customer-specific considerations that must be made when designing and delivering the Feature.
Team Sign Off (Completion while in Refinement status)
- All required Epics (known at the time) are linked to the this Feature
- All required Stories, Tasks (known at the time) for the most immediate Epics have been created and estimated
- Add - Reviewers name, Team Name
- Acceptance == Feature as “Ready” - well understood and scope is clear - Acceptance Criteria (scope) is elaborated, well defined, and understood
- Note: Only set FixVersion/s: on a Feature if the delivery team agrees they have the capacity and have committed that capability for that milestone
*An engineer or tech lead from the product requesting this feature is required for the signoff below.
Reviewed By | Team Name | Accepted | Notes |
dhellman@redhat.com | AIPCC | Author | |
cheimes@redhat.com | AIPCC (Application platform) | ||
jgreene@redhat.com | AI Eng | ||
bmbouter | Hosted Pulp | ||
mdean@redhat.com | AIPCC (Application platform) | ||
proguski@redhat.com | ProdSec | ||
rh-ee-mmilev | ProdSec | ||
egallen | PM |
- …
- blocks
-
AIPCC-5290 enable RHOAI adoption of AIPCC base images and packages
-
- New
-
-
AIPCC-1125 konflux hermetic builds of RH AI images
-
- Refinement
-
- is related to
-
AIPCC-1345 Migrate Wheel Hosting to Pulp
-
- Closed
-
-
RHCLOUD-41147 Expose /api/pulp/pypi/public-* without auth
-
- Closed
-
-
AIPCC-5365 create customer-facing base images
-
- In Progress
-
- links to