Module: FluidCLI::Environment

Defined in:
lib/fluid_cli/environment.rb

Overview

The environment module provides an interface to get information from the environment in which the CLI runs

Class Method Summary collapse

Class Method Details

.auth_token(env_variables: ENV) ⇒ Object



16
17
18
# File 'lib/fluid_cli/environment.rb', line 16

def self.auth_token(env_variables: ENV)
  env_variables["FLUID_AUTH_TOKEN"]
end

.company(env_variables: ENV) ⇒ Object



12
13
14
# File 'lib/fluid_cli/environment.rb', line 12

def self.company(env_variables: ENV)
  env_variables["FLUID_COMPANY"]
end

.interactive=(interactive) ⇒ Object



20
21
22
# File 'lib/fluid_cli/environment.rb', line 20

def self.interactive=(interactive)
  @interactive = interactive
end

.interactive?(env_variables: ENV) ⇒ Boolean

Returns:

  • (Boolean)


24
25
26
27
28
29
30
# File 'lib/fluid_cli/environment.rb', line 24

def self.interactive?(env_variables: ENV)
  if env_variables.key?("FLUID_CLI_TTY")
    @interactive = env_variables["FLUID_CLI_TTY"] == "true"
  else
    @interactive ||= STDIN.tty?
  end
end

.ruby_version(context: Context.new) ⇒ Object

Raises:

  • (FluidCLI::Abort)


5
6
7
8
9
10
# File 'lib/fluid_cli/environment.rb', line 5

def self.ruby_version(context: Context.new)
  output, status = context.capture2e("ruby", "--version")
  raise FluidCLI::Abort, context.message("core.errors.missing_ruby") unless status.success?
  version = output.match(/ruby (\d+\.\d+\.\d+)/)[1]
  puts "Ruby version: #{version}"
end