Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] main from kubeflow:main #145

Merged
merged 16 commits into from
Nov 18, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
16 commits
Select commit Hold shift + click to select a range
5f55dbd
Revamp docs & codebase (#542)
lucferbux Nov 8, 2024
8c98717
build(deps-dev): bump ruff from 0.7.1 to 0.7.2 in /clients/python (#535)
dependabot[bot] Nov 11, 2024
a689e93
build(deps-dev): bump pytest-cov from 5.0.0 to 6.0.0 in /clients/pyth…
dependabot[bot] Nov 11, 2024
c451dda
build(deps): bump huggingface-hub from 0.26.1 to 0.26.2 in /clients/p…
dependabot[bot] Nov 11, 2024
a061879
Feat: InferenceService reconcile function (#541)
Al-Pragliola Nov 11, 2024
eb23d99
build(deps): bump aiohttp-retry from 2.9.0 to 2.9.1 in /clients/pytho…
dependabot[bot] Nov 11, 2024
a40dbb9
build(deps-dev): bump ruff from 0.7.2 to 0.7.3 in /clients/python (#552)
dependabot[bot] Nov 11, 2024
e6e9589
build(deps-dev): bump react-router-dom from 6.27.0 to 6.28.0 in /clie…
dependabot[bot] Nov 11, 2024
d8c7f6a
build(deps-dev): bump postcss from 8.4.47 to 8.4.48 in /clients/ui/fr…
dependabot[bot] Nov 11, 2024
f1efdd2
build(deps-dev): bump cypress-multi-reporters from 1.6.4 to 2.0.4 in …
dependabot[bot] Nov 11, 2024
46bb151
py: non-regression of user-feedback flow (#546)
tarilabs Nov 11, 2024
77f0edd
chore: py version bump (#545)
tarilabs Nov 11, 2024
30f7c26
feat(bff): load x-forwarded-access-token in cluster setup (#558)
ederign Nov 13, 2024
95e34e4
build(deps): bump eslint-plugin-react-hooks from 4.6.2 to 5.0.0 in /c…
ederign Nov 14, 2024
5e2506b
Enhance builds and push (#559)
lucferbux Nov 15, 2024
ee461ba
Update base MR service to include labels and annotations for the BFF …
Griffin-Sullivan Nov 18, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ Model registry provides a central repository for model developers to store and m
- [playground](https://petstore.swagger.io/?url=https://raw.githubusercontent.com/kubeflow/model-registry/main/api/openapi/model-registry.yaml)
- [license scanning](https://github.com/kubeflow/model-registry/issues/323)
- [monitoring image quality](https://github.com/kubeflow/model-registry/issues/327)
8. [UI](.clients/ui/README.md)

## Pre-requisites:
- go >= 1.21
Expand Down
4 changes: 2 additions & 2 deletions clients/python/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,11 @@ deploy-latest-mr:

.PHONY: test-e2e
test-e2e: deploy-latest-mr
poetry run pytest --e2e -s
poetry run pytest --e2e -s -rA

.PHONY: test
test:
poetry run pytest -s
poetry run pytest -s -rA

.PHONY: lint
lint:
Expand Down
2 changes: 2 additions & 0 deletions clients/python/noxfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ def tests(session: Session) -> None:
)
session.run(
"pytest",
"-rA",
*session.posargs,
)

Expand All @@ -81,6 +82,7 @@ def e2e_tests(session: Session) -> None:
session.run(
"pytest",
"--e2e",
"-rA",
"--cov",
"--cov-config=pyproject.toml",
*session.posargs,
Expand Down
62 changes: 31 additions & 31 deletions clients/python/poetry.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions clients/python/pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tool.poetry]
name = "model-registry"
version = "0.2.10"
version = "0.2.11"
description = "Client for Kubeflow Model Registry"
authors = ["Isabella Basso do Amaral <idoamara@redhat.com>"]
license = "Apache-2.0"
Expand Down Expand Up @@ -43,7 +43,7 @@ sphinx-autobuild = ">=2021.3.14,<2025.0.0"
[tool.poetry.group.dev.dependencies]
pytest = ">=7.4.2,<9.0.0"
coverage = { extras = ["toml"], version = "^7.3.2" }
pytest-cov = ">=4.1,<6.0"
pytest-cov = ">=4.1,<7.0"
ruff = ">=0.5.2,<0.8.0"
mypy = "^1.7.0"
pytest-asyncio = ">=0.23.7,<0.25.0"
Expand Down
2 changes: 1 addition & 1 deletion clients/python/src/model_registry/__init__.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
"""Main package for the Kubeflow model registry."""

__version__ = "0.2.10"
__version__ = "0.2.11"

from ._client import ModelRegistry

Expand Down
33 changes: 33 additions & 0 deletions clients/python/tests/test_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -230,6 +230,39 @@ async def test_update_preserves_model_info(client: ModelRegistry):
assert updated_ma.model_format_version == model_fmt_version


@pytest.mark.e2e
async def test_update_existing_model_artifact(client: ModelRegistry):
"""Updating uri (or other properties) by re-using and call to update

reported via slack
"""
name = "test_model"
version = "1.0.0"
rm = client.register_model(
name,
"s3",
model_format_name="test_format",
model_format_version="test_version",
version=version,
)
assert rm.id
mv = client.get_model_version(name, version)
assert mv
assert mv.id
ma = client.get_model_artifact(name, version)
assert ma
assert ma.id

something_else = "https://something.else/model.onnx"
ma.uri = something_else
response = client.update(ma)
assert response
assert response.uri == something_else

ma = client.get_model_artifact(name, version)
assert ma.uri == something_else


@pytest.mark.e2e
async def test_get(client: ModelRegistry):
name = "test_model"
Expand Down
5 changes: 5 additions & 0 deletions clients/ui/.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@

############### Default settings ###############
CONTAINER_TOOL=docker
IMG_BFF=kubeflow/model-registry-bff:dev-latest
IMG_FRONTEND=kubeflow/model-registry-ui:dev-latest
8 changes: 8 additions & 0 deletions clients/ui/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# editor
.idea/
.vscode/

# misc
.DS_Store

.env*.local
79 changes: 79 additions & 0 deletions clients/ui/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
DEFAULT_ENV_FILE := .env
ifneq ("$(wildcard $(DEFAULT_ENV_FILE))","")
include ${DEFAULT_ENV_FILE}
export $(shell sed 's/=.*//' ${DEFAULT_ENV_FILE})
endif

DEV_ENV_FILE := .env.development
ifneq ("$(wildcard $(DEV_ENV_FILE))","")
include ${DEV_ENV_FILE}
export $(shell sed 's/=.*//' ${DEV_ENV_FILE})
endif

ENV_FILE := .env.local
ifneq ("$(wildcard $(ENV_FILE))","")
include ${ENV_FILE}
export $(shell sed 's/=.*//' ${ENV_FILE})
endif

.PHONY: all
all: build

.PHONY: help
help: ## Display this help.
@awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n make \033[36m<target>\033[0m\n"} /^[a-zA-Z_0-9-]+:.*?##/ { printf " \033[36m%-15s\033[0m %s\n", $$1, $$2 } /^##@/ { printf "\n\033[1m%s\033[0m\n", substr($$0, 5) } ' $(MAKEFILE_LIST)


############ Dev Environment ############

.PHONY: dev-install-dependencies
dev-install-dependencies:
cd frontend && npm install

.PHONY: dev-bff
dev-bff:
cd bff && make run PORT=4000 MOCK_K8S_CLIENT=true MOCK_MR_CLIENT=true

.PHONY: dev-frontend
dev-frontend:
cd frontend && npm run start:dev

.PHONY: dev-start
dev-start:
make -j 2 dev-bff dev-frontend

############ Build ############

.PHONY: build-bff
build-bff:
$(CONTAINER_TOOL) build -t ${IMG_BFF} ./bff

.PHONY: build-frontend
build-frontend:
$(CONTAINER_TOOL) build -t ${IMG_FRONTEND} ./frontend

.PHONY: build
build: build-bff build-frontend

############ Push ############

.PHONY: push-bff
push-bff:
${CONTAINER_TOOL} push ${IMG_BFF}

.PHONY: push-frontend
push-frontend:
${CONTAINER_TOOL} push ${IMG_FRONTEND}

.PHONY: push
push: push-bff push-frontend

############ Deployment ############

.PHONY: docker-compose
docker-compose:
$(CONTAINER_TOOL) compose -f docker-compose.yaml up

.PHONY: kind-deployment
kind-deployment:
./scripts/deploy_kind_cluster.sh
Loading
Loading