diff --git a/sdks/storage/shared_storage.go b/sdks/storage/shared_storage.go index ec1c67c..4f4fa0c 100644 --- a/sdks/storage/shared_storage.go +++ b/sdks/storage/shared_storage.go @@ -1,14 +1,32 @@ package cdssdk import ( + "fmt" + "gitlink.org.cn/cloudream/common/pkgs/types" "gitlink.org.cn/cloudream/common/utils/serder" ) type SharedStoreConfig interface { - GetType() string + GetSharedStoreType() string // 输出调试用的字符串,不要包含敏感信息 String() string } -var _ = serder.UseTypeUnionInternallyTagged(types.Ref(types.NewTypeUnion[SharedStoreConfig]()), "type") +var _ = serder.UseTypeUnionInternallyTagged(types.Ref(types.NewTypeUnion[SharedStoreConfig]( + (*LocalSharedStorage)(nil), +)), "type") + +type LocalSharedStorage struct { + Type string `json:"type"` + // 调度Package时的Package的根路径 + LoadBase string `json:"loadBase"` +} + +func (s *LocalSharedStorage) GetSharedStoreType() string { + return "Local" +} + +func (s *LocalSharedStorage) String() string { + return fmt.Sprintf("Local[LoadBase=%v]", s.LoadBase) +}