blob: 45ca30115d25a466e812ec4732d466a05f720511 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
---
- hosts: all
tasks:
- name: Upload container patches archive
copy:
src: "{{ apex_temp_dir }}/docker_patches.tar.gz"
dest: "/home/stack/docker_patches.tar.gz"
owner: stack
group: stack
mode: 0644
when: patched_docker_services|length > 0
- name: Unpack container patches archive
unarchive:
src: /home/stack/docker_patches.tar.gz
remote_src: yes
list_files: yes
group: stack
owner: stack
dest: /home/stack/
when: patched_docker_services|length > 0
- name: Prepare generic docker registry image file
shell: >
{{ stackrc }} && openstack overcloud container image prepare
--namespace docker.io/tripleo{{ os_version }}
--tag {{ container_tag }}
--push-destination {{ undercloud_ip }}:8787
-e /usr/share/openstack-tripleo-heat-templates/environments/docker.yaml
-e /usr/share/openstack-tripleo-heat-templates/environments/storage-environment.yaml
--output-images-file overcloud_containers.yml
--output-env-file docker-images.yaml
become: yes
become_user: stack
- name: Prepare SDN docker registry image file
shell: >
{{ stackrc }} && openstack overcloud container image prepare
--namespace docker.io/tripleo{{ os_version }}
--tag {{ container_tag }}
--push-destination {{ undercloud_ip }}:8787
{{ sdn_env_file }}
--output-images-file sdn_containers.yml
--output-env-file sdn-images.yaml
become: yes
become_user: stack
when: sdn != false
- name: Touch sdn-images file when nosdn
copy:
content: ""
dest: /home/stack/sdn-images.yaml
force: no
group: stack
owner: stack
mode: 0644
when: sdn == false
- name: Update Ceph tag for aarch64 in container env file
lineinfile:
path: /home/stack/overcloud_containers.yml
regexp: '.*ceph.*'
line: '- imagename: docker.io/ceph/daemon:master-fafda7d-luminous-centos-7-aarch64'
when: aarch64
- name: Update Ceph tag for aarch64 in container image file
lineinfile:
path: /home/stack/docker-images.yaml
regexp: '^DockerCephDaemonImage'
line: 'DockerCephDaemonImage: {{ undercloud_ip }}:8787/ceph/daemon/master-fafda7d-luminous-centos-7-aarch64'
when: aarch64
- name: Upload docker images to local registry
shell: >
{{ stackrc }} && openstack overcloud container image upload
--config-file /home/stack/overcloud_containers.yml
- name: Upload SDN docker images to local registry
shell: >
{{ stackrc }} && openstack overcloud container image upload
--config-file /home/stack/sdn_containers.yml
when: sdn != false
- name: Collect docker images in registry
uri:
url: http://{{ undercloud_ip }}:8787/v2/_catalog
body_format: json
register: response
- include_tasks: patch_containers.yml
with_items: "{{ patched_docker_services }}"
loop_control:
loop_var: item
when:
- patched_docker_services|length > 0
- item in (response.json)['repositories']|join(" ")
- name: Push patched docker images to local registry
shell: docker push {{ undercloud_ip }}:8787/tripleo{{ os_version }}/centos-binary-{{ item }}:apex
when:
- patched_docker_services|length > 0
- item in (response.json)['repositories']|join(" ")
with_items: "{{ patched_docker_services }}"
- name: Modify Images with Apex tag
replace:
path: "{{ item[0] }}"
regexp: "(\\s*Docker.*?:.*?centos-binary-{{ item[1] }}):.*"
replace: '\1:apex'
with_nested:
- [ '/home/stack/sdn-images.yaml', '/home/stack/docker-images.yaml']
- "{{ patched_docker_services }}"
|