protected function execute(InputInterface $input, OutputInterface $output)
{
$application = $this->getApplication();
$this->output = $output;
$this->bucket = $application->getBucket();
$this->finder = new Finder();
$this->finder->ignoreDotFiles(false);
$this->finder->ignoreVCS(true);
$this->finder->files()->in($application->getConfig()->getPath());
if ($this->hasNotBeenInitialized()) {
$this->init();
$application->saveLastDeploy();
$output->writeln('Lock file initialized. Deployment complete!');
} elseif ($application->isUpToDate()) {
$output->writeln('Already up-to-date.');
} else {
$this->deployCurrentCommit();
$application->saveLastDeploy();
$output->writeln('Lock file updated. Deployment complete!');
}
}