From c187ae22e5ae9c68160e86025b79c0957e764142 Mon Sep 17 00:00:00 2001
From: Antoine Legrand <2t.antoine@gmail.com>
Date: Mon, 12 Feb 2018 15:32:40 +0100
Subject: [PATCH] Force to /usr/bin/python in CI

---
 .gitlab-ci.yml         | 10 ++++++----
 Dockerfile             | 19 +++++++++----------
 tests/Makefile         |  5 ++---
 tests/requirements.txt |  1 +
 4 files changed, 18 insertions(+), 17 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8406ee4e2..2aab53a5b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -16,7 +16,7 @@ variables:
   GS_ACCESS_KEY_ID: $GS_KEY
   GS_SECRET_ACCESS_KEY: $GS_SECRET
   CONTAINER_ENGINE: docker
-  SSH_USER: $GCE_USER
+  SSH_USER: root
   GCE_PREEMPTIBLE: "false"
   ANSIBLE_KEEP_REMOTE_FILES: "1"
   ANSIBLE_CONFIG: ./tests/ansible.cfg
@@ -34,14 +34,14 @@ variables:
 # us-west1-a
 
 before_script:
-    - pip install -r tests/requirements.txt
+    - /usr/bin/python -m pip install -r tests/requirements.txt
     - mkdir -p /.ssh
 
 .job: &job
   tags:
     - kubernetes
     - docker
-  image: quay.io/kubespray/kubespray:master
+  image: quay.io/kubespray/kubespray:latest
 
 .docker_service: &docker_service
   services:
@@ -61,6 +61,7 @@ before_script:
 .do_variableS: &do_variables
   PRIVATE_KEY: $DO_PRIVATE_KEY
   CI_PLATFORM: "do"
+  SSH_USER: root
 
 
 .testcases: &testcases
@@ -73,7 +74,8 @@ before_script:
       - $HOME/.cache
   before_script:
     - docker info
-    - pip install -r tests/requirements.txt
+    - /usr/bin/python -m pip install -r requirements.txt
+    - /usr/bin/python -m pip install -r tests/requirements.txt
     - mkdir -p /.ssh
     - mkdir -p $HOME/.ssh
     - ansible-playbook --version
diff --git a/Dockerfile b/Dockerfile
index f7703e5f2..d2cfa16c2 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,17 +1,16 @@
-FROM python:2.7.14-stretch
+FROM ubuntu:16.04
 
 RUN mkdir /kubespray
 WORKDIR /kubespray
 RUN apt update -y && \
     apt install -y \
     libssl-dev python-dev sshpass apt-transport-https \
-    ca-certificates curl gnupg2 software-properties-common
-RUN curl -fsSL https://download.docker.com/linux/$(. /etc/os-release; echo "$ID")/gpg | apt-key add - && \
-    add-apt-repository \
-    "deb [arch=amd64] https://download.docker.com/linux/$(. /etc/os-release; echo "$ID") \
-    $(lsb_release -cs) \
-    stable" \
-    && apt update -y && apt-get install docker-ce -y
-
+    ca-certificates curl gnupg2 software-properties-common python-pip
+RUN  curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - && \
+     add-apt-repository \
+     "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
+     $(lsb_release -cs) \
+     stable" \
+     && apt update -y && apt-get install docker-ce -y
 COPY . .
-RUN pip install -r tests/requirements.txt && pip install -r requirements.txt
+RUN /usr/bin/python -m pip install pip -U && /usr/bin/python -m pip install -r tests/requirements.txt && python -m pip install -r requirements.txt
diff --git a/tests/Makefile b/tests/Makefile
index 8c4639b29..638a299f5 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -5,10 +5,9 @@ $(HOME)/.ssh/id_rsa:
 
 init-gce: $(HOME)/.ssh/id_rsa
 	# echo $(GCE_PEM_FILE) | base64 -d > $(HOME)/.ssh/gce
-	echo "$(GCE_CREDENTIALS_B64)" > $(HOME)/.ssh/gce.json
+	echo "$(GCE_CREDENTIALS_B64)" | base64 -d > $(HOME)/.ssh/gce.json
 
 init-do: $(HOME)/.ssh/id_rsa
-	pip install dopy==0.3.5
 	echo $(DO_PRIVATE_KEY) | base64 -d > $(HOME)/.ssh/id_rsa
 
 create-gce: init-gce
@@ -43,7 +42,7 @@ create-do: init-do
 
 delete-do:
 	ansible-playbook -i ../inventory/sample/hosts.ini cloud_playbooks/create-do.yml -c local \
-	$LOG_LEVEL \
+	$(LOG_LEVEL) \
 	-e @"files/${CI_JOB_NAME}.yml" \
 	-e state=absent \
 	-e test_id=${TEST_ID} \
diff --git a/tests/requirements.txt b/tests/requirements.txt
index 01ef7b5ac..0b6163a5d 100644
--- a/tests/requirements.txt
+++ b/tests/requirements.txt
@@ -3,3 +3,4 @@ yamllint
 apache-libcloud==2.2.1
 boto==2.9.0
 tox
+dopy
-- 
GitLab