Class: Rubyists::Linear::CLI::Issue::Develop

Inherits:
Object
  • Object
show all
Includes:
CommonOptions, Rubyists::Linear::CLI::Issue, SemanticLogger::Loggable
Defined in:
lib/linear/commands/issue/develop.rb

Overview

The Develop class is a Dry::CLI::Command to start/update development status of an issue

Constant Summary

Constants included from Rubyists::Linear::CLI::Issue

ALIASES, DESCRIPTION

Constants included from WhatFor

WhatFor::ALLOWED_PR_TYPES, WhatFor::PR_TYPES, WhatFor::PR_TYPE_SELECTIONS

Instance Method Summary collapse

Methods included from Rubyists::Linear::CLI::Issue

#attach_project, #cancel_issue, #close_issue, #create_pr!, #gimme_da_issue!, #issue_comment, #issue_pr, #make_da_issue!, #update_issue

Methods included from SubCommands

#ask_for_team, #branch_for, #choose_a_team!, #current_branch, #default_branch, #git, included, #prompt, #pull_or_push_new_branch!

Methods included from WhatFor

#ask_for_projects, #ask_or_edit, #cancelled_state_for, #comment_for, #completed_state_for, #description_for, #editor_for, #labels_for, #pr_description_for, #pr_scope_for, #pr_title_for, #pr_type_for, #project_for, #project_scores, #reason_for, #team_for, #title_for

Methods included from CommonOptions

#display, included

Instance Method Details

#call(issue_id:, **options) ⇒ Object



23
24
25
26
27
28
29
30
31
32
# File 'lib/linear/commands/issue/develop.rb', line 23

def call(issue_id:, **options)
  logger.debug('Developing issue', options:)
  issue = gimme_da_issue!(issue_id, me: Rubyists::Linear::User.me)
  branch_name = issue.branchName
  branch = branch_for(branch_name)
  branch.checkout
  prompt.ok "Checked out branch #{branch_name}"
  pull_or_push_new_branch!(branch_name)
  prompt.ok 'Ready to develop!'
end