From 4caa5e1434beb0c777be6ffd2d221332d81bb43e Mon Sep 17 00:00:00 2001 From: Alexzander thunder Shevchenko Date: Sun, 5 Apr 2020 15:03:01 +0300 Subject: [PATCH] Setting python version back to 3.x since there some issues with Ansible version detection for pip installation. --- .../ansible/cap/guest/alpine/ansible_install.rb | 9 ++++++--- .../ansible/cap/guest/alpine/ansible_install_test.rb | 12 +++++++++--- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb b/plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb index 9248476cb..d422c6a26 100644 --- a/plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb +++ b/plugins/provisioners/ansible/cap/guest/alpine/ansible_install.rb @@ -24,12 +24,15 @@ module VagrantPlugins private def self.ansible_apk_install(machine) - machine.communicate.sudo "apk add --update --no-cache python ansible" + 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 python" - machine.communicate.sudo "apk add --update --no-cache --virtual .build-deps python-dev libffi-dev openssl-dev build-base" + 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 diff --git a/test/unit/plugins/provisioners/ansible/cap/guest/alpine/ansible_install_test.rb b/test/unit/plugins/provisioners/ansible/cap/guest/alpine/ansible_install_test.rb index 46b80ff6d..9b3893ef3 100644 --- a/test/unit/plugins/provisioners/ansible/cap/guest/alpine/ansible_install_test.rb +++ b/test/unit/plugins/provisioners/ansible/cap/guest/alpine/ansible_install_test.rb @@ -26,9 +26,11 @@ describe VagrantPlugins::Ansible::Cap::Guest::Alpine::AnsibleInstall do describe "#pip_setup" do it "install required alpine packages for pip" do expect(communicator).to receive(:sudo).once.ordered. - with("apk add --update --no-cache python") + with("apk add --update --no-cache python3") expect(communicator).to receive(:sudo).once.ordered. - with("apk add --update --no-cache --virtual .build-deps python-dev libffi-dev openssl-dev build-base") + with("if [ ! -e /usr/bin/python ]; then ln -sf python3 /usr/bin/python ; fi") + expect(communicator).to receive(:sudo).once.ordered. + with("apk add --update --no-cache --virtual .build-deps python3-dev libffi-dev openssl-dev build-base") subject.pip_setup(machine) end @@ -41,7 +43,11 @@ describe VagrantPlugins::Ansible::Cap::Guest::Alpine::AnsibleInstall do describe "when install_mode is :default (or unknown)" do it "installs ansible with 'apk' package manager" do expect(communicator).to receive(:sudo).once.ordered. - with("apk add --update --no-cache python ansible") + with("apk add --update --no-cache python3 ansible") + expect(communicator).to receive(:sudo).once.ordered. + with("if [ ! -e /usr/bin/python ]; then ln -sf python3 /usr/bin/python ; fi") + expect(communicator).to receive(:sudo).once.ordered. + with("if [ ! -e /usr/bin/pip ]; then ln -sf pip3 /usr/bin/pip ; fi") subject.ansible_install(machine, :default, "", "", "") end