default String getArtifactId(String deploymentName) { String artifactName = getArtifact().getName(); String version = getArtifactService().getArtifactVersion(deploymentName, getArtifact()); return String.format("projects/%s/global/images/%s", getGoogleImageProject(deploymentName, getArtifact()), String.join("-", "spinnaker", artifactName, version.replace(".", "-").replace(":", "-"))); }
public String getArtifactId(String deploymentName) { return GoogleDistributedService.super.getArtifactId(deploymentName); }
List<ConfigSource> configSources, boolean recreate) { DaemonTaskHandler.newStage("Deploying " + getServiceName() + " via GCE API"); Integer version = 0; ServiceSettings settings = resolvedConfiguration.getServiceSettings(getService()); SpinnakerRuntimeSettings runtimeSettings = resolvedConfiguration.getRuntimeSettings(); RunningServiceDetails runningServiceDetails = getRunningServiceDetails(details, runtimeSettings); DaemonTaskHandler.message("Service " + getServiceName() + " is already deployed and not safe to restart"); return; } else if (exists) { DaemonTaskHandler.message("Recreating existing " + getServiceName() + "..."); deleteVersion(details, settings, version); .setName(getServiceName() + "-hal-" + System.currentTimeMillis()) .setDescription("Halyard-generated instance template for deploying Spinnaker"); Metadata metadata = new Metadata().setItems(getMetadata(details, runtimeSettings, configSources, version)); .setScopes(getScopes()); .setMachineType(getDefaultInstanceType()) .setMetadata(metadata) .setServiceAccounts(Collections.singletonList(sa)) .setDiskSizeGb(20L) .setDiskStorageType(GCEUtil.buildDiskTypeUrl(project, zone, GoogleDiskType.PD_SSD)) .setSourceImage(getArtifactId(details.getDeploymentName()));
String deploymentName = details.getDeploymentName(); SpinnakerRuntimeSettings runtimeSettings = resolvedConfiguration.getRuntimeSettings(); SpinnakerService thisService = getService(); ServiceSettings thisServiceSettings = resolvedConfiguration.getServiceSettings(thisService); Map<String, String> env = new HashMap<>(); Integer version = getRunningServiceDetails(details, runtimeSettings).getLatestEnabledVersion(); if (version == null) { version = 0; String stagingPath = getSpinnakerStagingPath(deploymentName); GoogleVaultServerService vaultService = getVaultServerService(); VaultServerService.Vault vault = vaultService.connectToPrimaryService(details, runtimeSettings); for (SidecarService sidecarService : getSidecars(runtimeSettings)) { for (Profile profile : sidecarService.getSidecarProfiles(resolvedConfiguration, thisService)) { if (profile == null) { String secretName = secretName(profile.getName(), version); String mountPoint = Paths.get(profile.getOutputFile()).toString(); Path stagedFile = Paths.get(profile.getStagedFile(stagingPath)); String secretName = secretName("profile-" + profile.getName(), version); Path stagedFile = Paths.get(profile.getStagedFile(stagingPath)); VaultConfigMount vaultConfigMount = VaultConfigMount.fromLocalFile(stagedFile.toFile(), mountPoint); String secretName = secretName("dependencies-" + file, version); VaultConfigMount vaultConfigMount = VaultConfigMount.fromLocalFile(Paths.get(file).toFile(), mountPoint); secretName = vaultService.writeVaultConfig(deploymentName, vault, secretName, vaultConfigMount);
.setValue(getStartupScript()); metadataItems.add(items); GoogleVaultServerService vaultService = getVaultServerService(); VaultServerService.Vault vault = vaultService.connectToPrimaryService(details, runtimeSettings); String secretName = secretName("config-mounts", version); VaultConfigMountSet mountSet = VaultConfigMountSet.fromConfigSources(configSources); secretName = vaultService.writeVaultConfigMountSet(deploymentName, vault, secretName, mountSet); VaultConnectionDetails connectionDetails = buildConnectionDetails(details, runtimeSettings, secretName); GoogleConsulServerService consulServerService = getConsulServerService(); RunningServiceDetails consulServerDetails = consulServerService.getRunningServiceDetails(details, runtimeSettings); Integer latestConsulVersion = consulServerDetails.getLatestEnabledVersion();
@Override default RunningServiceDetails getRunningServiceDetails(AccountDeploymentDetails<GoogleAccount> details, SpinnakerRuntimeSettings runtimeSettings) { ServiceSettings settings = runtimeSettings.getServiceSettings(getService()); RunningServiceDetails result = new RunningServiceDetails(); result.setLoadBalancer(new RunningServiceDetails.LoadBalancer().setExists(true)); // All GCE load balancing is done via consul boolean consulEnabled = getSidecars(runtimeSettings).stream() .anyMatch(s -> s.getService().getType().equals(SpinnakerService.Type.CONSUL_CLIENT)); getConsulServerService().connectToPrimaryService(details, runtimeSettings) .serviceHealth(getService().getCanonicalName(), true).stream() .map(s -> s != null && s.getNode() != null ? s.getNode().getNodeName() : null) .filter(Objects::nonNull) new HashSet<>(); String serviceName = getService().getServiceName();
@Override public void ensureRunning(AccountDeploymentDetails<GoogleAccount> details, GenerateService.ResolvedConfiguration resolvedConfiguration, List<ConfigSource> configSources, boolean recreate) { GoogleDistributedService.super.ensureRunning(details, resolvedConfiguration, configSources, recreate); Vault vault = connectToPrimaryService(details, resolvedConfiguration.getRuntimeSettings()); getToken(details.getDeploymentName(), vault); }
List<ConfigSource> configSources, boolean recreate) { DaemonTaskHandler.newStage("Deploying " + getServiceName() + " via GCE API"); Integer version = 0; ServiceSettings settings = resolvedConfiguration.getServiceSettings(getService()); SpinnakerRuntimeSettings runtimeSettings = resolvedConfiguration.getRuntimeSettings(); RunningServiceDetails runningServiceDetails = getRunningServiceDetails(details, runtimeSettings); DaemonTaskHandler.message("Service " + getServiceName() + " is already deployed and not safe to restart"); return; } else if (exists) { DaemonTaskHandler.message("Recreating existing " + getServiceName() + "..."); deleteVersion(details, settings, version); .setName(getServiceName() + "-hal-" + System.currentTimeMillis()) .setDescription("Halyard-generated instance template for deploying Spinnaker"); Metadata metadata = new Metadata().setItems(getMetadata(details, runtimeSettings, configSources, version)); .setScopes(getScopes()); .setMachineType(getDefaultInstanceType()) .setMetadata(metadata) .setServiceAccounts(Collections.singletonList(sa)) .setDiskSizeGb(20L) .setDiskStorageType(GCEUtil.buildDiskTypeUrl(project, zone, GoogleDiskType.PD_SSD)) .setSourceImage(getArtifactId(details.getDeploymentName()));
String deploymentName = details.getDeploymentName(); SpinnakerRuntimeSettings runtimeSettings = resolvedConfiguration.getRuntimeSettings(); SpinnakerService thisService = getService(); ServiceSettings thisServiceSettings = resolvedConfiguration.getServiceSettings(thisService); Map<String, String> env = new HashMap<>(); Integer version = getRunningServiceDetails(details, runtimeSettings).getLatestEnabledVersion(); if (version == null) { version = 0; String stagingPath = getSpinnakerStagingPath(deploymentName); GoogleVaultServerService vaultService = getVaultServerService(); VaultServerService.Vault vault = vaultService.connectToPrimaryService(details, runtimeSettings); for (SidecarService sidecarService : getSidecars(runtimeSettings)) { for (Profile profile : sidecarService.getSidecarProfiles(resolvedConfiguration, thisService)) { if (profile == null) { String secretName = secretName(profile.getName(), version); String mountPoint = Paths.get(profile.getOutputFile()).toString(); Path stagedFile = Paths.get(profile.getStagedFile(stagingPath)); String secretName = secretName("profile-" + profile.getName(), version); Path stagedFile = Paths.get(profile.getStagedFile(stagingPath)); VaultConfigMount vaultConfigMount = VaultConfigMount.fromLocalFile(stagedFile.toFile(), mountPoint); String secretName = secretName("dependencies-" + file, version); VaultConfigMount vaultConfigMount = VaultConfigMount.fromLocalFile(Paths.get(file).toFile(), mountPoint); secretName = vaultService.writeVaultConfig(deploymentName, vault, secretName, vaultConfigMount);
.setValue(getStartupScript()); metadataItems.add(items); GoogleVaultServerService vaultService = getVaultServerService(); VaultServerService.Vault vault = vaultService.connectToPrimaryService(details, runtimeSettings); String secretName = secretName("config-mounts", version); VaultConfigMountSet mountSet = VaultConfigMountSet.fromConfigSources(configSources); secretName = vaultService.writeVaultConfigMountSet(deploymentName, vault, secretName, mountSet); VaultConnectionDetails connectionDetails = buildConnectionDetails(details, runtimeSettings, secretName); GoogleConsulServerService consulServerService = getConsulServerService(); RunningServiceDetails consulServerDetails = consulServerService.getRunningServiceDetails(details, runtimeSettings); Integer latestConsulVersion = consulServerDetails.getLatestEnabledVersion();
@Override default RunningServiceDetails getRunningServiceDetails(AccountDeploymentDetails<GoogleAccount> details, SpinnakerRuntimeSettings runtimeSettings) { ServiceSettings settings = runtimeSettings.getServiceSettings(getService()); RunningServiceDetails result = new RunningServiceDetails(); result.setLoadBalancer(new RunningServiceDetails.LoadBalancer().setExists(true)); // All GCE load balancing is done via consul boolean consulEnabled = getSidecars(runtimeSettings).stream() .anyMatch(s -> s.getService().getType().equals(SpinnakerService.Type.CONSUL_CLIENT)); getConsulServerService().connectToPrimaryService(details, runtimeSettings) .serviceHealth(getService().getCanonicalName(), true).stream() .map(s -> s != null && s.getNode() != null ? s.getNode().getNodeName() : null) .filter(Objects::nonNull) new HashSet<>(); String serviceName = getService().getServiceName();
@Override public void ensureRunning(AccountDeploymentDetails<GoogleAccount> details, GenerateService.ResolvedConfiguration resolvedConfiguration, List<ConfigSource> configSources, boolean recreate) { GoogleDistributedService.super.ensureRunning(details, resolvedConfiguration, configSources, recreate); Vault vault = connectToPrimaryService(details, resolvedConfiguration.getRuntimeSettings()); getToken(details.getDeploymentName(), vault); }
default String getArtifactId(String deploymentName) { String artifactName = getArtifact().getName(); String version = getArtifactService().getArtifactVersion(deploymentName, getArtifact()); return String.format("projects/%s/global/images/%s", getGoogleImageProject(deploymentName, getArtifact()), String.join("-", "spinnaker", artifactName, version.replace(".", "-").replace(":", "-"))); }
public String getArtifactId(String deploymentName) { return GoogleDistributedService.super.getArtifactId(deploymentName); }
public String getArtifactId(String deploymentName) { return GoogleDistributedService.super.getArtifactId(deploymentName); }
public String getArtifactId(String deploymentName) { return GoogleDistributedService.super.getArtifactId(deploymentName); }