package core.aws.task.ec2; import core.aws.env.Context; import core.aws.resource.ec2.Instance; import core.aws.task.linux.LinuxCommandRunner; import core.aws.workflow.Action; import core.aws.workflow.Task; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * @author neo */ @Action("exec-instance") public class RunCommandTask extends Task<Instance> { private final Logger logger = LoggerFactory.getLogger(RunCommandTask.class); public RunCommandTask(Instance instance) { super(instance); } @Override public void execute(Context context) throws Exception { logger.info("execute command, instanceId={}", resource.id); LinuxCommandRunner runner = new LinuxCommandRunner(context.env, resource.remoteInstances, context); runner.run(); } }