class Prepd::Setup
Constants
- ANSIBLE_ROLES
- ANSIBLE_ROLES_PATH
TODO: add OS detection TODO: Externalize next two values to a yaml file?
Public Instance Methods
clone_ansible_roles()
click to toggle source
Clone Ansible roles
# File lib/prepd/models/setup.rb, line 38 def clone_ansible_roles FileUtils.mkdir_p(ANSIBLE_ROLES_PATH) unless Dir.exists? ANSIBLE_ROLES_PATH Dir.chdir(ANSIBLE_ROLES_PATH) do ANSIBLE_ROLES.each do |key, value| next if Dir.exists? "#{ANSIBLE_ROLES_PATH}/#{value}" system("git clone #{Prepd.git_log} git@github.com:rjayroach/#{key} #{value}") end end end
directory_cannot_exist()
click to toggle source
# File lib/prepd/models/setup.rb, line 12 def directory_cannot_exist return if Prepd.config.force errors.add(:directory_exists, requested_dir) if Dir.exists?(requested_dir) end
initialize_setup()
click to toggle source
# File lib/prepd/models/setup.rb, line 21 def initialize_setup FileUtils.mkdir_p(requested_dir) Dir.chdir(requested_dir) do FileUtils.cp_r("#{Prepd.files_dir}/setup/.", '.') end Prepd.config.working_dir = Prepd.config_dir Workspace.new(name: 'share').create end
machine_is_host()
click to toggle source
# File lib/prepd/models/setup.rb, line 7 def machine_is_host return if Prepd.config.machine_type.host? errors.add(:machine_type, 'Setup can only run on the host machine') end
requested_dir()
click to toggle source
# File lib/prepd/models/setup.rb, line 17 def requested_dir "#{Prepd.config_dir}/setup" end