Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
61f312b
konflux: integrate Testing Farm for multi-arch kola testing
Roshan-R Feb 12, 2026
48e20b5
tmt: split qemu build and kola test into two tests
Roshan-R Mar 4, 2026
900f4a4
tmt: fix git ref
Roshan-R Mar 4, 2026
051c986
tmt: fix cosa command
Roshan-R Mar 4, 2026
dd6a865
tmt: use GIT_URL and GIT_COMMIT to get which repo to init
Roshan-R Mar 5, 2026
56f002b
tmt: add testiso support
Roshan-R Mar 6, 2026
5148221
cosa: remove unwanted params to podman
Roshan-R Mar 9, 2026
68fd398
temp-commit: remove set -eo pipefail to testiso.sh to anaylse error
Roshan-R Mar 9, 2026
382a84b
tmt: split testiso.sh to build-iso.sh and test-iso.sh
Roshan-R Mar 9, 2026
25be9f8
tests: add --rm to podman command
Roshan-R Mar 9, 2026
0ff4256
tmt: add init test
Roshan-R Mar 10, 2026
9326d84
tmt: mark git safe directory
Roshan-R Mar 10, 2026
83befdd
tmt(test-iso): add --inst-insecure to skip signature verification
Roshan-R Mar 11, 2026
1f26d3a
tmt: add trap to tests to upload kola artifacts if tests fail
Roshan-R Mar 14, 2026
5d2647d
tmt: add run_kola bash func for better kola integration
Roshan-R Mar 16, 2026
0e72aac
tmt(fix): add cd to run_kola
Roshan-R Mar 16, 2026
610beb7
tmt(fix): fix kola command EXTRA_ARGS
Roshan-R Mar 16, 2026
9568370
tmt: exit on first test fail
Roshan-R Mar 16, 2026
3efe01d
tmt: cosa command add --userns=keep-id:uid=1000,gid=1000
Roshan-R Mar 16, 2026
fa71ba6
tmt: remove exit-first temporarily
Roshan-R Mar 16, 2026
19c15dc
tmt: add cosa shell -- to mktemp
Roshan-R Mar 16, 2026
5bebef6
tmt: mkdir -p TMT_TEST_DATA
Roshan-R Mar 16, 2026
41271e2
tmt: parallelize iso and qemu test tracks
Roshan-R Mar 26, 2026
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
1 change: 1 addition & 0 deletions .fmf/version
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1
1 change: 1 addition & 0 deletions .tekton/testing-devel/kustomization.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,4 @@ resources:
- on-pull-request
- on-pull-request-overrides
- on-push
- testing-farm.yaml
65 changes: 65 additions & 0 deletions .tekton/testing-devel/testing-farm.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
apiVersion: appstudio.redhat.com/v1beta2
kind: IntegrationTestScenario
metadata:
labels:
test.appstudio.openshift.io/optional: "true"
name: fedora-coreos-testing-devel-kola-tests-x86-64
spec:
application: fedora-coreos-testing-devel
contexts:
- name: component_fedora-coreos-testing-devel
resolverRef:
params:
- name: url
value: https://gitlab.com/testing-farm/integrations-konflux
- name: revision
value: v3.16
- name: pathInRepo
value: pipeline/tmt-via-testing-farm/tmt-via-testing-farm.yaml
resolver: git
params:
- name: COMPOSE
value: Fedora-43
- name: ARCH
value: x86_64
- name: IMAGE_TAG
value: v3.16
- name: GIT_URL
value: https://github.com/Roshan-R/fedora-coreos-config
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Update to coreos org

- name: GIT_REF
value: kola-testing-farm
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The GIT_URL is set to a personal fork and GIT_REF to a development branch. For long-term maintainability and stability, this should point to the official upstream repository and a stable reference (e.g., a tag or main branch) rather than a personal fork, especially before merging.

- name: TMT_PLAN
value: tmt
---
apiVersion: appstudio.redhat.com/v1beta2
kind: IntegrationTestScenario
metadata:
labels:
test.appstudio.openshift.io/optional: "true"
name: fedora-coreos-testing-devel-kola-tests-aarch64
spec:
application: fedora-coreos-testing-devel
contexts:
- name: component_fedora-coreos-testing-devel
resolverRef:
params:
- name: url
value: https://gitlab.com/testing-farm/integrations-konflux
- name: revision
value: v3.16
- name: pathInRepo
value: pipeline/tmt-via-testing-farm/tmt-via-testing-farm.yaml
resolver: git
params:
- name: COMPOSE
value: Fedora-43
- name: ARCH
value: aarch64
- name: IMAGE_TAG
value: v3.16
- name: GIT_URL
value: https://github.com/Roshan-R/fedora-coreos-config
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

