private void disableAllProviders(Providers providers) { NodeIterator providerNodes = providers.getChildren(); Provider provider; while ((provider = (Provider) providerNodes.getNext()) != null) { provider.setEnabled(false); } } }
private void disableAllProviders(Providers providers) { NodeIterator providerNodes = providers.getChildren(); Provider provider; while ((provider = (Provider) providerNodes.getNext()) != null) { provider.setEnabled(false); } } }
@SuppressWarnings("unchecked") DockerRegistryAccountReverseIndex(Providers providers) { super(); NodeIterator providerNodes = providers.getChildren(); Provider provider; while ((provider = (Provider) providerNodes.getNext()) != null) { for (Account a : (List<? extends Account>) provider.getAccounts()) { if (a instanceof ContainerAccount) { ContainerAccount account = (ContainerAccount) a; List<DockerRegistryReference> registries = account.getDockerRegistries(); registries.forEach(reg -> this.computeIfAbsent(reg.getAccountName(), ignored -> new HashSet<>()).add(account)); } } } } }
@SuppressWarnings("unchecked") DockerRegistryAccountReverseIndex(Providers providers) { super(); NodeIterator providerNodes = providers.getChildren(); Provider provider; while ((provider = (Provider) providerNodes.getNext()) != null) { for (Account a : (List<? extends Account>) provider.getAccounts()) { if (a instanceof ContainerAccount) { ContainerAccount account = (ContainerAccount) a; List<DockerRegistryReference> registries = account.getDockerRegistries(); registries.forEach(reg -> this.computeIfAbsent(reg.getAccountName(), ignored -> new HashSet<>()).add(account)); } } } } }
@Override public void validate(ConfigProblemSetBuilder p, Providers n) { Set<String> accounts = new HashSet<>(); NodeIterator nodeIterator = n.getChildren(); Node child = nodeIterator.getNext(); while (child != null) { Provider provider = (Provider) child; for (Account account : (List<Account>) provider.getAccounts()) { if (accounts.contains(account.getName())) { p.addProblem(Severity.FATAL, "Account \"" + account.getName() + "\" appears more than once") .setRemediation("Change the name of the account in " + provider.getNodeName()); } else { accounts.add(account.getName()); } } child = nodeIterator.getNext(); } } }
@Override public void validate(ConfigProblemSetBuilder p, Providers n) { Set<String> accounts = new HashSet<>(); NodeIterator nodeIterator = n.getChildren(); Node child = nodeIterator.getNext(); while (child != null) { Provider provider = (Provider) child; for (Account account : (List<Account>) provider.getAccounts()) { if (accounts.contains(account.getName())) { p.addProblem(Severity.FATAL, "Account \"" + account.getName() + "\" appears more than once") .setRemediation("Change the name of the account in " + provider.getNodeName()); } else { accounts.add(account.getName()); } } child = nodeIterator.getNext(); } } }
private void augmentProvidersBaseImages(Providers providers, Providers otherProviders) { NodeIterator iterator = providers.getChildren(); Provider child = (Provider) iterator.getNext(); while (child != null) { if (child instanceof HasImageProvider) { NodeIterator otherIterator = otherProviders.getChildren(); NodeFilter providerFilter = new NodeFilter().setProvider(child.getNodeName()); HasImageProvider otherChild = (HasImageProvider) otherIterator.getNext(providerFilter); if (otherChild == null) { log.warn("images.yml has no images stored for " + child.getNodeName()); } else { log.info("Adding default images for " + child.getNodeName()); ((HasImageProvider) child).getBakeryDefaults().addDefaultImages(otherChild.getBakeryDefaults().getBaseImages()); } } child = (Provider) iterator.getNext(); } } }
private void augmentProvidersBaseImages(Providers providers, Providers otherProviders) { NodeIterator iterator = providers.getChildren(); Provider child = (Provider) iterator.getNext(); while (child != null) { if (child instanceof HasImageProvider) { NodeIterator otherIterator = otherProviders.getChildren(); NodeFilter providerFilter = new NodeFilter().setProvider(child.getNodeName()); HasImageProvider otherChild = (HasImageProvider) otherIterator.getNext(providerFilter); if (otherChild == null) { log.warn("images.yml has no images stored for " + child.getNodeName()); } else { log.info("Adding default images for " + child.getNodeName()); ((HasImageProvider) child).getBakeryDefaults().addDefaultImages(otherChild.getBakeryDefaults().getBaseImages()); } } child = (Provider) iterator.getNext(); } } }
@Override protected void setProfile(Profile profile, DeploymentConfiguration deploymentConfiguration, SpinnakerRuntimeSettings endpoints) { super.setProfile(profile, deploymentConfiguration, endpoints); Providers providers = deploymentConfiguration.getProviders(); Providers otherProviders = getImageProviders(profile.getVersion(), deploymentConfiguration.getName()); augmentProvidersBaseImages(providers, otherProviders); List<String> files = backupRequiredFiles(providers, deploymentConfiguration.getName()); Map imageProviders = new TreeMap(); NodeIterator iterator = providers.getChildren(); Provider child = (Provider) iterator.getNext(); while (child != null) { if (child instanceof HasImageProvider && child.isEnabled()) { imageProviders.put(child.getNodeName(), strictObjectMapper.convertValue(child, Map.class)); } child = (Provider) iterator.getNext(); } if (!imageProviders.isEmpty()) { profile.appendContents(yamlParser.dump(imageProviders)); } profile.appendContents(profile.getBaseContents()) .setRequiredFiles(files); }