All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.pivotal.services.plugin.tasks.CfAutoPilotTask Maven / Gradle / Ivy

There is a newer version: 2.3.0-rc.6
Show newest version
package io.pivotal.services.plugin.tasks;

import io.pivotal.services.plugin.CfProperties;
import io.pivotal.services.plugin.tasks.helper.CfAutoPilotDelegate;
import org.cloudfoundry.operations.CloudFoundryOperations;
import org.gradle.api.tasks.TaskAction;
import reactor.core.publisher.Mono;

import java.time.Duration;

/**
 * Responsible for an autpilot style deployment
 *
 * @author Biju Kunjummen
 */
public class CfAutoPilotTask extends AbstractCfTask {


    private CfAutoPilotDelegate autoPilotTaskDelegate = new CfAutoPilotDelegate();

    @TaskAction
    public void runAutopilot() {
        CloudFoundryOperations cfOperations = getCfOperations();
        CfProperties originalProperties = getCfProperties();


        Mono resp = autoPilotTaskDelegate.runAutopilot(getProject(), cfOperations, originalProperties);

        resp.block(Duration.ofMillis(defaultWaitTimeout));
    }

    @Override
    public String getDescription() {
        return "Push an Application in a no downtime Autopilot mode";
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy