Sha256: 10fd0fe27dce3719a9babee927e18ca8ef743af4379bbd4f376656294c6c975e

Contents?: true

Size: 1.17 KB

Versions: 1

Compression:

Stored size: 1.17 KB

Contents

#!/usr/bin/env ruby
# frozen_string_literal: true

require_relative '../lib/geet/helpers/configuration_helper.rb'
require_relative '../lib/geet/git/repository.rb'

include Geet

configuration_helper = Helpers::ConfigurationHelper.new

command, options = configuration_helper.decode_argv || exit
api_token = configuration_helper.api_token

repository = Git::Repository.new(api_token)

case command
when Helpers::ConfigurationHelper::GIST_CREATE_COMMAND
  filename = options.delete(:filename)
  options[:publik] = options.delete(:public) if options.key?(:public)

  Services::CreateGist.new.execute(repository, filename, options)
when Helpers::ConfigurationHelper::ISSUE_CREATE_COMMAND
  title, description = options.values_at(:title, :description)

  Services::CreateIssue.new.execute(repository, title, description, options)
when Helpers::ConfigurationHelper::ISSUE_LIST_COMMAND
  Services::ListIssues.new.execute(repository)
when Helpers::ConfigurationHelper::PR_CREATE_COMMAND
  title, description = options.values_at(:title, :description)

  Services::CreatePr.new.execute(repository, title, description, options)
else
  raise "Internal error - Unrecognized command #{command.inspect}"
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
geet-0.1.2 bin/geet