kubeflow / kubeflow/notebooks

[TASK] Implement Logo/Icon Management API endpoints

Open
#874 2 comments 0 reactions 0 assignees View on GitHub
area/backend area/v2 kind/plan-task
Dominant language
No language data
Stars
84
Forks
149
Avg merge
5d 15h
Merged PRs (30d)
29

Description

### Certification

- [x] I certify I am an Epic Owner for Kubeflow Notebooks 2.0 and expected to create planning-related issues.

### Description

Following the agreement on architecture/implementation details in #873 , we need to deliver a full, production-ready implementation of the Logo/Icon Management API.

At a high level this involves:

- Defining the API contract (routes, request/response models) in
https://github.com/kubeflow/notebooks/tree/main/workspaces/backend/api with appropriate Swagger annotations
- Implementing business logic within
https://github.com/kubeflow/notebooks/tree/main/workspaces/backend/internal/repositories to interact with
Kubernetes API server for ConfigMap operations as defined in the agreed architecture
- Implementing handler logic to properly:
- Validate input data (image content, ConfigMap references, URL sources)
- Handle response conditions (success, not found, invalid image, etc.)
- Enforce authorization for image asset management
- Implementing image preview/validation logic for both URL and ConfigMap sources
- Adding unit tests covering:
- Common successful scenarios across all endpoints
- Error handling and validation cases
- Authorization enforcement

### Acceptance Criteria

- [] Full implementation of the Logo/Icon Management API logic across all endpoints as defined in the agreed architecture of #873
- [] ConfigMaps containing image assets can be listed, created, updated, and deleted via API
- [] Image preview/validation endpoints function for both URL and ConfigMap sources
- [] API endpoints enforce appropriate authorization
- [] API endpoints return clear error responses for invalid or inaccessible image sources
- [] All unit tests pass, covering common successful scenarios across all endpoints
- [] Swagger/OpenAPI documentation is generated via `make swag `

Contributor guide

Open the contributing guide

Research direction

First read the agreed architecture in issue #873, then inspect workspaces/backend/api and workspaces/backend/internal/repositories. Map the required endpoints, ConfigMap operations, validation, preview, and authorization requirements before implementing. Done means all acceptance criteria are covered, unit tests pass, and Swagger documentation is generated with make swag.

Written by the indexing model from the issue text.

Assessment

Tech stack
kubernetes, openapi
Domain
api, backend, infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.