use of com.netflix.spinnaker.halyard.config.model.v1.node.NodeFilter in project halyard by spinnaker.
the class PersistentStorageService method getPersistentStorage.
public PersistentStorage getPersistentStorage(String deploymentName) {
NodeFilter filter = new NodeFilter().setDeployment(deploymentName).setPersistentStorage();
List<PersistentStorage> matching = lookupService.getMatchingNodesOfType(filter, PersistentStorage.class);
switch(matching.size()) {
case 0:
PersistentStorage persistentStorage = new PersistentStorage();
setPersistentStorage(deploymentName, persistentStorage);
return persistentStorage;
case 1:
return matching.get(0);
default:
throw new RuntimeException("It shouldn't be possible to have multiple persistentStorage nodes. This is a bug.");
}
}
use of com.netflix.spinnaker.halyard.config.model.v1.node.NodeFilter in project halyard by spinnaker.
the class PersistentStorageService method getPersistentStore.
public PersistentStore getPersistentStore(String deploymentName, String persistentStoreType) {
NodeFilter filter = new NodeFilter().setDeployment(deploymentName).setPersistentStore(persistentStoreType);
List<PersistentStore> matching = lookupService.getMatchingNodesOfType(filter, PersistentStore.class);
switch(matching.size()) {
case 0:
throw new ConfigNotFoundException(new ConfigProblemBuilder(Problem.Severity.FATAL, "No persistent store with name \"" + persistentStoreType + "\" could be found").setRemediation("Create a new persistent store with name \"" + persistentStoreType + "\"").build());
case 1:
return matching.get(0);
default:
throw new IllegalConfigException(new ConfigProblemBuilder(Problem.Severity.FATAL, "More than one persistent store with name \"" + persistentStoreType + "\" found").setRemediation("Manually delete or rename duplicate persistent stores with name \"" + persistentStoreType + "\" in your halconfig file").build());
}
}
use of com.netflix.spinnaker.halyard.config.model.v1.node.NodeFilter in project halyard by spinnaker.
the class PubsubService method getPubsub.
public Pubsub getPubsub(String deploymentName, String pubsubName) {
NodeFilter filter = new NodeFilter().setDeployment(deploymentName).setPubsub(pubsubName);
List<Pubsub> matching = lookupService.getMatchingNodesOfType(filter, Pubsub.class);
switch(matching.size()) {
case 0:
throw new ConfigNotFoundException(new ConfigProblemBuilder(Severity.FATAL, "No pubsub with name \"" + pubsubName + "\" could be found").setRemediation("Create a new pubsub with name \"" + pubsubName + "\"").build());
case 1:
return matching.get(0);
default:
throw new IllegalConfigException(new ConfigProblemBuilder(Severity.FATAL, "More than one pubsub with name \"" + pubsubName + "\" found").setRemediation("Manually delete or rename duplicate pubsubs with name \"" + pubsubName + "\" in your halconfig file").build());
}
}
use of com.netflix.spinnaker.halyard.config.model.v1.node.NodeFilter in project halyard by spinnaker.
the class SubscriptionService method getAllSubscriptions.
public List<Subscription> getAllSubscriptions(String deploymentName, String pubsubName) {
NodeFilter filter = new NodeFilter().setDeployment(deploymentName).setPubsub(pubsubName).withAnySubscription();
List<Subscription> matchingSubscriptions = lookupService.getMatchingNodesOfType(filter, Subscription.class);
if (matchingSubscriptions.size() == 0) {
throw new ConfigNotFoundException(new ConfigProblemBuilder(Severity.FATAL, "No subscriptions could be found").build());
} else {
return matchingSubscriptions;
}
}
use of com.netflix.spinnaker.halyard.config.model.v1.node.NodeFilter in project halyard by spinnaker.
the class ArtifactAccountService method getAllArtifactAccounts.
public List<ArtifactAccount> getAllArtifactAccounts(String deploymentName, String providerName) {
NodeFilter filter = new NodeFilter().setDeployment(deploymentName).setArtifactProvider(providerName).withAnyArtifactAccount();
List<ArtifactAccount> matchingArtifactAccounts = lookupService.getMatchingNodesOfType(filter, ArtifactAccount.class);
if (matchingArtifactAccounts.size() == 0) {
throw new ConfigNotFoundException(new ConfigProblemBuilder(Severity.FATAL, "No accounts could be found").build());
} else {
return matchingArtifactAccounts;
}
}
Aggregations