Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

test: add custom partition mount points to raw image test case #3884

Closed
Closed
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
19 changes: 19 additions & 0 deletions test/cases/ostree-ami-image.sh
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ OSTREE_OSNAME=rhel-edge
BUCKET_NAME="composer-ci-${TEST_UUID}"
BUCKET_URL="s3://${BUCKET_NAME}"
OBJECT_URL="http://${BUCKET_NAME}.s3.${AWS_DEFAULT_REGION}.amazonaws.com"
CUSTOM_FS_LVS="false"

# Set up temporary files.
TEMPDIR=$(mktemp -d)
Expand Down Expand Up @@ -100,10 +101,12 @@ case "${ID}-${VERSION_ID}" in
"rhel-9."*)
OSTREE_REF="rhel/9/${ARCH}/edge"
SYSROOT_RO="true"
CUSTOM_FS_LVS="true"
;;
"centos-9")
OSTREE_REF="centos/9/${ARCH}/edge"
SYSROOT_RO="true"
CUSTOM_FS_LVS="true"
;;
*)
redprint "unsupported distro: ${ID}-${VERSION_ID}"
Expand Down Expand Up @@ -615,6 +618,20 @@ groups = ["wheel"]
url = "${OBJECT_URL}/config.ign"
EOF

if [[ "${CUSTOM_FS_LVS}" == "true" ]]; then
tee -a "$BLUEPRINT_FILE" > /dev/null << EOF
[[customizations.filesystem]]
mountpoint = "/foo/bar"
size=2147483648
[[customizations.filesystem]]
mountpoint = "/foo"
size=8589934592
[[customizations.filesystem]]
mountpoint = "/var/myfiles"
size= "1 GiB"
EOF
fi

greenprint "📄 aws ami blueprint"
cat "$BLUEPRINT_FILE"

Expand Down Expand Up @@ -884,6 +901,7 @@ sudo ansible-playbook -v -i "${TEMPDIR}"/inventory \
-e ostree_commit="${INSTALL_HASH}" \
-e sysroot_ro="$SYSROOT_RO" \
-e fips="${FIPS}" \
-e custom_fs_lvs="${CUSTOM_FS_LVS}" \
/usr/share/tests/osbuild-composer/ansible/check_ostree.yaml || RESULTS=0
check_result

Expand Down Expand Up @@ -1062,6 +1080,7 @@ sudo ansible-playbook -v -i "${TEMPDIR}"/inventory \
-e ostree_commit="${UPGRADE_HASH}" \
-e sysroot_ro="$SYSROOT_RO" \
-e fips="${FIPS}" \
-e custom_fs_lvs="${CUSTOM_FS_LVS}" \
/usr/share/tests/osbuild-composer/ansible/check_ostree.yaml || RESULTS=0
check_result

Expand Down
23 changes: 23 additions & 0 deletions test/cases/ostree-raw-image.sh
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,7 @@ KERNEL_RT_PKG="kernel-rt"
# Set up variables.
SYSROOT_RO="false"
CUSTOM_DIRS_FILES="false"
CUSTOM_FS_LVS="false"

# Set FIPS variable default
FIPS="${FIPS:-false}"
Expand All @@ -121,6 +122,7 @@ case "${ID}-${VERSION_ID}" in
PARENT_REF="rhel/9/${ARCH}/edge"
OS_VARIANT="rhel9-unknown"
SYSROOT_RO="true"
CUSTOM_FS_LVS="true"
;;
"centos-8")
OSTREE_REF="centos/8/${ARCH}/edge"
Expand All @@ -134,6 +136,7 @@ case "${ID}-${VERSION_ID}" in
OS_VARIANT="centos-stream9"
BOOT_ARGS="uefi,firmware.feature0.name=secure-boot,firmware.feature0.enabled=no"
SYSROOT_RO="true"
CUSTOM_FS_LVS="true"
;;
"fedora-"*)
CONTAINER_TYPE=iot-container
Expand Down Expand Up @@ -475,6 +478,22 @@ enabled = ["custom.service"]
EOF
fi

if [[ "${CUSTOM_FS_LVS}" == "true" ]]; then
tee -a "$BLUEPRINT_FILE" > /dev/null << EOF
[[customizations.filesystem]]
mountpoint = "/foo/bar"
size=2147483648

[[customizations.filesystem]]
mountpoint = "/foo"
size=8589934592

