private DeploymentState getDeploymentStateFromStatusInfo(Info info) { switch (info.getStatus().getStatusCode()) { case FAILED: return DeploymentState.failed; case DELETED: return DeploymentState.undeployed; case UNKNOWN: return DeploymentState.unknown; case DEPLOYED: return DeploymentState.deployed; } return DeploymentState.unknown; }
private DeploymentState getDeploymentStateFromStatusInfo(Info info) { switch (info.getStatus().getStatusCode()) { case FAILED: return DeploymentState.failed; case DELETED: return DeploymentState.undeployed; case UNKNOWN: return DeploymentState.unknown; case DEPLOYED: return DeploymentState.deployed; } return DeploymentState.unknown; }
private List<Release> getDeployedOrFailed(Iterable<Release> allReleases) { List<Release> releases = new ArrayList<>(); for (Release release : allReleases) { StatusCode releaseStatusCode = release.getInfo().getStatus().getStatusCode(); if (releaseStatusCode.equals(StatusCode.DEPLOYED) || releaseStatusCode.equals(StatusCode.FAILED)) { releases.add(release); } } return releases; }
private List<Release> getDeployedOrFailed(Iterable<Release> allReleases) { List<Release> releases = new ArrayList<>(); for (Release release : allReleases) { StatusCode releaseStatusCode = release.getInfo().getStatus().getStatusCode(); if (releaseStatusCode.equals(StatusCode.DEPLOYED) || releaseStatusCode.equals(StatusCode.FAILED)) { releases.add(release); } } return releases; }
private void updateStatus(StringBuilder sb, Release release) { sb.append("Release Status: " + release.getInfo().getStatus().getStatusCode() + "\n"); if (StringUtils.hasText(release.getInfo().getStatus().getPlatformStatus())) { sb.append("Platform Status: " + release.getInfo().getStatus().getPlatformStatusPrettyPrint()); } else { sb.append("Platform Status: unknown"); } }
@Override public Release findLatestReleaseForUpdate(String releaseName) { List<Release> releases = this.releaseRepository.findByNameOrderByVersionDesc(releaseName); for (Release release : releases) { if (release.getInfo().getStatus().getStatusCode().equals(StatusCode.DEPLOYED) || release.getInfo().getStatus().getStatusCode().equals(StatusCode.DELETED)) { return release; } } throw new ReleaseNotFoundException(releaseName); }
@Override public Release findLatestReleaseForUpdate(String releaseName) { List<Release> releases = this.releaseRepository.findByNameOrderByVersionDesc(releaseName); for (Release release : releases) { if (release.getInfo().getStatus().getStatusCode().equals(StatusCode.DEPLOYED) || release.getInfo().getStatus().getStatusCode().equals(StatusCode.DELETED)) { return release; } } throw new ReleaseNotFoundException(releaseName); }
@Override public Release findLatestReleaseIfDeleted(String releaseName) { Release latestRelease = this.releaseRepository.findTopByNameOrderByVersionDesc(releaseName); return (latestRelease != null && latestRelease.getInfo().getStatus().getStatusCode().equals(StatusCode.DELETED)) ? latestRelease : null; }
@Override public Release findLatestReleaseIfDeleted(String releaseName) { Release latestRelease = this.releaseRepository.findTopByNameOrderByVersionDesc(releaseName); return (latestRelease != null && latestRelease.getInfo().getStatus().getStatusCode().equals(StatusCode.DELETED)) ? latestRelease : null; }
@Override public Release findLatestDeployedRelease(String releaseName) { List<Release> releases = this.releaseRepository.findByNameOrderByVersionDesc(releaseName); for (Release release : releases) { if (release.getInfo().getStatus().getStatusCode().equals(StatusCode.DEPLOYED)) { return release; } } throw new ReleaseNotFoundException(releaseName); }
@Override public Release findLatestDeployedRelease(String releaseName) { List<Release> releases = this.releaseRepository.findByNameOrderByVersionDesc(releaseName); for (Release release : releases) { if (release.getInfo().getStatus().getStatusCode().equals(StatusCode.DEPLOYED)) { return release; } } throw new ReleaseNotFoundException(releaseName); }
@Override public Release findReleaseToRollback(String releaseName) { Release latestRelease = this.releaseRepository.findLatestReleaseForUpdate(releaseName); List<Release> releases = this.releaseRepository.findByNameOrderByVersionDesc(releaseName); for (Release release : releases) { if ((release.getInfo().getStatus().getStatusCode().equals(StatusCode.DEPLOYED) || release.getInfo().getStatus().getStatusCode().equals(StatusCode.DELETED)) && release.getVersion() != latestRelease.getVersion()) { return release; } } throw new ReleaseNotFoundException(releaseName); }
private void validateInstallRequest(InstallRequest installRequest) { Assert.notNull(installRequest.getInstallProperties(), "Install properties must not be null"); Assert.isTrue(StringUtils.hasText(installRequest.getInstallProperties().getPlatformName()), "Platform name must not be empty"); Assert.isTrue(StringUtils.hasText(installRequest.getInstallProperties().getReleaseName()), "Release name must not be empty"); Assert.notNull(installRequest.getPackageIdentifier(), "Package identifier must not be null"); Assert.isTrue(StringUtils.hasText(installRequest.getPackageIdentifier().getPackageName()), "Package name must not be empty"); try { Release latestRelease = this.releaseRepository.findLatestRelease(installRequest.getInstallProperties() .getReleaseName()); if (latestRelease != null && !latestRelease.getInfo().getStatus().getStatusCode().equals(StatusCode.DELETED)) { throw new SkipperException("Release with the name [" + installRequest.getInstallProperties().getReleaseName() + "] already exists and it is not deleted."); } } catch (ReleaseNotFoundException e) { // ignore as this is expected. } }
@Override public Release findReleaseToRollback(String releaseName) { Release latestRelease = this.releaseRepository.findLatestReleaseForUpdate(releaseName); List<Release> releases = this.releaseRepository.findByNameOrderByVersionDesc(releaseName); for (Release release : releases) { if ((release.getInfo().getStatus().getStatusCode().equals(StatusCode.DEPLOYED) || release.getInfo().getStatus().getStatusCode().equals(StatusCode.DELETED)) && release.getVersion() != latestRelease.getVersion()) { return release; } } throw new ReleaseNotFoundException(releaseName); }
private void validateInstallRequest(InstallRequest installRequest) { Assert.notNull(installRequest.getInstallProperties(), "Install properties must not be null"); Assert.isTrue(StringUtils.hasText(installRequest.getInstallProperties().getPlatformName()), "Platform name must not be empty"); Assert.isTrue(StringUtils.hasText(installRequest.getInstallProperties().getReleaseName()), "Release name must not be empty"); Assert.notNull(installRequest.getPackageIdentifier(), "Package identifier must not be null"); Assert.isTrue(StringUtils.hasText(installRequest.getPackageIdentifier().getPackageName()), "Package name must not be empty"); try { Release latestRelease = this.releaseRepository.findLatestRelease(installRequest.getInstallProperties() .getReleaseName()); if (latestRelease != null && !latestRelease.getInfo().getStatus().getStatusCode().equals(StatusCode.DELETED)) { throw new SkipperException("Release with the name [" + installRequest.getInstallProperties().getReleaseName() + "] already exists and it is not deleted."); } } catch (ReleaseNotFoundException e) { // ignore as this is expected. } }
public Release status(Release release) { if (release.getInfo().getStatus().getStatusCode().equals(StatusCode.DELETED)) { return release;
public Release status(Release release) { if (release.getInfo().getStatus().getStatusCode().equals(StatusCode.DELETED)) { return release;
@ShellMethod(key = "release status", value = "Status for a last known release version.") public Object status( @ShellOption(help = "release name") @NotNull String releaseName, @ShellOption(help = "the specific release version.", defaultValue = NULL) Integer releaseVersion) { Info info; try { if (releaseVersion == null) { info = this.skipperClient.status(releaseName); } else { info = this.skipperClient.status(releaseName, releaseVersion); } } catch (ReleaseNotFoundException e) { return "Release with name '" + e.getReleaseName() + "' not found"; } Object[][] data = new Object[3][]; data[0] = new Object[] { "Last Deployed", info.getFirstDeployed() }; data[1] = new Object[] { "Status", info.getStatus().getStatusCode().toString() }; DeploymentState aggregateState = aggregateState(info.getStatus().getDeploymentStateList()); StringBuilder sb = new StringBuilder(); sb.append(DeploymentStateDisplay.fromKey(aggregateState.name()).getDescription() + "\n"); sb.append(info.getStatus().getPlatformStatusPrettyPrint()); data[2] = new Object[] { "Platform Status", sb.toString() }; TableModel model = new ArrayTableModel(data); TableBuilder tableBuilder = new TableBuilder(model); TableUtils.applyStyleNoHeader(tableBuilder); return tableBuilder.build(); }
StatusCode statusCode = releaseToRollback.getInfo().getStatus().getStatusCode(); if (!(statusCode.equals(StatusCode.DEPLOYED) || statusCode.equals(StatusCode.DELETED))) { throw new SkipperException("Rollback version should either be in deployed or deleted status."); packageIdentifier.setRepositoryName(releaseToRollback.getPkg().getMetadata().getRepositoryName()); if (currentRelease.getInfo().getStatus().getStatusCode().equals(StatusCode.DELETED)) { InstallRequest installRequest = new InstallRequest(); InstallProperties installProperties = new InstallProperties();
StatusCode statusCode = releaseToRollback.getInfo().getStatus().getStatusCode(); if (!(statusCode.equals(StatusCode.DEPLOYED) || statusCode.equals(StatusCode.DELETED))) { throw new SkipperException("Rollback version should either be in deployed or deleted status."); packageIdentifier.setRepositoryName(releaseToRollback.getPkg().getMetadata().getRepositoryName()); if (currentRelease.getInfo().getStatus().getStatusCode().equals(StatusCode.DELETED)) { InstallRequest installRequest = new InstallRequest(); InstallProperties installProperties = new InstallProperties();