Interface FlagsTarget
public interface FlagsTarget
Represents either configservers in a zone or controllers in a system.
Defines the location and precedence of the flags data files for the given target.
Naming rules for flags data files:
- zone specific:
<system>.<environment>.<region>.json - controller specific:
<system>.controller.json - environment specific:
<system>.<environment>.json - system specific:
<system>.json - global default:
default.json
- Author:
- bjorncs
-
Method Summary
Modifier and TypeMethodDescriptionasString()Optional<com.yahoo.vespa.athenz.api.AthenzIdentity>static StringcontrollerFile(com.yahoo.config.provision.SystemName system) static Stringendpoint()static StringenvironmentFile(com.yahoo.config.provision.SystemName system, com.yahoo.config.provision.Environment environment) static booleanfilenameForSystem(String filename, com.yahoo.config.provision.SystemName system) Return true if the filename applies to the system.static FlagsTargetforConfigServer(ZoneRegistry registry, com.yahoo.config.provision.zone.ZoneApi zone) static FlagsTargetforController(com.yahoo.config.provision.zone.ZoneApi controllerZone) static Set<FlagsTarget>getAllTargetsInSystem(ZoneRegistry registry, boolean reachableOnly) com.yahoo.vespa.flags.json.FlagDatapartiallyResolveFlagData(com.yahoo.vespa.flags.json.FlagData data) static com.yahoo.vespa.flags.json.FlagDatapartialResolve(com.yahoo.vespa.flags.json.FlagData data, com.yahoo.config.provision.SystemName system, com.yahoo.config.provision.CloudName cloud, com.yahoo.config.provision.zone.ZoneId virtualZoneId) Partially resolve inter-zone dimensions, except those dimensions defined by the flag for a controller zone.static StringsystemFile(com.yahoo.config.provision.SystemName system) static StringzoneFile(com.yahoo.config.provision.SystemName system, com.yahoo.config.provision.zone.ZoneId zone)
-
Method Details
-
flagDataFilesPrioritized
-
endpoint
URI endpoint() -
athenzHttpsIdentity
Optional<com.yahoo.vespa.athenz.api.AthenzIdentity> athenzHttpsIdentity() -
asString
String asString() -
partiallyResolveFlagData
com.yahoo.vespa.flags.json.FlagData partiallyResolveFlagData(com.yahoo.vespa.flags.json.FlagData data) -
getAllTargetsInSystem
-
forController
-
forConfigServer
static FlagsTarget forConfigServer(ZoneRegistry registry, com.yahoo.config.provision.zone.ZoneApi zone) -
defaultFile
-
systemFile
-
environmentFile
static String environmentFile(com.yahoo.config.provision.SystemName system, com.yahoo.config.provision.Environment environment) -
zoneFile
static String zoneFile(com.yahoo.config.provision.SystemName system, com.yahoo.config.provision.zone.ZoneId zone) -
controllerFile
-
filenameForSystem
static boolean filenameForSystem(String filename, com.yahoo.config.provision.SystemName system) throws FlagValidationException Return true if the filename applies to the system. Throws on invalid filename format.- Throws:
FlagValidationException
-
partialResolve
static com.yahoo.vespa.flags.json.FlagData partialResolve(com.yahoo.vespa.flags.json.FlagData data, com.yahoo.config.provision.SystemName system, com.yahoo.config.provision.CloudName cloud, com.yahoo.config.provision.zone.ZoneId virtualZoneId) Partially resolve inter-zone dimensions, except those dimensions defined by the flag for a controller zone.
-