blob: afe7e3706e1cd075d8cb7efa3b0197f0bb1fffe7 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package ai.vespa.hosted.plugin;
import com.yahoo.config.provision.Environment;
import org.apache.maven.plugins.annotations.Mojo;
/**
* Deletes a Vespa application deployment, provided the deployment is in a manually deployed environment.
*
* @author jonmv
*/
@Mojo(name = "delete")
public class DeleteMojo extends AbstractVespaDeploymentMojo {
@Override
protected boolean requireInstance() { return true; }
@Override
protected void doExecute() {
if (!isNullOrBlank(environment) && ! Environment.from(environment).isManuallyDeployed())
throw new IllegalArgumentException("Manual deletion is not permitted in " + environment);
getLog().info(controller.deactivate(id, zoneOf(environment, region)));
}
}
|