[[customizations.filesystem]]
mountpoint = "/var/myfiles"
size= "1 GiB"
say-paul marked this conversation as resolved.
Show resolved Hide resolved
EOF
fi

greenprint "📄 raw image blueprint"
cat "$BLUEPRINT_FILE"

Expand Down Expand Up @@ -587,6 +606,7 @@ EOF
-e sysroot_ro="$SYSROOT_RO" \
-e test_custom_dirs_files="$CUSTOM_DIRS_FILES" \
-e fips="${FIPS}" \
-e custom_fs_lvs="${CUSTOM_FS_LVS}" \
/usr/share/tests/osbuild-composer/ansible/check_ostree.yaml || RESULTS=0
check_result

Expand Down Expand Up @@ -755,6 +775,7 @@ EOF
-e sysroot_ro="$SYSROOT_RO" \
-e test_custom_dirs_files="$CUSTOM_DIRS_FILES" \
-e fips="${FIPS}" \
-e custom_fs_lvs="${CUSTOM_FS_LVS}" \
/usr/share/tests/osbuild-composer/ansible/check_ostree.yaml || RESULTS=0

check_result
Expand Down Expand Up @@ -861,6 +882,7 @@ sudo ansible-playbook -v -i "${TEMPDIR}"/inventory \
-e sysroot_ro="$SYSROOT_RO" \
-e test_custom_dirs_files="$CUSTOM_DIRS_FILES" \
-e fips="${FIPS}" \
-e custom_fs_lvs="${CUSTOM_FS_LVS}" \
/usr/share/tests/osbuild-composer/ansible/check_ostree.yaml || RESULTS=0
check_result

Expand Down Expand Up @@ -1053,6 +1075,7 @@ sudo ansible-playbook -v -i "${TEMPDIR}"/inventory \
-e sysroot_ro="$SYSROOT_RO" \
-e test_custom_dirs_files="$CUSTOM_DIRS_FILES" \
-e fips="${FIPS}" \
-e custom_fs_lvs="${CUSTOM_FS_LVS}" \
/usr/share/tests/osbuild-composer/ansible/check_ostree.yaml || RESULTS=0
check_result

Expand Down
63 changes: 63 additions & 0 deletions test/cases/ostree-simplified-installer.sh
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,7 @@ INSTALLER_FILENAME=simplified-installer.iso
MEMORY=2048
BOOT_ARGS="uefi"
# REF_PREFIX="rhel-edge"
CUSTOM_FS_LVS="false"

# Set up temporary files.
TEMPDIR=$(mktemp -d)
Expand Down Expand Up @@ -155,6 +156,7 @@ case "${ID}-${VERSION_ID}" in
SYSROOT_RO="true"
ANSIBLE_USER=fdouser
FDO_USER_ONBOARDING="true"
CUSTOM_FS_LVS="true"
# workaround selinux bug https://bugzilla.redhat.com/show_bug.cgi?id=2026795
sudo setenforce 0
getenforce
Expand All @@ -173,6 +175,7 @@ case "${ID}-${VERSION_ID}" in
SYSROOT_RO="true"
ANSIBLE_USER=fdouser
FDO_USER_ONBOARDING="true"
CUSTOM_FS_LVS="true"
# workaround selinux bug https://bugzilla.redhat.com/show_bug.cgi?id=2026795
sudo setenforce 0
getenforce
Expand Down Expand Up @@ -469,6 +472,20 @@ fips = ${FIPS}
EOF
fi

if [[ "${CUSTOM_FS_LVS}" == "true" ]]; then
tee -a "$BLUEPRINT_FILE" > /dev/null << EOF
[[customizations.filesystem]]
mountpoint = "/foo/bar"
size=2147483648
[[customizations.filesystem]]
mountpoint = "/foo"
size=8589934592
[[customizations.filesystem]]
mountpoint = "/var/myfiles"
size= "1 GiB"
EOF
fi

greenprint "📄 simplified_iso_without_fdo blueprint"
cat "$BLUEPRINT_FILE"

Expand Down Expand Up @@ -575,6 +592,7 @@ sudo ansible-playbook -v -i "${TEMPDIR}"/inventory \
-e fdo_credential="false" \
-e sysroot_ro="$SYSROOT_RO" \
-e fips="${FIPS}" \
-e custom_fs_lvs="${CUSTOM_FS_LVS}" \
/usr/share/tests/osbuild-composer/ansible/check_ostree.yaml || RESULTS=0
check_result

