Search in sources :

Example 1 with StackGresDbOpsRestartStatus

use of io.stackgres.common.crd.sgdbops.StackGresDbOpsRestartStatus in project stackgres by ongres.

the class ClusterRestartStateHandlerImplTest method initializeDbOpsStatus.

@Override
protected void initializeDbOpsStatus(StackGresDbOps dbOps, List<Pod> pods) {
    final StackGresDbOpsRestartStatus restartStatus = new StackGresDbOpsRestartStatus();
    restartStatus.setInitialInstances(pods.stream().map(Pod::getMetadata).map(ObjectMeta::getName).collect(Collectors.toList()));
    restartStatus.setPrimaryInstance(getPrimaryInstance(pods).getMetadata().getName());
    restartStatus.setPendingToRestartInstances(pods.stream().map(Pod::getMetadata).map(ObjectMeta::getName).collect(Collectors.toList()));
    restartStatus.setSwitchoverInitiated(Boolean.FALSE.toString());
    dbOps.getStatus().setRestart(restartStatus);
}
Also used : ObjectMeta(io.fabric8.kubernetes.api.model.ObjectMeta) StackGresDbOpsRestartStatus(io.stackgres.common.crd.sgdbops.StackGresDbOpsRestartStatus)

Example 2 with StackGresDbOpsRestartStatus

use of io.stackgres.common.crd.sgdbops.StackGresDbOpsRestartStatus in project stackgres by ongres.

the class RestartJob method reportFailure.

private void reportFailure(StackGresDbOps dbOps, Throwable ex) {
    String message = ex.getMessage();
    String dbOpsName = dbOps.getMetadata().getName();
    String namespace = dbOps.getMetadata().getNamespace();
    dbOpsFinder.findByNameAndNamespace(dbOpsName, namespace).ifPresent(savedDbOps -> {
        if (savedDbOps.getStatus() == null) {
            savedDbOps.setStatus(new StackGresDbOpsStatus());
        }
        if (savedDbOps.getStatus().getRestart() == null) {
            savedDbOps.getStatus().setRestart(new StackGresDbOpsRestartStatus());
        }
        savedDbOps.getStatus().getRestart().setFailure(message);
        dbOpsScheduler.update(savedDbOps);
    });
}
Also used : StackGresDbOpsStatus(io.stackgres.common.crd.sgdbops.StackGresDbOpsStatus) StackGresDbOpsRestartStatus(io.stackgres.common.crd.sgdbops.StackGresDbOpsRestartStatus)

Example 3 with StackGresDbOpsRestartStatus

use of io.stackgres.common.crd.sgdbops.StackGresDbOpsRestartStatus in project stackgres by ongres.

the class DbOpsTransformer method getResourceRestartStatus.

private DbOpsRestartStatus getResourceRestartStatus(StackGresDbOpsRestartStatus source) {
    if (source == null) {
        return null;
    }
    DbOpsRestartStatus transformation = new DbOpsRestartStatus();
    transformation.setPrimaryInstance(source.getPrimaryInstance());
    transformation.setInitialInstances(source.getInitialInstances());
    transformation.setPendingToRestartInstances(source.getPendingToRestartInstances());
    transformation.setRestartedInstances(source.getRestartedInstances());
    transformation.setSwitchoverInitiated(source.getSwitchoverInitiated());
    transformation.setSwitchoverFinalized(source.getSwitchoverFinalized());
    transformation.setFailure(source.getFailure());
    return transformation;
}
Also used : StackGresDbOpsRestartStatus(io.stackgres.common.crd.sgdbops.StackGresDbOpsRestartStatus) DbOpsRestartStatus(io.stackgres.apiweb.dto.dbops.DbOpsRestartStatus)

Aggregations

StackGresDbOpsRestartStatus (io.stackgres.common.crd.sgdbops.StackGresDbOpsRestartStatus)3 ObjectMeta (io.fabric8.kubernetes.api.model.ObjectMeta)1 DbOpsRestartStatus (io.stackgres.apiweb.dto.dbops.DbOpsRestartStatus)1 StackGresDbOpsStatus (io.stackgres.common.crd.sgdbops.StackGresDbOpsStatus)1