ePages 6.17.43 - DE_EPAGES/Installer/API/SystemPatchBuilder.pm

Package DE_EPAGES::Installer::API::SystemPatchBuilder

this module generates the whole patch for a new epages release starting with version specific changes, adding Jira Tasks version control branching cartridge patch building language pack patch building patch package building

Functions

checkTargetBranch
createPullRequest
getCurrentReleaseTagFromInstaller
getPreviousReleaseTagFromInstaller
mergePullRequest
new
printMessage

checkTargetBranch

checkout Branch and create/checkout TargetBranch

Syntax
$self->checkTargetBranch($Branch, $TargetBranch, $Remote);
Input
$Branch (string)
basic branch the targetbranch is created from (required)
$TargetBranch (string)
target branch generated patch files are committed to (required)
$Remote (string)
remote to push commits to (optional)

createPullRequest

create a pull request on GitHub

Syntax
$self->createPullRequest($hOptions);
Input
$hOptions (string)
keys
  • userName - username of GitHub repository to push changes to | string
  • userCrossRepo - username of GitHub repository to pull changes from | string
  • password - authentication token for GitHub for userPull | string
  • featurebranch - name of the branch where the changes are | string
  • baseBranch - name of the branch to push the changes into | string
  • repository - name of the GitHub repository the branches are on
Return
$PRID (int)
The GitHub pull request identifier

getCurrentReleaseTagFromInstaller

get the current release tag, uses perl installer module DE_EPAGES::Installer::API::Cartridge

Syntax
my $CurrentReleaseTag = $self->getCurrentReleaseTagFromInstaller();
Return
$CurrentReleaseTag (string)
current release tag

getPreviousReleaseTagFromInstaller

get the previous release tag, uses perl installer module DE_EPAGES::Installer::API::Cartridge

Syntax
my $PreviousReleaseTag = $self->getPreviousReleaseTagFromInstaller();
Return
$PreviousReleaseTag (string)
previous release tag

mergePullRequest

merge a pull request on GitHub

Syntax
$self->mergePullRequest($hOptions);
Input
$PullRequestID (int)
the ID of the Pull Request on GitHub
$hOptions (string)
keys
  • userName - username of GitHub repository to push changes to | string
  • password - authentication token for GitHub for userPull | string
  • repository - name of the GitHub repository the branches are on

new

Creates a new SystemPatchBuilder object, responsible for tagging, building patch files for each cartridge and commit changes into cvs

Syntax
$PatchBuilder = DE_EPAGES::Installer::API::SystemPatchBuilder->new(
    'verbose' => 0,
);
Input
$hOptions (hash)
keys
  • verbose - if 1 all messages where printed

Return
$SystemPatchBuilder (object)
SystemPatchBuilder object

printMessage

print message if verbose is true

Syntax
$self->printMessage('message to test');
Input
$Message (string)
message to print