class GitPivotalTrackerIntegration::Command::Newbug

The class that encapsulates creating a Pivotal Tracker Bug Story

Public Instance Methods

run(args) click to toggle source

Creates a Pivotal Tracker story by doing the following steps:

  • Takes arguments from command line

  • If arguments contains -i then it creates a bug story under icebox

  • If arguments contains -b then it creates a bug story under backlog

  • If arguments contains -tl then it creates a bug story at top of specified list

  • If arguments contains -bl then it creates a bug story at bottom of specified list

  • If there are no arguments passed then it creates a bug story in icebox top of the list if you wish to create

# File lib/git-pivotal-tracker-integration/command/newbug.rb, line 28
def run(args)
  $LOG.debug("#{self.class} in project:#{@project.name} pwd:#{pwd} branch:#{Util::Git.branch_name}")
  story = nil
  if (args.include?("-i")) #icebox
    story = create_icebox_bug_story(args)
  elsif (args.include?("-b")) #backlog
    story = create_backlog_bug_story(args)
  else
    puts "\n Syntax for creating new bug story in icebox top of the list:\n git newbug -i -tl <bug-title> \n Syntax for creating new bug story in icebox bottom of the list: \n git newbug -i -bl <bug-title>\n"
    puts "\n Syntax for creating new bug story in backlog top of the list:\n git newbug -b -tl <bug-title> \n Syntax for creating new bug story in backlog bottom of the list: \n git newbug -b -bl <bug-title>\n"
    user_response = nil
    while (user_response.nil? || user_response.empty?)
      user_response = ask("\nYou have missed some parameters to pass...If you are ok with creating new bug story in icebox then enter y otherwise enter n")
    end
    while !(["y","n"].include?(user_response))
     user_response = ask("\nInvalid entry...If you are ok with creating new bug story in icebox then enter y otherwise enter n")
    end
    if user_response.downcase == "y"
      story = self.create_icebox_bug_story(args)
    else
      abort "\nCheck your new bug story creation syntax and then try again"
    end
  end
  puts "A new bug story has been created successfully with ID:#{story.id}"
end