Beispiel #1
0
 public function execute(LocalPackage $package)
 {
     $message = (string) $this->messageRepository->fetch();
     $pullRequest = $this->client->api('pull_request')->create($package->getUsername(), $package->getRepoName(), array('base' => 'master', 'head' => 'botrelli:' . $package->getLocalBranch(), 'title' => $this->getCommitTitle(), 'body' => $this->getCommitMessageWithPrefix($message)));
     $this->dispatchEvent(StepsEvents::PULL_REQUEST_MADE, PullRequestMade::createFromGithubResponse($pullRequest, $message, $package->getFolder()));
     return 201 === $this->client->getHttpClient()->getLastResponse()->getStatusCode();
 }
Beispiel #2
0
 public function execute(GitWorkingCopy $git, LocalPackage $package)
 {
     $git->add('.');
     $this->dispatchEvent(StepsEvents::GIT_ADDED, new GitEventMade($git));
     $git->commit($this->getCommitMessage($git));
     $this->dispatchEvent(StepsEvents::GIT_COMMITTED, new GitEventMade($git));
     $git->push('origin', $package->getLocalBranch(), array('f' => true));
     $this->dispatchEvent(StepsEvents::GIT_PUSHED, new GitEventMade($git));
     return null === $git->getStatus() ? true : false;
 }
Beispiel #3
0
 /**
  * @param LocalPackage $package
  *
  * @return GitWorkingCopy
  */
 public function execute(LocalPackage $package)
 {
     $git = $this->gitWrapper->cloneRepository($package->getForkSSHRepository(), $package->getFolder());
     // @todo parameters
     $git->config('user.name', 'BOTrelli')->config('user.email', '*****@*****.**');
     $git->remote('add', 'upstream', $package->getRepository());
     $this->dispatchEvent(StepsEvents::GIT_REMOTE_ADDED, new GitEventMade($git));
     $git->checkout($package->getLocalBranch(), array('b' => true));
     $this->dispatchEvent(StepsEvents::GIT_CHECKOUT_DONE, new GitEventMade($git));
     $git->fetch('upstream');
     $this->dispatchEvent(StepsEvents::GIT_FETCHED, new GitEventMade($git));
     $git->merge('upstream/master');
     $this->dispatchEvent(StepsEvents::GIT_MERGED, new GitEventMade($git));
     $git->rebase('master');
     $this->dispatchEvent(StepsEvents::GIT_MERGED, new GitEventMade($git));
     return $git;
 }
Beispiel #4
0
 /**
  * @param LocalPackage $package
  * @param array        $options
  *
  * @return string
  */
 private function createInputString(LocalPackage $package, array $options = array())
 {
     return sprintf(" fix %s %s", $package->getFolder(), $this->transformOptionsToString($options));
 }