Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
13 changes: 10 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -93,9 +93,16 @@ undeploy: ## Undeploy controller from the K8s cluster specified in ~/.kube/confi
$(KUSTOMIZE) build manifests/overlays/standalone | kubectl delete -f -


CONTROLLER_GEN = $(shell pwd)/bin/controller-gen
controller-gen: ## Download controller-gen locally if necessary.
$(call go-get-tool,$(CONTROLLER_GEN),sigs.k8s.io/controller-tools/cmd/controller-gen@v0.6.0)
CONTROLLER_TOOLS_VERSION ?= v0.8.0
CONTROLLER_GEN ?= $(LOCALBIN)/controller-gen
LOCALBIN ?= $(shell pwd)/bin


.PHONY: controller-gen
controller-gen: #$(CONTROLLER_GEN) ## Download controller-gen locally if necessary.
GOBIN=$(LOCALBIN) go install sigs.k8s.io/controller-tools/cmd/controller-gen@$(CONTROLLER_TOOLS_VERSION)
# $(CONTROLLER_GEN): $(LOCALBIN)


KUSTOMIZE = $(shell pwd)/bin/kustomize
kustomize: ## Download kustomize locally if necessary.
Expand Down
12 changes: 4 additions & 8 deletions cmd/training-operator.v1/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,7 @@ import (
"sigs.k8s.io/controller-runtime/pkg/log/zap"

commonutil "github.com/kubeflow/common/pkg/util"
mpiv1 "github.com/kubeflow/training-operator/pkg/apis/mpi/v1"
mxnetv1 "github.com/kubeflow/training-operator/pkg/apis/mxnet/v1"
pytorchv1 "github.com/kubeflow/training-operator/pkg/apis/pytorch/v1"
tensorflowv1 "github.com/kubeflow/training-operator/pkg/apis/tensorflow/v1"
xgboostv1 "github.com/kubeflow/training-operator/pkg/apis/xgboost/v1"
"github.com/kubeflow/training-operator/pkg/config"
controllerv1 "github.com/kubeflow/training-operator/pkg/controller.v1"
//+kubebuilder:scaffold:imports
Expand All @@ -48,11 +44,11 @@ var (

func init() {
utilruntime.Must(clientgoscheme.AddToScheme(scheme))
utilruntime.Must(xgboostv1.AddToScheme(scheme))
// utilruntime.Must(xgboostv1.AddToScheme(scheme))
utilruntime.Must(pytorchv1.AddToScheme(scheme))
utilruntime.Must(tensorflowv1.AddToScheme(scheme))
utilruntime.Must(mxnetv1.AddToScheme(scheme))
utilruntime.Must(mpiv1.AddToScheme(scheme))
// utilruntime.Must(tensorflowv1.AddToScheme(scheme))
// utilruntime.Must(mxnetv1.AddToScheme(scheme))
// utilruntime.Must(mpiv1.AddToScheme(scheme))
//+kubebuilder:scaffold:scheme
}

Expand Down
6,998 changes: 0 additions & 6,998 deletions manifests/base/crds/kubeflow.org_mpijobs.yaml

This file was deleted.

6,994 changes: 0 additions & 6,994 deletions manifests/base/crds/kubeflow.org_mxjobs.yaml

This file was deleted.

6,995 changes: 0 additions & 6,995 deletions manifests/base/crds/kubeflow.org_tfjobs.yaml

This file was deleted.

6,984 changes: 0 additions & 6,984 deletions manifests/base/crds/kubeflow.org_xgboostjobs.yaml

This file was deleted.

4 changes: 0 additions & 4 deletions manifests/base/crds/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -1,8 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- kubeflow.org_tfjobs.yaml
- kubeflow.org_mxjobs.yaml
- kubeflow.org_pytorchjobs.yaml
- kubeflow.org_xgboostjobs.yaml
- kubeflow.org_mpijobs.yaml
16 changes: 0 additions & 16 deletions manifests/overlays/kubeflow/kubeflow-training-roles.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,7 @@ rules:
- apiGroups:
- kubeflow.org
resources:
- mpijobs
- tfjobs
- pytorchjobs
- mxjobs
- xgboostjobs
verbs:
- create
- delete
Expand All @@ -38,11 +34,7 @@ rules:
- apiGroups:
- kubeflow.org
resources:
- mpijobs/status
- tfjobs/status
- pytorchjobs/status
- mxjobs/status
- xgboostjobs/status
verbs:
- get

Expand All @@ -57,22 +49,14 @@ rules:
- apiGroups:
- kubeflow.org
resources:
- mpijobs
- tfjobs
- pytorchjobs
- mxjobs
- xgboostjobs
verbs:
- get
- list
- watch
- apiGroups:
- kubeflow.org
resources:
- mpijobs/status
- tfjobs/status
- pytorchjobs/status
- mxjobs/status
- xgboostjobs/status
verbs:
- get
32 changes: 12 additions & 20 deletions pkg/controller.v1/register_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,38 +20,30 @@ import (

"sigs.k8s.io/controller-runtime/pkg/manager"

mpiv1 "github.com/kubeflow/training-operator/pkg/apis/mpi/v1"
mxnetv1 "github.com/kubeflow/training-operator/pkg/apis/mxnet/v1"
pytorchv1 "github.com/kubeflow/training-operator/pkg/apis/pytorch/v1"
tensorflowv1 "github.com/kubeflow/training-operator/pkg/apis/tensorflow/v1"
xgboostv1 "github.com/kubeflow/training-operator/pkg/apis/xgboost/v1"
mpicontroller "github.com/kubeflow/training-operator/pkg/controller.v1/mpi"
mxnetcontroller "github.com/kubeflow/training-operator/pkg/controller.v1/mxnet"
pytorchcontroller "github.com/kubeflow/training-operator/pkg/controller.v1/pytorch"
tensorflowcontroller "github.com/kubeflow/training-operator/pkg/controller.v1/tensorflow"
xgboostcontroller "github.com/kubeflow/training-operator/pkg/controller.v1/xgboost"
)

const ErrTemplateSchemeNotSupported = "scheme %s is not supported yet"

type ReconcilerSetupFunc func(manager manager.Manager, enableGangScheduling bool) error

var SupportedSchemeReconciler = map[string]ReconcilerSetupFunc{
tensorflowv1.Kind: func(mgr manager.Manager, enableGangScheduling bool) error {
return tensorflowcontroller.NewReconciler(mgr, enableGangScheduling).SetupWithManager(mgr)
},
// tensorflowv1.Kind: func(mgr manager.Manager, enableGangScheduling bool) error {
// return tensorflowcontroller.NewReconciler(mgr, enableGangScheduling).SetupWithManager(mgr)
// },
pytorchv1.Kind: func(mgr manager.Manager, enableGangScheduling bool) error {
return pytorchcontroller.NewReconciler(mgr, enableGangScheduling).SetupWithManager(mgr)
},
mxnetv1.Kind: func(mgr manager.Manager, enableGangScheduling bool) error {
return mxnetcontroller.NewReconciler(mgr, enableGangScheduling).SetupWithManager(mgr)
},
xgboostv1.Kind: func(mgr manager.Manager, enableGangScheduling bool) error {
return xgboostcontroller.NewReconciler(mgr, enableGangScheduling).SetupWithManager(mgr)
},
mpiv1.Kind: func(mgr manager.Manager, enableGangScheduling bool) error {
return mpicontroller.NewReconciler(mgr, enableGangScheduling).SetupWithManager(mgr)
},
// mxnetv1.Kind: func(mgr manager.Manager, enableGangScheduling bool) error {
// return mxnetcontroller.NewReconciler(mgr, enableGangScheduling).SetupWithManager(mgr)
// },
// xgboostv1.Kind: func(mgr manager.Manager, enableGangScheduling bool) error {
// return xgboostcontroller.NewReconciler(mgr, enableGangScheduling).SetupWithManager(mgr)
// },
// mpiv1.Kind: func(mgr manager.Manager, enableGangScheduling bool) error {
// return mpicontroller.NewReconciler(mgr, enableGangScheduling).SetupWithManager(mgr)
// },
}

type EnabledSchemes []string
Expand Down