Expand Down Expand Up @@ -636,6 +654,19 @@ append = "enforcing=0"
EOF
fi

if [[ "${CUSTOM_FS_LVS}" == "true" ]]; then
tee -a "$BLUEPRINT_FILE" > /dev/null << EOF
[[customizations.filesystem]]
mountpoint = "/foo/bar"
size=2147483648
[[customizations.filesystem]]
mountpoint = "/foo"
size=8589934592
[[customizations.filesystem]]
mountpoint = "/var/myfiles"
size= "1 GiB"
EOF
fi

greenprint "📄 installer blueprint"
cat "$BLUEPRINT_FILE"
Expand Down Expand Up @@ -764,6 +795,7 @@ sudo ansible-playbook -v -i "${TEMPDIR}"/inventory \
-e sysroot_ro="$SYSROOT_RO" \
-e mfg_guest_int_name="${MFG_GUEST_INT_NAME}" \
-e fips="${FIPS}" \
-e custom_fs_lvs="${CUSTOM_FS_LVS}" \
/usr/share/tests/osbuild-composer/ansible/check_ostree.yaml || RESULTS=0
check_result

Expand Down Expand Up @@ -821,6 +853,20 @@ append = "enforcing=0"
EOF
fi

if [[ "${CUSTOM_FS_LVS}" == "true" ]]; then
tee -a "$BLUEPRINT_FILE" > /dev/null << EOF
[[customizations.filesystem]]
mountpoint = "/foo/bar"
size=2147483648
[[customizations.filesystem]]
mountpoint = "/foo"
size=8589934592
[[customizations.filesystem]]
mountpoint = "/var/myfiles"
size= "1 GiB"
EOF
fi

greenprint "📄 fdosshkey blueprint"
cat "$BLUEPRINT_FILE"

Expand Down Expand Up @@ -950,6 +996,7 @@ sudo ansible-playbook -v -i "${TEMPDIR}"/inventory \
-e sysroot_ro="$SYSROOT_RO" \
-e mfg_guest_int_name="${MFG_GUEST_INT_NAME}" \
-e fips="${FIPS}" \
-e custom_fs_lvs="${CUSTOM_FS_LVS}" \
/usr/share/tests/osbuild-composer/ansible/check_ostree.yaml || RESULTS=0
check_result

Expand Down Expand Up @@ -1006,6 +1053,20 @@ append = "enforcing=0"
EOF
fi

if [[ "${CUSTOM_FS_LVS}" == "true" ]]; then
tee -a "$BLUEPRINT_FILE" > /dev/null << EOF
[[customizations.filesystem]]
mountpoint = "/foo/bar"
size=2147483648
[[customizations.filesystem]]
mountpoint = "/foo"
size=8589934592
[[customizations.filesystem]]
mountpoint = "/var/myfiles"
size= "1 GiB"
EOF
fi

greenprint "📄 fdosshkey blueprint"
cat "$BLUEPRINT_FILE"

Expand Down Expand Up @@ -1116,6 +1177,7 @@ sudo ansible-playbook -v -i "${TEMPDIR}"/inventory \
-e sysroot_ro="$SYSROOT_RO" \
-e mfg_guest_int_name="${MFG_GUEST_INT_NAME}" \
-e fips="${FIPS}" \
-e custom_fs_lvs="${CUSTOM_FS_LVS}" \
/usr/share/tests/osbuild-composer/ansible/check_ostree.yaml || RESULTS=0
check_result

Expand Down Expand Up @@ -1259,6 +1321,7 @@ sudo ansible-playbook -v -i "${TEMPDIR}"/inventory \
-e sysroot_ro="$SYSROOT_RO" \
-e mfg_guest_int_name="${MFG_GUEST_INT_NAME}" \
-e fips="${FIPS}" \
-e custom_fs_lvs="${CUSTOM_FS_LVS}" \
/usr/share/tests/osbuild-composer/ansible/check_ostree.yaml || RESULTS=0

check_result
Expand Down
19 changes: 19 additions & 0 deletions test/cases/ostree-vsphere.sh
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@ CONTAINER_TYPE=edge-container
CONTAINER_FILENAME=container.tar
VSPHERE_IMAGE_TYPE=edge-vsphere
VSPHERE_FILENAME=image.vmdk
CUSTOM_FS_LVS="false"

