You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by da...@apache.org on 2020/01/09 23:48:18 UTC
[couchdb-infra-cm] 01/02: Only run docker tasks on x86_64 hosts
This is an automated email from the ASF dual-hosted git repository.
davisp pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/couchdb-infra-cm.git
commit 109bf5c0a8adb8294ab35a16bd065a9acf7a46b4
Author: Paul J. Davis <pa...@gmail.com>
AuthorDate: Thu Jan 9 17:16:30 2020 -0600
Only run docker tasks on x86_64 hosts
---
roles/ci_agent/tasks/{main.yml => docker.yml} | 67 +++------------------------
roles/ci_agent/tasks/main.yml | 56 +++-------------------
2 files changed, 13 insertions(+), 110 deletions(-)
diff --git a/roles/ci_agent/tasks/main.yml b/roles/ci_agent/tasks/docker.yml
similarity index 50%
copy from roles/ci_agent/tasks/main.yml
copy to roles/ci_agent/tasks/docker.yml
index 48064f2..a63f71f 100644
--- a/roles/ci_agent/tasks/main.yml
+++ b/roles/ci_agent/tasks/docker.yml
@@ -1,12 +1,3 @@
-- name: Configure TCP Keep-Alive
- copy:
- src: 50-ci-agent.sysctl.conf
- dest: /etc/sysctl.d/50-ci-agent.conf
- mode: 0644
-
-- name: Load TCP Keep-Alive configuration
- script: /sbin/sysctl --load /etc/sysctl.d/50-ci-agent.conf
-
- name: Install Docker gpg key for Apt
apt_key:
url: https://download.docker.com/linux/debian/gpg
@@ -37,29 +28,6 @@
- qemu
- qemu-user-static
-- name: Install Java 8
- apt:
- name: "{{ packages }}"
- state: latest
- vars:
- packages:
- - openjdk-8-jre-headless
-
-- name: Add group jenkins
- group:
- name: jenkins
- gid: 910
-
-- name: Add user jenkins
- user:
- name: jenkins
- uid: 910
- groups:
- - jenkins
- - docker
- state: present
- shell: /bin/bash
-
- name: Install kill-old-docker.sh
copy:
src: kill-old-docker.sh
@@ -78,32 +46,9 @@
hour: '19'
job: /usr/bin/docker system prune -a -f --filter "until=72h"
-- name: Create Jenkins runit service directory
- file:
- path: /etc/sv/jenkins
- state: directory
-
-- name: Create Jenkins runit log directory
- file:
- path: /etc/sv/jenkins/log/main
- state: directory
-
-- name : Create Jenkins runit run script
- template:
- src: runit-main.j2
- dest: /etc/sv/jenkins/run
- mode: 0755
-
-- name: Create Jenkins runit logs run script
- copy:
- src: runit-logs
- dest: /etc/sv/jenkins/log/run
- mode: 0755
-
-- name: Enable Jenkins runit service
- file:
- src: /etc/sv/jenkins
- dest: /etc/service/jenkins
- state: link
-
-
+- name: Add Jenkins user to docker group
+ user:
+ name: jenkins
+ groups:
+ - docker
+ append: yes
\ No newline at end of file
diff --git a/roles/ci_agent/tasks/main.yml b/roles/ci_agent/tasks/main.yml
index 48064f2..2f97ab8 100644
--- a/roles/ci_agent/tasks/main.yml
+++ b/roles/ci_agent/tasks/main.yml
@@ -3,39 +3,11 @@
src: 50-ci-agent.sysctl.conf
dest: /etc/sysctl.d/50-ci-agent.conf
mode: 0644
+ register: ciagentsysctl
- name: Load TCP Keep-Alive configuration
- script: /sbin/sysctl --load /etc/sysctl.d/50-ci-agent.conf
-
-- name: Install Docker gpg key for Apt
- apt_key:
- url: https://download.docker.com/linux/debian/gpg
- state: present
-
-- name: Setup Docker Apt repository
- apt_repository:
- repo: deb https://download.docker.com/linux/debian {{ ansible_distribution_release }} stable
- filename: docker
- state: present
-
-- name: Install Docker Packages
- apt:
- name: "{{ packages }}"
- vars:
- packages:
- - containerd.io
- - docker-ce
- - docker-ce-cli
-
-- name: Install multi-architecture support for Docker
- apt:
- name: "{{ packages }}"
- state: latest
- vars:
- packages:
- - binfmt-support
- - qemu
- - qemu-user-static
+ shell: /sbin/sysctl --load /etc/sysctl.d/50-ci-agent.conf
+ when: ciagentsysctl.changed
- name: Install Java 8
apt:
@@ -56,27 +28,13 @@
uid: 910
groups:
- jenkins
- - docker
state: present
shell: /bin/bash
-- name: Install kill-old-docker.sh
- copy:
- src: kill-old-docker.sh
- dest: /usr/local/bin/kill-old-docker.sh
- mode: 0755
-
-- name: Add kill-old-docker.sh cron entry
- cron:
- name: Kill old docker containers
- hour: '19'
- job: /usr/local/bin/kill-old-docker.sh
-
-- name: Add docker prune cron entry
- cron:
- name: Docker prune
- hour: '19'
- job: /usr/bin/docker system prune -a -f --filter "until=72h"
+- name: Setup Docker on x86_64 hosts
+ include_tasks: docker.yml
+ when:
+ - ansible_facts['architecture'] == 'x86_64'
- name: Create Jenkins runit service directory
file: