Sha256: 0ade2dc05a082db3d2b9881693f539ba9437983abaf2f318eb796e6162c07ea5

Contents?: true

Size: 1.61 KB

Versions: 12

Compression:

Stored size: 1.61 KB

Contents

require_relative "../facts"
require_relative "../pip/pip"

module VagrantPlugins
  module Ansible
    module Cap
      module Guest
        module Alpine
          module AnsibleInstall

            def self.ansible_install(machine, install_mode, ansible_version, pip_args, pip_install_cmd = "")
              case install_mode
                when :pip
                  pip_setup machine, pip_install_cmd
                  Pip::pip_install machine, "ansible", ansible_version, pip_args, true
                when :pip_args_only
                  pip_setup machine, pip_install_cmd
                  Pip::pip_install machine, "", "", pip_args, false
                else
                  ansible_apk_install machine
              end
            end

            private

            def self.ansible_apk_install(machine)
              machine.communicate.sudo "apk add --update --no-cache python3 ansible"
              machine.communicate.sudo "if [ ! -e /usr/bin/python ]; then ln -sf python3 /usr/bin/python ; fi"
              machine.communicate.sudo "if [ ! -e /usr/bin/pip ]; then ln -sf pip3 /usr/bin/pip ; fi"
            end

            def self.pip_setup(machine, pip_install_cmd = "")
              machine.communicate.sudo "apk add --update --no-cache python3"
              machine.communicate.sudo "if [ ! -e /usr/bin/python ]; then ln -sf python3 /usr/bin/python ; fi"
              machine.communicate.sudo "apk add --update --no-cache --virtual .build-deps python3-dev libffi-dev openssl-dev build-base"
              Pip::get_pip machine, pip_install_cmd
            end

          end
        end
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 3 rubygems

Version Path
vagrant-unbundled-2.3.6.0 plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb
tamtam-vagrant-reload-1.2.1 vendor/cache/vagrant-2092df529ae7/plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb
vagrant-unbundled-2.3.3.0 plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb
vagrant-unbundled-2.3.2.0 plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb
vagrant-unbundled-2.2.19.0 plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb
vagrant-unbundled-2.2.18.0 plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb
vagrant-unbundled-2.2.16.0 plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb
vagrant-unbundled-2.2.14.0 plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb
vagrant-aws-mkubenka-0.7.2.pre.24 vendor/bundle/ruby/2.7.0/bundler/gems/vagrant-22795b161bf6/plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb
vagrant-unbundled-2.2.10.0 plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb
vagrant-unbundled-2.2.9.0 plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb
vagrant-unbundled-2.2.8.0 plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb