github.com/verrazzano/verrazzano@v1.7.0/tools/psr/psrctl/pkg/manifest/scenariomanifest.go (about) 1 // Copyright (c) 2022, Oracle and/or its affiliates. 2 // Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 4 package manifest 5 6 // Usecase specifies a PSR usecase that does a single worker task running in a pod 7 type Usecase struct { 8 // UsecasePath specifies the manifest relative path of the use case, e.g. opensearch/writelogs.yaml 9 UsecasePath string 10 11 // OverrideFile is the use case override file in the scenario usecase-overrides directory, e.g. writelogs-fast.yaml 12 OverrideFile string 13 14 // Description is a description of the use case in the context of the scenario 15 Description string 16 } 17 18 // ScenarioManifest specifies a PSR scenario manifest which consists of multiple use cases. 19 // The manifest represents files on disk, not a runtime scenario. 20 type ScenarioManifest struct { 21 // Name is the scenario name 22 Name string 23 24 // ID is the scenario ID 25 ID string 26 27 // Description is the scenario description 28 Description string 29 30 // Usecases are the scenario use cases 31 Usecases []Usecase 32 33 // This is the absolute directory that contains scenario.yaml and scenario usecase-overrides. It is not specified by the user, 34 // but built at runtime 35 ScenarioUsecaseOverridesAbsDir string 36 }