Use upstream ensure-docker role instead of docker-install
Change-Id: I2d83a02d1520efd90d68df940ac0f045785101b5 Signed-off-by: Andrii Ostapenko <andrii.ostapenko@att.com>
This commit is contained in:
parent
b20403332b
commit
ebc4d99215
@ -13,5 +13,5 @@
|
|||||||
- hosts: all
|
- hosts: all
|
||||||
become: yes
|
become: yes
|
||||||
roles:
|
roles:
|
||||||
- docker-install
|
- ensure-docker
|
||||||
- aiap-build-images
|
- aiap-build-images
|
||||||
|
@ -13,5 +13,5 @@
|
|||||||
- hosts: all
|
- hosts: all
|
||||||
become: yes
|
become: yes
|
||||||
roles:
|
roles:
|
||||||
- docker-install
|
- ensure-docker
|
||||||
- aiap-publish-images
|
- aiap-publish-images
|
||||||
|
@ -30,7 +30,7 @@
|
|||||||
|
|
||||||
- name: docker install
|
- name: docker install
|
||||||
include_role:
|
include_role:
|
||||||
name: docker-install
|
name: ensure-docker
|
||||||
|
|
||||||
- name: install kustomize
|
- name: install kustomize
|
||||||
include_role:
|
include_role:
|
||||||
|
@ -13,5 +13,5 @@
|
|||||||
- hosts: all
|
- hosts: all
|
||||||
become: yes
|
become: yes
|
||||||
roles:
|
roles:
|
||||||
- docker-install
|
- ensure-docker
|
||||||
- airshipctl-build-images
|
- airshipctl-build-images
|
||||||
|
@ -12,4 +12,4 @@
|
|||||||
|
|
||||||
- hosts: all
|
- hosts: all
|
||||||
roles:
|
roles:
|
||||||
- docker-install
|
- ensure-docker
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
|
|
||||||
- hosts: primary
|
- hosts: primary
|
||||||
roles:
|
roles:
|
||||||
- docker-install
|
- ensure-docker
|
||||||
- install-kubectl
|
- install-kubectl
|
||||||
tasks:
|
tasks:
|
||||||
- name: "Build and install airshipctl"
|
- name: "Build and install airshipctl"
|
||||||
|
@ -13,5 +13,5 @@
|
|||||||
- hosts: all
|
- hosts: all
|
||||||
become: yes
|
become: yes
|
||||||
roles:
|
roles:
|
||||||
- docker-install
|
- ensure-docker
|
||||||
- airshipctl-publish-images
|
- airshipctl-publish-images
|
||||||
|
@ -1,28 +0,0 @@
|
|||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
# you may not use this file except in compliance with the License.
|
|
||||||
# You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
|
|
||||||
docker_config_path: "/etc/docker"
|
|
||||||
|
|
||||||
docker_config_log_driver: "journald"
|
|
||||||
docker_config_log_opts: {}
|
|
||||||
|
|
||||||
docker_config: |
|
|
||||||
{
|
|
||||||
"log-driver": "{{ docker_config_log_driver }}",
|
|
||||||
"log-opts": {{ docker_config_log_opts | to_json }}
|
|
||||||
}
|
|
||||||
|
|
||||||
proxy:
|
|
||||||
enabled: false
|
|
||||||
http:
|
|
||||||
https:
|
|
||||||
noproxy:
|
|
@ -1,173 +0,0 @@
|
|||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
# you may not use this file except in compliance with the License.
|
|
||||||
# You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
|
|
||||||
---
|
|
||||||
- name: Ensure older docker versions are removed
|
|
||||||
become: yes
|
|
||||||
package:
|
|
||||||
name:
|
|
||||||
- docker
|
|
||||||
- docker-engine
|
|
||||||
- docker.io
|
|
||||||
- containerd
|
|
||||||
- runc
|
|
||||||
state: absent
|
|
||||||
|
|
||||||
- name: Ensure docker support packages are present
|
|
||||||
become: yes
|
|
||||||
package:
|
|
||||||
name:
|
|
||||||
- apt-transport-https
|
|
||||||
- ca-certificates
|
|
||||||
- curl
|
|
||||||
- gnupg
|
|
||||||
- lsb-release
|
|
||||||
update_cache: yes
|
|
||||||
state: latest
|
|
||||||
|
|
||||||
- name: Add Docker GPG apt key
|
|
||||||
become: yes
|
|
||||||
apt_key:
|
|
||||||
url: https://download.docker.com/linux/ubuntu/gpg
|
|
||||||
keyring: /usr/share/keyrings/docker-archive-keyring.gpg
|
|
||||||
state: present
|
|
||||||
|
|
||||||
- name: Get DEB architecture
|
|
||||||
shell: dpkg --print-architecture
|
|
||||||
register: deb_architecture
|
|
||||||
|
|
||||||
- name: Add Docker Repository
|
|
||||||
become: yes
|
|
||||||
apt_repository:
|
|
||||||
repo: deb [arch={{ deb_architecture.stdout }} signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu {{ ansible_distribution_release }} stable
|
|
||||||
filename: docker
|
|
||||||
state: present
|
|
||||||
|
|
||||||
- name: Ensure docker packages are present
|
|
||||||
become: yes
|
|
||||||
package:
|
|
||||||
name:
|
|
||||||
- docker-ce
|
|
||||||
- docker-ce-cli
|
|
||||||
- containerd.io
|
|
||||||
update_cache: yes
|
|
||||||
state: latest
|
|
||||||
|
|
||||||
- name: Ensure docker group exists
|
|
||||||
group:
|
|
||||||
name: docker
|
|
||||||
state: present
|
|
||||||
|
|
||||||
- name: Add user "{{ ansible_user }}" to docker group
|
|
||||||
become: yes
|
|
||||||
user:
|
|
||||||
name: "{{ ansible_user }}"
|
|
||||||
groups:
|
|
||||||
- docker
|
|
||||||
append: yes
|
|
||||||
|
|
||||||
- name: Reset ssh connection to add docker group to user
|
|
||||||
meta: reset_connection
|
|
||||||
ignore_errors: true
|
|
||||||
|
|
||||||
- block:
|
|
||||||
- name: Create docker service directory
|
|
||||||
file:
|
|
||||||
path: /etc/systemd/system/docker.service.d/
|
|
||||||
state: directory
|
|
||||||
mode: '0755'
|
|
||||||
|
|
||||||
- name: Configure proxy for docker service if enabled
|
|
||||||
template:
|
|
||||||
src: http-proxy-conf.j2
|
|
||||||
dest: /etc/systemd/system/docker.service.d/http-proxy.conf
|
|
||||||
when: proxy.enabled|bool == true
|
|
||||||
become: yes
|
|
||||||
|
|
||||||
- name: Create docker config directory
|
|
||||||
file:
|
|
||||||
path: "{{ docker_config_path }}"
|
|
||||||
state: directory
|
|
||||||
mode: '0755'
|
|
||||||
become: yes
|
|
||||||
|
|
||||||
- name: Debug zuul site mirror var
|
|
||||||
debug:
|
|
||||||
msg:
|
|
||||||
- "zuul_site_mirror_fqdn: {{ zuul_site_mirror_fqdn | default('NONE') }}"
|
|
||||||
ignore_errors: yes
|
|
||||||
|
|
||||||
- name: Set docker_config variable
|
|
||||||
set_fact:
|
|
||||||
docker_config_file: "{{ docker_config_path }}/daemon.json"
|
|
||||||
|
|
||||||
- name: Check if docker config file exists
|
|
||||||
stat:
|
|
||||||
path: "{{ docker_config_file }}"
|
|
||||||
register: res
|
|
||||||
|
|
||||||
# Avoid long if/then/else blocks here below, pretend that config exists
|
|
||||||
- name: Create empty docker config if it doesn't exist
|
|
||||||
copy:
|
|
||||||
content: "{}"
|
|
||||||
dest: "{{ docker_config_file }}"
|
|
||||||
when: not res.stat.exists
|
|
||||||
become: yes
|
|
||||||
|
|
||||||
- name: Get current docker configuration
|
|
||||||
command: "cat {{ docker_config_file }}"
|
|
||||||
register: res
|
|
||||||
|
|
||||||
- name: Get current docker configuration as json
|
|
||||||
set_fact:
|
|
||||||
default_docker_conf: "{{ res.stdout | from_json }}"
|
|
||||||
|
|
||||||
- name: Debug current docker configuration
|
|
||||||
debug:
|
|
||||||
var: default_docker_conf
|
|
||||||
|
|
||||||
- name: Merge default and custom configuration
|
|
||||||
set_fact:
|
|
||||||
merged_docker_config: "{{ default_docker_conf | combine(docker_config) }}"
|
|
||||||
|
|
||||||
- name: Debug merged docker configuration
|
|
||||||
debug:
|
|
||||||
var: merged_docker_config
|
|
||||||
|
|
||||||
- name: Add container images mirror configuration
|
|
||||||
set_fact:
|
|
||||||
merged_docker_config: "{{ merged_docker_config | combine({ 'registry-mirrors': [ 'http://' + zuul_site_mirror_fqdn + ':8082' ] })}}"
|
|
||||||
when: zuul_site_mirror_fqdn is defined
|
|
||||||
|
|
||||||
- name: Debug merged docker configuration
|
|
||||||
debug:
|
|
||||||
var: merged_docker_config
|
|
||||||
|
|
||||||
- name: Save merged docker daemon configuration
|
|
||||||
copy:
|
|
||||||
content: "{{ merged_docker_config | to_nice_json }}"
|
|
||||||
dest: "{{ docker_config_file }}"
|
|
||||||
become: yes
|
|
||||||
|
|
||||||
- name: Start docker
|
|
||||||
become: yes
|
|
||||||
systemd:
|
|
||||||
name: docker
|
|
||||||
state: restarted
|
|
||||||
daemon_reload: yes
|
|
||||||
enabled: true
|
|
||||||
|
|
||||||
- name: Change group ownership on docker socket
|
|
||||||
become: yes
|
|
||||||
file:
|
|
||||||
path: /var/run/docker.sock
|
|
||||||
group: docker
|
|
@ -1,4 +0,0 @@
|
|||||||
[Service]
|
|
||||||
Environment="HTTP_PROXY={{ proxy.http }}"
|
|
||||||
Environment="HTTPS_PROXY={{ proxy.https }}"
|
|
||||||
Environment="NO_PROXY={{ proxy.noproxy }}"
|
|
@ -1,25 +0,0 @@
|
|||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
# you may not use this file except in compliance with the License.
|
|
||||||
# You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
|
|
||||||
- name: install docker
|
|
||||||
include_role:
|
|
||||||
name: docker-install
|
|
||||||
|
|
||||||
- name: check if docker is installed
|
|
||||||
shell: "docker version"
|
|
||||||
register: docker_version
|
|
||||||
|
|
||||||
- name: verify docker is installed
|
|
||||||
assert:
|
|
||||||
that:
|
|
||||||
- docker_version.rc == 0
|
|
||||||
|
|
@ -44,5 +44,8 @@ else
|
|||||||
sudo pip3 --proxy "${http_proxy}" install $PACKAGES
|
sudo pip3 --proxy "${http_proxy}" install $PACKAGES
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# zuul-jobs provides ensure-docker role available by default in zuul
|
||||||
|
ansible-galaxy install git+https://opendev.org/zuul/zuul-jobs.git -p "${AIRSHIPCTL_WS}/../zuul-jobs"
|
||||||
|
|
||||||
echo "primary ansible_host=localhost ansible_connection=local ansible_python_interpreter=/usr/bin/python3" > "$ANSIBLE_HOSTS"
|
echo "primary ansible_host=localhost ansible_connection=local ansible_python_interpreter=/usr/bin/python3" > "$ANSIBLE_HOSTS"
|
||||||
printf "[defaults]\nroles_path = %s/roles\n" "$AIRSHIPCTL_WS" > "$ANSIBLE_CFG"
|
printf "[defaults]\nroles_path = %s/roles:zuul-jobs/roles\n" "$AIRSHIPCTL_WS" > "$ANSIBLE_CFG"
|
||||||
|
Loading…
Reference in New Issue
Block a user