* Out-of-the-box support TrainJob
Signed-off-by: Ram Lau <[email protected]>
* Example for Pytorch Distributed
Signed-off-by: Ram Lau <[email protected]>
* Update examples/v1beta1/kubeflow-training-operator/trainjob-pytorch.yaml
Co-authored-by: Andrey Velichkevich <[email protected]>
Signed-off-by: Ram Lau <[email protected]>
* Create folder for Trainer as suggested
Signed-off-by: Ram Lau <[email protected]>
* Movethe exmaple of trainjob to the new folder
Signed-off-by: Ram Lau <[email protected]>
* Ref the primaryContainerName to that of ClusterTrainingRuntime
Signed-off-by: Ram Lau <[email protected]>
* tenzen-y steps down from Katib approver role (#2561)
Signed-off-by: Yuki Iwai <[email protected]>
Signed-off-by: Ram Lau <[email protected]>
* Set Default value for TrainJob Success, Failure Condition and PrimaryPodLabels in the trial Template
Signed-off-by: Ram Lau <[email protected]>
* Enchance Handling for default value of Success, Fail Cond & Pod Label
Signed-off-by: Ram Lau <[email protected]>
* Bug fix for default value condition
Signed-off-by: Ram Lau <[email protected]>
* code format by hack/update-gofmt.sh
Signed-off-by: Ram Lau <[email protected]>
* add TrainJob trial Resources to cert manager config
Signed-off-by: Ram Lau <[email protected]>
* add trainjob to controller rbac
Signed-off-by: Ram Lau <[email protected]>
* Grant JobSet permission to Katib controller
Signed-off-by: Andrey Velichkevich <[email protected]>
* Remove create/delete RBAC for TrainJob
Signed-off-by: Andrey Velichkevich <[email protected]>
* Fix docker build with libpcre2
Signed-off-by: Andrey Velichkevich <[email protected]>
---------
Signed-off-by: Ram Lau <[email protected]>
Signed-off-by: Yuki Iwai <[email protected]>
Signed-off-by: Andrey Velichkevich <[email protected]>
Co-authored-by: Andrey Velichkevich <[email protected]>
Co-authored-by: Yuki Iwai <[email protected]>
* Chnage the isort profile to black, and add pkg dir for black and flake8
Signed-off-by: Ignas Baranauskas <[email protected]>
* Fix the formating
Signed-off-by: Ignas Baranauskas <[email protected]>
* Fix flake8 lint issues
Signed-off-by: Ignas Baranauskas <[email protected]>
---------
Signed-off-by: Ignas Baranauskas <[email protected]>
* Consolidate the katib-cert-generator to the katib-controller
Signed-off-by: Yuki Iwai <[email protected]>
* Use deployed secret instead of creating a new secret when the cert-generator saves certs on secret
Signed-off-by: Yuki Iwai <[email protected]>
* Rename secretName with webhookSecretName in the .init.certGenerator
Signed-off-by: Yuki Iwai <[email protected]>
* Fix manifests
Signed-off-by: Yuki Iwai <[email protected]>
* Remove unneeded comments
Signed-off-by: Yuki Iwai <[email protected]>
* Restore unintentionally deleted log
Signed-off-by: Yuki Iwai <[email protected]>
* Rename package cert-generator with certgenerator
Signed-off-by: Yuki Iwai <[email protected]>
* Add test cases to check if the enable is set to true when the webhookServiceName or webhookSecretName is set
Signed-off-by: Yuki Iwai <[email protected]>
* Update the developer guide
Signed-off-by: Yuki Iwai <[email protected]>
* Swap livness probe and readiness probe
Signed-off-by: Yuki Iwai <[email protected]>
* Introduce SSA to the cert-generator
Signed-off-by: Yuki Iwai <[email protected]>
* Use the same member names between CertGenerator and KatibConfig
Signed-off-by: Yuki Iwai <[email protected]>
* Disable leader election on the cert-generator
Signed-off-by: Yuki Iwai <[email protected]>
* Drop unneeded fields from SSA patches
Signed-off-by: Yuki Iwai <[email protected]>
---------
Signed-off-by: Yuki Iwai <[email protected]>
* Backend for getting logs of a trial
* Check Write return + use PrimaryPodLabels
* Add auth + use constants for labels + cleanup
* TODO comment for using controller-runtime client for logs
* Authorization for list pods and get logs, reduce RBAC
* Use corev1 for specifying resources, edit kf install RBAC
* Check namespace and trialName from request
* Remove auth checks for listing the pods
* Use context.Background()
* UI(back): Add authorization mechanisms in new Katib UI backend
* Introduce helper ENV vars and functions for authentication and
authorization checks. The authz checks are using SubjectAcessReviews
objects.
* BACKEND_MODE={dev,prod}: skip authz when in dev mode
* APP_DISABLE_AUTH={bool}: skip authz if explicity requested
* Introduce a client-go client to construct SubjectAccessReview objects.
* Before any request proceed to K8s api-server:
* check if authorization must be skipped (BACKEND_MODE, APP_DISBLE_AUTH)
* check if a username is proviced in request Header
* query the K8s api-server with SAR to ensure that the user has
appropriate access privilleges
* Replace the /katib/fetch_experiment/ route with /katib/fetch_namespaces_experiments.
This route expects a namespace as a query parameter from which all experiments will be fetched.
Signed-off-by: Apostolos Gerakaris <[email protected]>
* UI(front): Provide a namespace as a query parameter
This is needed for the new /katib/fetch_namespaced_experiments route.
Signed-off-by: Apostolos Gerakaris <[email protected]>
* Update README for running locally without auth
Update the README of the web app to expose that devs should set
APP_DISABLE_AUTH=true when running locally, since there's no authnz when
running locally.
Signed-off-by: Apostolos Gerakaris <[email protected]>
* remove duplicated variable types
Signed-off-by: Apostolos Gerakaris <[email protected]>
* Review fixes
* proper error handling.
* switch to Go's build-in errors package.
* set appropriate verbs when constructing SAR objects.
Signed-off-by: Apostolos Gerakaris <[email protected]>
* review: Use controller-runtime client to create SAR objects
Signed-off-by: Apostolos Gerakaris <[email protected]>
* Review fixes
* fix backend routes.
* '/katib/fetch_namespaces' to fetch experiments in a namespace
* 'FetchExperiments' handler
* hit the appropriate route from frontend and provide namespace as a
query parameter to fetch experiments
* remove remove BACKEND_MODE env var in
favour of the more specific APP_DISABLE_AUTH
Signed-off-by: Apostolos Gerakaris <[email protected]>
* Review fixes
* Add constants for CRUD actions
* Add plural for experiments and suggestions as constants
* Add GetUsername logic under IsAuthorized and handle errors properly
* Have APP_DISABLE_AUTH by default as true, since currently Katib
doesn't support this feature in standalone mode.
Signed-off-by: Apostolos Gerakaris <[email protected]>
Signed-off-by: Apostolos Gerakaris <[email protected]>
Introduce COMMIT file that contains the commit where Katib needs to
checkout inside Kubeflow's common code in order to be built. This file
was integrated in the following places as well, thus a developer may
only update one file each time we need to checkout to a newer commit.
- Dockerfile
- GH actions
- README.md
Signed-off-by: Orfeas Kourkakis <[email protected]>
Signed-off-by: Orfeas Kourkakis <[email protected]>
* UI: Make KWA's main table responsive and add toolbar
* Add a top row toolbar with the title of the app and the button to
create a new Experiment.
* Replace the card with a responsive table that shows the items. The
component also has a paginator.
Signed-off-by: Elena Zioga <[email protected]>
* build: Update Dockerfile and README file
Update Dockerfile and README file to check out to the commit in master
branch from the Kubeflow repository that includes the corresponding
changes.
Signed-off-by: Elena Zioga <[email protected]>
Signed-off-by: Elena Zioga <[email protected]>