Skip to content
Open
Show file tree
Hide file tree
Changes from 7 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
2 changes: 1 addition & 1 deletion ansible/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ summarized below:
| Type | Families |
| ------------- | -------------- |
| rhel | rhel-7 <br> rhel-8 |
| rhel-s390x | rhel-8-6-s390x |
| rhel-s390x | rhel-8-6-s390x <br> rhel-9-6-s390x <br> rhel-10-s390x |
| rhel-ppc64le | rhel-8.8-05102023 |
| rhel-sap | rhel-8-4-sap-ha <br> rhel-8-6-sap-ha |
| cos | cos-stable <br> cos-beta <br> cos-dev |
Expand Down
3 changes: 3 additions & 0 deletions ansible/group_vars/all.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,9 @@ virtual_machines:
ssh_key_file: "~/.ssh/acs-s390x-rsa.prv"
families:
- rhel-8-6-s390x
- rhel-9-6-s390x
- rhel-10-s390x
container_engine: podman

# We have taken families name as "p" since there is a character limit for instance name
# in ibm cloud (56 chars max)
Expand Down
3 changes: 2 additions & 1 deletion ansible/roles/create-vm/tasks/create-s390x-vm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@
id: "{{ vsi.resource.id | default(omit) }}"
vpc: "{{ s390x.vpc_id }}"
profile: "{{ s390x.vsi_profile }}"
image: "{{ s390x.vsi_image_id }}"
image: "{{ s390x.image_ids[vm_family] }}"
resource_group: "{{ s390x.vsi_resource_group_id }}"
keys:
- "{{ s390x.ssh_key_id }}"
Expand Down Expand Up @@ -99,6 +99,7 @@
- job_id_{{ job_id }}
- platform_{{ test_platform }}
- vm_arch_s390x
- container_engine_{{ container_engine }}
ansible_ssh_extra_args: "-o StrictHostKeyChecking=no"
ansible_ssh_private_key_file: "{{ vm_ssh_key_file }}"
vm_config: "{{ vm_config }}"
Expand Down
12 changes: 11 additions & 1 deletion ansible/roles/destroy-vm/tasks/destroy-s390x-vm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
zone: "{{ vsi.resource.zone }}"
primary_network_interface:
- subnet: "{{ vsi.resource.primary_network_interface[0].subnet }}"
ignore_errors: true
when: vsi.resource.id is defined

- name: Check for existing floating IP
Expand All @@ -36,6 +37,7 @@
state: absent
id: "{{ fip.resource.id }}"
zone: "{{ fip.resource.zone }}"
ignore_errors: true
when: fip.resource.id is defined

- name: Check for existing Security Group
Expand All @@ -51,7 +53,15 @@
delegate_to: localhost
ibm.cloudcollection.ibm_is_security_group:
state: absent
id: "{{ sg.resource.id }}"
name: "{{ inventory_hostname }}-sg"
vpc: "{{ s390x.vpc_id }}"
register: sg_delete
failed_when:
- sg_delete.rc | default(0) != 0
- '"Target not found" not in (sg_delete.stderr | default(""))'
- '"Target not found" not in (sg_delete.msg | default(""))'
- '"not_found" not in (sg_delete.stderr | default(""))'
- '"not_found" not in (sg_delete.msg | default(""))'
when: sg.resource.id is defined

- name: Remove IBM inventory file (delete file)
Expand Down
10 changes: 10 additions & 0 deletions ansible/roles/provision-vm/tasks/redhat.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,3 +64,13 @@
update_cache: true
when: runtime_command == 'podman'

# Collector binds host ports 8080 (HTTP API) and 9090 (Prometheus metrics) when
# running integration tests. RHEL Web Console (cockpit) also defaults to 9090
# and is installed on many RHEL images (including RHEL 10 on s390x).
- name: Disable cockpit socket (conflicts with collector Prometheus port 9090)
ansible.builtin.systemd:
name: cockpit.socket
state: stopped
enabled: false
failed_when: false

6 changes: 4 additions & 2 deletions ansible/roles/run-test-target/tasks/pull-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@
delegate_to: localhost

- name: Pull QA images
command: "{{ 'sudo' if runtime_as_root else '' }} {{ runtime_command }} pull {{ item.value }}-{{ qa_tag }}"
become: "{{ runtime_as_root }}"
command: "{{ runtime_command }} pull {{ item.value }}-{{ qa_tag }}"
loop: "{{ images.qa | dict2items }}"
# parallel for speeeeed
async: 300
Expand All @@ -21,7 +22,8 @@
ignore_errors: true

- name: Pull non-QA images
command: "{{ 'sudo' if runtime_as_root else '' }} {{ runtime_command }} pull {{ item.value }}"
become: "{{ runtime_as_root }}"
command: "{{ runtime_command }} pull {{ item.value }}"
loop: "{{ images.non_qa | dict2items }}"
# parallel for speeeeed
async: 300
Expand Down
12 changes: 9 additions & 3 deletions ansible/roles/run-test-target/tasks/test-docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,10 +54,16 @@
become: "{{ runtime_as_root }}"
shell:
cmd: |
if [[ -f "/run/containers/0/auth.json" ]]; then
mkdir -p ~/.docker/
cp "/run/containers/0/auth.json" ~/.docker/config.json
fi
if [[ -f "${XDG_RUNTIME_DIR:-}/containers/auth.json" ]]; then
AUTH_FILE="${XDG_RUNTIME_DIR:-}/containers/auth.json"
elif [[ -f "/run/containers/0/auth.json" ]]; then
AUTH_FILE="/run/containers/0/auth.json"
else
echo >&2 "No valid auth.json file found"
exit 1
fi
cp "${AUTH_FILE}" ~/.docker/config.json
creates: ~/.docker/config.json
when: runtime_command == "podman"

Expand Down
6 changes: 4 additions & 2 deletions ansible/vars/s390x.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,10 @@


s390x:
#rhel-8-6-s390x
vsi_image_id: r014-bd269dc6-aa79-4998-b2bc-1eccbda68ed2
image_ids:
rhel-8-6-s390x: r014-bd269dc6-aa79-4998-b2bc-1eccbda68ed2
rhel-9-6-s390x: r014-f1042c04-7517-46ba-89d7-597c8273a1ba
rhel-10-s390x: r014-18b71370-7941-4ee5-8f07-93d8fb3803ce
vsi_profile: bz2-2x8

# IBM Cloud setup
Expand Down
Loading