Sha256: cebf670b206ee0ec2b01bad485ede05cc1e379501a1e4791a3a7a4a1669a907a
Contents?: true
Size: 1.8 KB
Versions: 2
Compression:
Stored size: 1.8 KB
Contents
# frozen_string_literal: true require_relative '../command' require "tty-font" module Dri module Commands class Init < Dri::Command def initialize(options) @options = options font = TTY::Font.new(:doom) puts pastel.yellow(font.write("DRI")) end def execute(input: $stdin, output: $stdout) # rubocop:disable Metrics/AbcSize output.puts "🤖 Welcome to DRI 🤖\n" logger.info "🔎 Scanning for existing configurations...\n" if config.exist? overwrite = prompt.yes?("There is already a configuration initialized. Would you like to overwrite it?") unless overwrite output.puts( "Using existing configuration. To view configuration in use try #{add_color('dri profile', :yellow)}." ) exit 0 end end @username = prompt.ask("What is your GitLab username?") @token = prompt.mask("Please provide your GitLab personal access token:") @ops_token = prompt.mask("Please provide your ops.gitlab.net personal access token:") @timezone = prompt.select("Choose your current timezone?", %w[EMEA AMER APAC]) @emoji = prompt.ask("Have a triage emoji?") if (@emoji || @token || @username || @ops_token).nil? logger.error "Please provide a username, gitlab token, ops token, timezone and emoji used for triage." exit 1 end config.set(:settings, :user, value: @username) config.set(:settings, :token, value: @token) config.set(:settings, :ops_token, value: @ops_token) config.set(:settings, :timezone, value: @timezone) config.set(:settings, :emoji, value: @emoji) config.write(force: true) logger.success "✅ We're ready to go 🚀" end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
dri-0.6.1 | lib/dri/commands/init.rb |
dri-0.6.0 | lib/dri/commands/init.rb |