update to coreOS org

- name: GIT_REF
value: kola-testing-farm
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The GIT_URL is set to a personal fork and GIT_REF to a development branch. For long-term maintainability and stability, this should point to the official upstream repository and a stable reference (e.g., a tag or main branch) rather than a personal fork, especially before merging.

- name: TMT_PLAN
value: tmt
5 changes: 5 additions & 0 deletions plans.fmf
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
/kola:
enabled: true
discover:
how: fmf
path: tmt
35 changes: 35 additions & 0 deletions tmt/plans/kola.fmf
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
discover:
how: fmf
test: kola
adjust+:
- when: arch == x86_64 or arch == aarch64
provision:
hardware:
cpu:
processors: ">= 4"
memory: ">= 8 GB"
disk:
- size: ">= 100 GB"
virtualization:
is-supported: true
prepare:
- how: install
package:
- libvirt
- qemu-kvm
- qemu-img
- skopeo
- virt-install
- wget
- jq
- git
- how: shell
script: podman pull quay.io/coreos-assembler/coreos-assembler:latest
execute:
how: tmt

/qemu:
summary: QEMU tests
tag: qemu
environment+:
PLATFORM: qemu
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's split that in /build-qemu and /test-qemu at least

4 changes: 4 additions & 0 deletions tmt/tests/kola.fmf
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
test: ./test.sh
duration: 3h
environment:
TEST_CASE: kola
31 changes: 31 additions & 0 deletions tmt/tests/kola.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
#!/bin/bash
set -euo pipefail

cat <<EOF > $HOME/utils.sh
export COSA_DIR=\$HOME/workspace/build;
cosa ()
{
env | grep --color=auto COREOS_ASSEMBLER;
local -r COREOS_ASSEMBLER_CONTAINER_LATEST="quay.io/coreos-assembler/coreos-assembler:latest";
set -x;
podman run --rm -ti --security-opt=label=disable --privileged --uidmap=1000:0:1 --uidmap=0:1:1000 --uidmap=1001:1001:64536 -v=\${COSA_DIR}:/srv/ --device=/dev/kvm --device=/dev/fuse --tmpfs=/tmp -v=/var/tmp:/var/tmp --name=cosa \${COREOS_ASSEMBLER_CONFIG_GIT:+-v=\$COREOS_ASSEMBLER_CONFIG_GIT:/srv/src/config/:ro} \${COREOS_ASSEMBLER_GIT:+-v=\$COREOS_ASSEMBLER_GIT/src/:/usr/lib/coreos-assembler/:ro} \${COREOS_ASSEMBLER_ADD_CERTS:+-v=/etc/pki/ca-trust:/etc/pki/ca-trust:ro} \${COREOS_ASSEMBLER_CONTAINER_RUNTIME_ARGS} \${COREOS_ASSEMBLER_CONTAINER:-\$COREOS_ASSEMBLER_CONTAINER_LATEST} "\$@";
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we can drop the customization env vars here

rc=\$?;
set +x;
return \$rc
}
EOF
set -x
source $HOME/utils.sh
mkdir -p $COSA_DIR
echo $TMT_TEST_DATA
cosa init --force https://github.com/coreos/fedora-coreos-config

echo $IMAGE_URL
cosa import docker://$IMAGE_URL
CONFIG_COMMIT=$(jq -r ".\"coreos-assembler.oci-imported-labels\".vcs-ref" ${COSA_DIR}/builds/latest/$(arch)/meta.json)
pushd ${COSA_DIR}/src/config
git checkout $CONFIG_COMMIT
popd
cosa buildextend-qemu
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
cosa buildextend-qemu
cosa osbuild qemu

cosa kola run --rerun --allow-rerun-success=tags=needs-internet --build=latest --on-warn-failure-exit-77 --arch=$(arch) '--tag=!reprovision' --parallel=5
mv $COSA_DIR/tmp/kola $TMT_TEST_DATA
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we probably want to also test the ISO and build all the artifacts

9 changes: 9 additions & 0 deletions tmt/tests/test.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/bash
set -euo pipefail

if [ "$TEST_CASE" = "kola" ]; then
./kola.sh
else
echo "Error: Test case $TEST_CASE not found!"
exit 1
fi