MCPcopy Create free account
hub / github.com/SeldonIO/seldon-core / createTestModel

Function createTestModel

scheduler/pkg/envoy/processor/incremental_test.go:1061–1111  ·  view source on GitHub ↗
(modelName string,
	serverName string,
	desiredReplicas uint32,
	replicas []int,
	version uint32,
	replicaStates []store.ModelReplicaState,
)

Source from the content-addressed store, hash-verified

1059}
1060
1061func createTestModel(modelName string,
1062 serverName string,
1063 desiredReplicas uint32,
1064 replicas []int,
1065 version uint32,
1066 replicaStates []store.ModelReplicaState,
1067) func(inc *IncrementalProcessor, g *WithT) {
1068 f := func(inc *IncrementalProcessor, g *WithT) {
1069 model := &scheduler.Model{
1070 Meta: &scheduler.MetaData{
1071 Name: modelName,
1072 },
1073 ModelSpec: &scheduler.ModelSpec{
1074 Uri: "gs://" + util.CreateRequestId(), // Create a random uri
1075 },
1076 DeploymentSpec: &scheduler.DeploymentSpec{
1077 Replicas: desiredReplicas,
1078 },
1079 }
1080 err := inc.modelStore.UpdateModel(&scheduler.LoadModelRequest{Model: model})
1081 g.Expect(err).To(BeNil())
1082 var serverReplicas []*store.ServerReplica
1083 for _, replicaIdx := range replicas {
1084 var serverReplica *store.ServerReplica
1085 server, err := inc.modelStore.GetServer(serverName, false, true)
1086 g.Expect(err).To(BeNil())
1087 if server != nil {
1088 if sr, ok := server.Replicas[replicaIdx]; ok {
1089 serverReplica = sr
1090 }
1091 }
1092 if serverReplica == nil {
1093 serverReplica = store.NewServerReplica("", 1, 2, replicaIdx, nil, nil, 1000, 1000, 0, nil, 0)
1094 }
1095 serverReplicas = append(serverReplicas, serverReplica)
1096 }
1097
1098 // this adds all model replicas as `LoadRequested`
1099 err = inc.modelStore.UpdateLoadedModels(modelName, version, serverName, serverReplicas)
1100 g.Expect(err).To(BeNil())
1101
1102 for idx, replicaIdx := range replicas {
1103 err = inc.modelStore.UpdateModelState(modelName, version, serverName, replicaIdx, nil, store.LoadRequested, replicaStates[idx], "", nil)
1104 g.Expect(err).To(BeNil())
1105 }
1106
1107 err = inc.modelUpdate(modelName)
1108 g.Expect(err).To(BeNil())
1109 }
1110 return f
1111}
1112
1113func removeTestModel(
1114 modelName string,

Callers 6

testInitialFetchFunction · 0.85
testUpdateModelVersionFunction · 0.85
TestRollingUpdateFunction · 0.85
TestDrainingFunction · 0.85
TestModelSyncFunction · 0.85
TestEnvoySettingsFunction · 0.85

Calls 5

modelUpdateMethod · 0.80
UpdateModelMethod · 0.65
GetServerMethod · 0.65
UpdateLoadedModelsMethod · 0.65
UpdateModelStateMethod · 0.65

Tested by

no test coverage detected