class Greyatom::NetrcInteractor

Attributes

login[R]
netrc[R]
password[R]

Public Class Methods

new() click to toggle source
# File lib/greyatom/netrc-interactor.rb, line 7
def initialize
  ensure_proper_permissions!
end

Public Instance Methods

delete!(machine:) click to toggle source
# File lib/greyatom/netrc-interactor.rb, line 21
def delete!(machine:)
  @netrc = Netrc.read

  netrc.delete(machine)
  netrc.save
end
read(machine: 'ga-config') click to toggle source
# File lib/greyatom/netrc-interactor.rb, line 11
def read(machine: 'ga-config')
  @netrc = Netrc.read
  @login, @password = netrc[machine]
end
write(machine: 'ga-config', new_login:, new_password:) click to toggle source
# File lib/greyatom/netrc-interactor.rb, line 16
def write(machine: 'ga-config', new_login:, new_password:)
  netrc[machine] = new_login, new_password
  netrc.save
end

Private Instance Methods

ensure_proper_permissions!() click to toggle source
# File lib/greyatom/netrc-interactor.rb, line 30
def ensure_proper_permissions!
  system('chmod 0600 ~/.netrc &>/dev/null')
end