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

Modify NeMoDataStore #286

Merged
merged 4 commits into from
Jan 27, 2025
Merged
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
459 changes: 388 additions & 71 deletions api/apps/v1alpha1/nemo_datastore_types.go

Large diffs are not rendered by default.

75 changes: 54 additions & 21 deletions api/apps/v1alpha1/zz_generated.deepcopy.go

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

137 changes: 99 additions & 38 deletions bundle/manifests/apps.nvidia.com_nemodatastores.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -63,43 +63,6 @@ spec:
items:
type: string
type: array
dataStoreParams:
properties:
appVersion:
type: string
databaseHost:
type: string
databasePort:
type: string
databaseURL:
type: string
dbSecret:
type: string
envConfigmap:
type: string
envSecret:
type: string
giteaEndpoint:
type: string
giteaSecret:
type: string
initContainerCommand:
items:
type: string
type: array
initContainerImage:
type: string
required:
- appVersion
- databaseHost
- databasePort
- databaseURL
- dbSecret
- envConfigmap
- envSecret
- giteaEndpoint
- giteaSecret
type: object
env:
items:
description: EnvVar represents an environment variable present in
Expand Down Expand Up @@ -525,6 +488,31 @@ spec:
- port
type: object
type: object
externalDatabase:
properties:
database:
type: string
databaseSecret:
type: string
databaseSecretKey:
type: string
host:
type: string
port:
type: integer
sslMode:
type: string
user:
type: string
required:
- database
- databaseSecret
- databaseSecretKey
- host
- port
- sslMode
- user
type: object
groupID:
format: int64
type: integer
Expand Down Expand Up @@ -744,6 +732,34 @@ spec:
additionalProperties:
type: string
type: object
objectStore:
properties:
bucketName:
type: string
endpoint:
type: string
objectStoreSecret:
type: string
objectStoreSecretAccessKey:
type: string
objectStoreSecretAccessSecret:
type: string
region:
type: string
serveDirect:
type: boolean
ssl:
type: boolean
required:
- bucketName
- endpoint
- objectStoreSecret
- objectStoreSecretAccessKey
- objectStoreSecretAccessSecret
- region
- serveDirect
- ssl
type: object
podAffinity:
description: Pod affinity is a group of inter pod affinity scheduling
rules.
Expand Down Expand Up @@ -1100,6 +1116,30 @@ spec:
type: array
x-kubernetes-list-type: atomic
type: object
pvc:
description: PersistentVolumeClaim defines the attributes of PVC used
as a source for caching NIM model
properties:
create:
description: Create indicates to create a new PVC
type: boolean
name:
description: Name is the name of the PVC
type: string
size:
description: Size of the NIM cache in Gi, used during PVC creation
type: string
storageClass:
description: StorageClass to be used for PVC creation. Leave it
as empty if the PVC is already created.
type: string
subPath:
type: string
volumeAccessMode:
description: VolumeAccessMode is the volume access mode of the
PVC
type: string
type: object
readinessProbe:
description: Probe defines attributes for startup/liveness/readiness
probes
Expand Down Expand Up @@ -1932,6 +1972,25 @@ spec:
- maxReplicas
type: object
type: object
secrets:
properties:
datastoreConfigSecret:
type: string
datastoreInitSecret:
type: string
datastoreInlineConfigSecret:
type: string
giteaAdminSecret:
type: string
lfsJwtSecret:
type: string
required:
- datastoreConfigSecret
- datastoreInitSecret
- datastoreInlineConfigSecret
- giteaAdminSecret
- lfsJwtSecret
type: object
startupProbe:
description: Probe defines attributes for startup/liveness/readiness
probes
Expand Down Expand Up @@ -2136,7 +2195,9 @@ spec:
type: integer
required:
- authSecret
- dataStoreParams
- externalDatabase
- objectStore
- secrets
type: object
status:
description: NemoDatastoreStatus defines the observed state of NemoDatastore
Expand Down
18 changes: 9 additions & 9 deletions cmd/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -188,36 +188,36 @@ func main() {
os.Exit(1)
}

if err = controller.NewNemoDatastoreReconciler(
if err = controller.NewNemoEvaluatorReconciler(
mgr.GetClient(),
mgr.GetScheme(),
updater,
render.NewRenderer("/manifests"),
ctrl.Log.WithName("controllers").WithName("NemoDatastore"),
ctrl.Log.WithName("controllers").WithName("NemoEvaluator"),
).SetupWithManager(mgr); err != nil {
setupLog.Error(err, "unable to create controller", "controller", "NemoDatastore")
setupLog.Error(err, "unable to create controller", "controller", "NemoEvaluator")
os.Exit(1)
}

if err = controller.NewNemoEvaluatorReconciler(
if err = controller.NewNemoEntitystoreReconciler(
mgr.GetClient(),
mgr.GetScheme(),
updater,
render.NewRenderer("/manifests"),
ctrl.Log.WithName("controllers").WithName("NemoEvaluator"),
ctrl.Log.WithName("controllers").WithName("NemoEntitystore"),
).SetupWithManager(mgr); err != nil {
setupLog.Error(err, "unable to create controller", "controller", "NemoEvaluator")
setupLog.Error(err, "unable to create controller", "controller", "NemoEntitystore")
os.Exit(1)
}

if err = controller.NewNemoEntitystoreReconciler(
if err = controller.NewNemoDatastoreReconciler(
mgr.GetClient(),
mgr.GetScheme(),
updater,
render.NewRenderer("/manifests"),
ctrl.Log.WithName("controllers").WithName("NemoEntitystore"),
ctrl.Log.WithName("controllers").WithName("NemoDatastore"),
).SetupWithManager(mgr); err != nil {
setupLog.Error(err, "unable to create controller", "controller", "NemoEntitystore")
setupLog.Error(err, "unable to create controller", "controller", "NemoDatastore")
os.Exit(1)
}

Expand Down
Loading
Loading