public function run()
	{
		$version    = $this->getJConfig()->version;
		$remote     = $this->getJConfig()->github->remote;
		$branch     = $this->getJConfig()->github->branch;
		$owner      = $this->getJConfig()->github->owner;
		$repository = $this->getJConfig()->github->repository;

		$this->say('Creating package ' . $this->getJConfig()->extension . " " . $this->getJConfig()->version);

		$latest_release = $this->getLatestReleases();
		$pulls          = $this->getAllRepoPulls();

		$changes = $this->getChanges($latest_release, $pulls);

		$this->changelogUpdate($changes);

		$this->taskGitStack()
			->add('CHANGELOG.md')
			->commit("Prepare for release version " . $version)
			->push($remote, $branch)
			->run();

		$this->say("Creating github tag: $version");

		$this->taskGitStack()
			->stopOnFail()
			->tag($version)
			->push($remote, $version)
			->run();

		$this->say("Tag created: $version and published at $owner/$repository");

		$this->say("Creating the release at: https://github.com/$owner/$repository/releases/tag/$version");

		$github           = $this->getGithub();
		$changesInRelease = "# Changelog: \n\n" . implode("\n* ", $changes);

		$response = $github->repositories->releases->create(
			$owner,
			$repository,
			(string) $version,
			'',
			$this->getJConfig()->extension . " " . $version,
			$changesInRelease,
			false,
			true
		);

		$this->say(print_r($repository, true));

		$this->uploadToGithub($version, $this->getJConfig()->github->token, $response->upload_url);
	}
public function run()
	{
		$version    = $this->getJConfig()->version;
		$remote     = $this->getJConfig()->github->remote;
		$branch     = $this->getJConfig()->github->branch;
		$owner      = $this->getJConfig()->github->owner;
		$repository = $this->getJConfig()->github->repository;

		$this->say('Creating package ' . $this->getJConfig()->extension . " " . $this->getJConfig()->version);

		$latest_release = $this->getLatestReleases();
		$pulls          = $this->getAllRepoPulls();

		$changes = $this->getChanges($latest_release, $pulls);

		$this->changelogUpdate($changes);

		$this->taskGitStack()
			->add('CHANGELOG.md')
			->commit("Prepare for release version " . $version)
			->push($remote, $branch)
			->run();

		$this->say("Creating github tag: $version");

		$this->taskGitStack()
			->stopOnFail()
			->tag($version)
			->push($remote, $version)
			->run();

		$this->say("Tag created: $version and published at $owner/$repository");

		$this->say("Creating the release at: https://github.com/$owner/$repository/releases/tag/$version");

		$github           = $this->getGithub();
		$changesInRelease = "# Changelog: \n\n" . implode("\n* ", $changes);

		$response = $github->repositories->releases->create(
			$owner,
			$repository,
			(string) $version,
			'',
			$this->getJConfig()->extension . " " . $version,
			$changesInRelease,
			false,
			true
		);

		$this->say(print_r($repository, true));

		$this->uploadToGithub($version, $this->getJConfig()->github->token, $response->upload_url);
	}
public function run ( ) { $ version = $ this -> getJConfig ( ) -> version ; $ remote = $ this -> getJConfig ( ) -> github -> remote ; $ branch = $ this -> getJConfig ( ) -> github -> branch ; $ owner = $ this -> getJConfig ( ) -> github -> owner ; $ repository = $ this -> getJConfig ( ) -> github -> repository ; $ this -> say ( 'Creating package ' . $ this -> getJConfig ( ) -> extension . " " . $ this -> getJConfig ( ) -> version ) ; $ latest_release = $ this -> getLatestReleases ( ) ; $ pulls = $ this -> getAllRepoPulls ( ) ; $ changes = $ this -> getChanges ( $ latest_release , $ pulls ) ; $ this -> changelogUpdate ( $ changes ) ; $ this -> taskGitStack ( ) -> add ( 'CHANGELOG.md' ) -> commit ( "Prepare for release version " . $ version ) -> push ( $ remote , $ branch ) -> run ( ) ; $ this -> say ( "Creating github tag: $version" ) ; $ this -> taskGitStack ( ) -> stopOnFail ( ) -> tag ( $ version ) -> push ( $ remote , $ version ) -> run ( ) ; $ this -> say ( "Tag created: $version and published at $owner/$repository" ) ; $ this -> say ( "Creating the release at: https://github.com/$owner/$repository/releases/tag/$version" ) ; $ github = $ this -> getGithub ( ) ; $ changesInRelease = "# Changelog: \n\n" . implode ( "\n* " , $ changes ) ; $ response = $ github -> repositories -> releases -> create ( $ owner , $ repository , ( string ) $ version , '' , $ this -> getJConfig ( ) -> extension . " " . $ version , $ changesInRelease , false , true ) ; $ this -> say ( print_r ( $ repository , true ) ) ; $ this -> uploadToGithub ( $ version , $ this -> getJConfig ( ) -> github -> token , $ response -> upload_url ) ; }
Release the build package on GitHub

@return  bool

@since   1.0
Release the build package on GitHub