Class: Abt::Providers::Devops::Commands::Init

Inherits:
BaseCommand show all
Defined in:
lib/abt/providers/devops/commands/init.rb

Constant Summary collapse

AZURE_DEV_URL_REGEX =
%r{^https://dev\.azure\.com/(?<organization>[^/]+)/(?<project>[^/]+)}.freeze
VS_URL_REGEX =
%r{^https://(?<organization>[^.]+)\.visualstudio\.com/(?<project>[^/]+)}.freeze

Instance Attribute Summary

Attributes inherited from BaseCommand

#config, #path

Attributes inherited from BaseCommand

#ari, #cli, #flags

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseCommand

#initialize

Methods inherited from BaseCommand

flags, #initialize

Constructor Details

This class inherits a constructor from Abt::Providers::Devops::BaseCommand

Class Method Details

.descriptionObject



15
16
17
# File 'lib/abt/providers/devops/commands/init.rb', line 15

def self.description
  "Pick DevOps board for current git repository"
end

.usageObject



11
12
13
# File 'lib/abt/providers/devops/commands/init.rb', line 11

def self.usage
  "abt init devops"
end

Instance Method Details

#performObject



19
20
21
22
23
24
25
26
27
28
29
# File 'lib/abt/providers/devops/commands/init.rb', line 19

def perform
  require_local_config!
  board = cli.prompt.choice("Select a project work board", boards)

  config.path = Path.from_ids(
    organization_name: organization_name,
    project_name: project_name,
    board_id: board["id"]
  )
  print_board(organization_name, project_name, board)
end