Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
78 changes: 78 additions & 0 deletions tests/playbooks/pre.yml
Original file line number Diff line number Diff line change
Expand Up @@ -119,3 +119,81 @@
path: /run/docker.sock
mode: 0666
become: true

# On RAX hosts, we have a small root partition and a large,
# unallocated ephemeral device attached at /dev/xvde
- name: Set ephemeral device if /dev/xvde exists
when: ansible_devices["xvde"] is defined
set_fact:
ephemeral_device: "/dev/xvde"

# On other providers, we have a device called "ephemeral0".
- name: Set ephemeral device by label
when: ephemeral_device is undefined
block:
- name: Get ephemeral0 device node
command: /sbin/blkid -L ephemeral0
register: ephemeral0
# rc !=0 is expected
failed_when: False
changed_when: False

- name: Set ephemeral device if LABEL exists
when: "ephemeral0.rc == 0"
set_fact:
ephemeral_device: "{{ ephemeral0.stdout }}"

- name: Configure additional disk (if available)
become: true
when: ephemeral_device is defined
block:
- name: Ensure ephemeral device is unmounted
ansible.posix.mount:
name: "{{ ephemeral_device }}"
state: "{{ item }}"
loop:
- unmounted
- absent

- name: Get existing partitions
community.general.parted:
device: "{{ ephemeral_device }}"
unit: MiB
state: info
register: ephemeral_partitions

- name: Remove any existing partitions
community.general.parted:
device: "{{ ephemeral_device }}"
number: "{{ item.num }}"
state: absent
loop: "{{ ephemeral_partitions.partitions }}"

- name: Create filesystem on additional partition
community.general.filesystem:
fstype: ext4
dev: "{{ ephemeral_device }}"
opts: "-L kolla"

- name: Ensure /mnt/kolla mountpoint is created
ansible.builtin.file:
path: "/mnt/kolla"
owner: root
group: root
state: directory
mode: 0755

- name: Mount additional filesystem
ansible.posix.mount:
path: "/mnt/kolla"
src: "LABEL=kolla"
fstype: ext4
state: present

- name: Ensure /mnt/kolla/work_dir directory is created
ansible.builtin.file:
path: "/mnt/kolla/work_dir"
owner: root
group: root
state: directory
mode: 0777
6 changes: 6 additions & 0 deletions tests/playbooks/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,9 @@
push: yes
source: local
loop: "{{ docker_host_info.images }}"
register: push_status
until: push_status.failed is false
retries: 5
when: kolla_registry == 'dockerhub'

- block:
Expand All @@ -39,4 +42,7 @@
repository: "quay.io/{{ item.RepoTags.0 }}"
source: local
loop: "{{ docker_host_info.images }}"
register: push_status
until: push_status.failed is false
retries: 5
when: kolla_registry == 'quay.io'
3 changes: 2 additions & 1 deletion tests/playbooks/run.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
- ../vars/zuul.yml
vars:
tag_suffix: "{{ '-aarch64' if ansible_architecture == 'aarch64' else '' }}"
kolla_disk: "{{ true if ephemeral_device is defined else false }}"
kolla_build_config:
DEFAULT:
debug: true
Expand Down Expand Up @@ -46,4 +47,4 @@
command: "{{ virtualenv_path }}/bin/kolla-build --template-only --work-dir {{ kolla_build_logs_dir }}/work_dir"

- name: Run kolla-build
command: "{{ virtualenv_path }}/bin/kolla-build"
command: "{{ virtualenv_path }}/bin/kolla-build {% if kolla_disk %}--work-dir /mnt/kolla/work_dir{% endif %}"