class CiHelper::Functions::PullRequest

Attributes

branch_name[R]

This class is responsible for creating pull request for user

Public Instance Methods

branch_name=(name) click to toggle source

API for outside to set the branch name, normally it accept the params from jenkin function

# File lib/ci_helper/functions/pull_request.rb, line 26
def branch_name=(name)
  @branch_name = name
end
run() click to toggle source
# File lib/ci_helper/functions/pull_request.rb, line 10
def run
  bit_bucket_client.branch_name = branch_name || user_cli.get_branch_name

  if bit_bucket_client.multiple_issues?
    bit_bucket_client.pf_title = user_cli.customize_title
  else
    redmine_client.issue_no = bit_bucket_client.issue_numbers.first
    bit_bucket_client.pf_title = redmine_client.issue.description
    user_cli.print_target(redmine_client.issue.target_branch)
  end

  create_pull_request
  update_issue_status
end

Private Instance Methods

create_pull_request() click to toggle source
# File lib/ci_helper/functions/pull_request.rb, line 32
def create_pull_request
  bit_bucket_client.add_destination(user_cli.get_destination)
  bit_bucket_client.add_user_description(user_cli.get_more_info)
  bit_bucket_client.reviewers = user_cli.get_reviewers
  user_cli.waiting_for_creation
  bit_bucket_client.create_pull_request

  sleep(0.5)
  bit_bucket_client.go_to_pull_request_page
  sleep(0.5)

  puts "this is your pull request page : #{CiHelper::BITBUCKET_DOMAIN}#{bit_bucket_client.pull_request_page.link_with(class: 'execute').href}"
end
update_issue_status() click to toggle source
# File lib/ci_helper/functions/pull_request.rb, line 46
def update_issue_status
  if user_cli.update_issue?
    redmine_updater = CiHelper::Functions::Redmine.new(config)
    redmine_updater.issue_numbers = bit_bucket_client.issue_numbers
    redmine_updater.status = CiHelper::UTPASSED
    redmine_updater.text_box = "pull request : #{CiHelper::BITBUCKET_DOMAIN}#{bit_bucket_client.pull_request_page.link_with(class: 'execute').href}   \n"
    redmine_updater.text_box += "\n CiHelper :#{CiHelper::VERSION}"
    redmine_updater.run
  end
end