Class: Legion::Extensions::Github::CLI::AppRunner

Inherits:
Object
  • Object
show all
Includes:
DaemonApi
Defined in:
lib/legion/extensions/github/cli/runner.rb

Instance Method Summary collapse

Instance Method Details

#complete_setupObject



97
98
99
# File 'lib/legion/extensions/github/cli/runner.rb', line 97

def complete_setup
  print_json(api_post('/api/extensions/github/cli/app/complete_setup'))
end

#setupObject



76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
# File 'lib/legion/extensions/github/cli/runner.rb', line 76

def setup
  result = api_post('/api/extensions/github/cli/app/setup')

  if result[:error]
    print_json(result)
    return
  end

  url = result.dig(:data, :manifest_url)
  if url
    warn 'Opening browser to create GitHub App...'
    open_browser(url)
    warn 'Waiting for callback...'
    poll = api_post('/api/extensions/github/cli/app/await_callback',
                    { timeout: 300 })
    print_json(poll)
  else
    print_json(result)
  end
end