Skip to content
Open
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
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-a8eb2566-9128-40ab-a91f-a6e0e18c8426
rhel-10-s390x: r014-18b71370-7941-4ee5-8f07-93d8fb3803ce
vsi_profile: bz2-2x8

# IBM Cloud setup
Expand Down
Loading