# Set up temporary files.
TEMPDIR=$(mktemp -d)
Expand Down Expand Up @@ -118,10 +119,12 @@ case "${ID}-${VERSION_ID}" in
"rhel-9"* )
OSTREE_REF="rhel/9/${ARCH}/edge"
GUEST_ID_DC70="rhel9_64Guest"
CUSTOM_FS_LVS="true"
;;
"centos-9")
OSTREE_REF="centos/9/${ARCH}/edge"
GUEST_ID_DC70="centos9_64Guest"
CUSTOM_FS_LVS="true"
;;
*)
echo "unsupported distro: ${ID}-${VERSION_ID}"
Expand Down Expand Up @@ -460,6 +463,20 @@ groups = ["wheel"]
url = "${IGNITION_SERVER_URL}/config.ign"
EOF

if [[ "${CUSTOM_FS_LVS}" == "true" ]]; then
tee -a "$BLUEPRINT_FILE" > /dev/null << EOF
[[customizations.filesystem]]
mountpoint = "/foo/bar"
size=2147483648
[[customizations.filesystem]]
mountpoint = "/foo"
size=8589934592
[[customizations.filesystem]]
mountpoint = "/var/myfiles"
size= "1 GiB"
EOF
fi

greenprint "📄 vmdk blueprint"
cat "$BLUEPRINT_FILE"

Expand Down Expand Up @@ -548,6 +565,7 @@ sudo ansible-playbook -v -i "${TEMPDIR}"/inventory \
-e fdo_credential="false" \
-e sysroot_ro="$SYSROOT_RO" \
-e fips="${FIPS}" \
-e custom_fs_lvs="${CUSTOM_FS_LVS}" \
/usr/share/tests/osbuild-composer/ansible/check_ostree.yaml || RESULTS=0
check_result

Expand Down Expand Up @@ -682,6 +700,7 @@ sudo ansible-playbook -v -i "${TEMPDIR}"/inventory \
-e fdo_credential="false" \
-e sysroot_ro="$SYSROOT_RO" \
-e fips="${FIPS}" \
-e custom_fs_lvs="${CUSTOM_FS_LVS}" \
/usr/share/tests/osbuild-composer/ansible/check_ostree.yaml || RESULTS=0

check_result
Expand Down
34 changes: 33 additions & 1 deletion test/data/ansible/check_ostree.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
test_custom_dirs_files: "false"
sysroot_ro: "false"
fips: "false"
custom_fs_lvs: "false"

tasks:
# current target host's IP address
Expand Down Expand Up @@ -261,7 +262,7 @@

# case: check pv size
- name: check pv size
shell: pvs --reportformat json | jq .report[0].pv[0].pv_size -r
shell: pvs --reportformat json --units g | jq .report[0].pv[0].pv_size -r | sed "s/\.[0-9]\+g//g"
become: yes
register: result_pv_size
when: "'/dev/mapper/rootvg-rootlv' in result_sysroot_source.stdout"
Expand Down Expand Up @@ -303,6 +304,37 @@
when:
- "'/dev/mapper/rootvg-rootlv' in result_sysroot_source.stdout"
- fdo_credential == "false"
- custom_fs_lvs == "false"

# check logical volumes
- name: check logical volumes
shell: lvdisplay -a
become: yes
register: result_custom_lvs
when:
- "'/dev/mapper/rootvg-rootlv' in result_sysroot_source.stdout"
- custom_fs_lvs == "true"

- name: "check that custom partitions are present"
block:
- assert:
that:
- "'var_myfileslv' in result_custom_lvs.stdout"
- "'foolv' in result_custom_lvs.stdout"
- "'foo_barlv' in result_custom_lvs.stdout"
fail_msg: "There are custom partitions missing"
success_msg: "Custom partitions present in filesystem"
always:
- set_fact:
total_counter: "{{ total_counter | int + 1 }}"
rescue:
- name: failed count + 1
set_fact:
failed_counter: "{{ failed_counter | int + 1 }}"
when:
- "'/dev/mapper/rootvg-rootlv' in result_sysroot_source.stdout"
- custom_fs_lvs == "true"


# case: check /sysroot lv size
- name: check sysroot lv size
Expand Down
Loading