From 2cdcf1821d95133a4992d36db514d981ff225e31 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rados=C5=82aw=20Piliszek?= Date: Sun, 15 Mar 2020 15:36:47 +0100 Subject: [PATCH] CI: Ansiblify setup of builders CI is set up using Ansible playbooks now. This also drops redundant shell scripts. Co-authored-by: Marcin Juszkiewicz Change-Id: I5264746fd04276448f4668c3bb3a218a40e8660b --- tests/playbooks/pre.yml | 52 +++++++++++++++++++++++++++++++++++++++++ tests/playbooks/run.yml | 12 ---------- tools/setup_Debian.sh | 21 ----------------- tools/setup_RedHat.sh | 20 ---------------- 4 files changed, 52 insertions(+), 53 deletions(-) delete mode 100755 tools/setup_Debian.sh delete mode 100755 tools/setup_RedHat.sh diff --git a/tests/playbooks/pre.yml b/tests/playbooks/pre.yml index a884f810bc..6065a898cb 100644 --- a/tests/playbooks/pre.yml +++ b/tests/playbooks/pre.yml @@ -2,6 +2,8 @@ - hosts: all roles: - bindep + vars_files: + - ../vars/zuul.yml tasks: - name: Create dir for kolla logs file: @@ -33,3 +35,53 @@ chdir: "{{ zuul.project.src_dir }}" virtualenv: "{{ virtualenv_path }}" virtualenv_python: python3 + + - name: Configure Docker repo for Debian/Ubuntu + block: + - name: Add key for Docker APT repository + apt_key: + url: "{{ nodepool_docker_proxy }}/{{ ansible_distribution | lower }}/gpg" + state: present + + - name: Add Docker APT repository + apt_repository: + repo: "deb {{ nodepool_docker_proxy }}/{{ ansible_distribution | lower }} {{ ansible_distribution_release }} stable" + state: present + when: ansible_os_family == "Debian" + become: true + + - name: Configure Docker repo for CentOS + block: + - name: Add Docker YUM repository + yum_repository: + name: docker + description: Docker + baseurl: "{{ nodepool_docker_proxy }}/centos/7/$basearch/stable" + enabled: yes + gpgcheck: yes + gpgkey: "{{ nodepool_docker_proxy }}/centos/gpg" + # module_hotfixes: True # enabled below (dnf, not yum, feature) + + - name: Enable module_hotfixes in Docker YUM repository + lineinfile: + path: /etc/yum.repos.d/docker.repo + line: 'module_hotfixes=True' + when: ansible_os_family == "RedHat" + become: true + + - name: Install Docker + package: + name: docker-ce + become: true + + - name: Ensure Docker service is started + service: + name: docker + state: started + become: true + + - name: Ensure Docker socket is world-writable + file: + path: /run/docker.sock + mode: 0666 + become: true diff --git a/tests/playbooks/run.yml b/tests/playbooks/run.yml index b8031626d6..a7fa661263 100644 --- a/tests/playbooks/run.yml +++ b/tests/playbooks/run.yml @@ -3,18 +3,6 @@ vars_files: - ../vars/zuul.yml tasks: - - name: Run node setup script - script: "{{ zuul.executor.work_root }}/{{ zuul.project.src_dir }}/tools/setup_{{ ansible_os_family }}.sh" - become: true - environment: - DOCKER_REPOS_MIRROR_URL: "{{ nodepool_docker_proxy }}" - - - name: changing permission of Docker socket to 666 - file: - path: /run/docker.sock - mode: 666 - become: true - - name: Ensure /etc/kolla exists file: path: /etc/kolla diff --git a/tools/setup_Debian.sh b/tools/setup_Debian.sh deleted file mode 100755 index 8be4dce32e..0000000000 --- a/tools/setup_Debian.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash - -set -o xtrace -set -o errexit - -# (SamYaple)TODO: Remove the path overriding -export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" - -# Setup Docker repo and add signing key -distro_id=$(lsb_release -is) -distro_id=${distro_id,,} -distro_codename=$(lsb_release -cs) - -sudo add-apt-repository "deb $DOCKER_REPOS_MIRROR_URL/${distro_id} ${distro_codename} stable" -curl -fsSL $DOCKER_REPOS_MIRROR_URL/${distro_id}/gpg | sudo apt-key add - -sudo apt-get update -sudo apt-get -y install --no-install-recommends docker-ce - -sudo docker info - -echo "Completed $0." diff --git a/tools/setup_RedHat.sh b/tools/setup_RedHat.sh deleted file mode 100755 index 50cd81ff46..0000000000 --- a/tools/setup_RedHat.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash - -set -o xtrace -set -o errexit - -sudo tee /etc/yum.repos.d/docker-ce-stable.repo << EOF -[docker-ce-stable] -baseurl=$DOCKER_REPOS_MIRROR_URL/centos/7/\$basearch/stable -enabled=1 -gpgcheck=1 -gpgkey=$DOCKER_REPOS_MIRROR_URL/centos/gpg -module_hotfixes=True -EOF - -sudo dnf -y install docker-ce - -sudo systemctl start docker -sudo docker info - -echo "Completed $0."