Skip to content
Draft
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
4 changes: 4 additions & 0 deletions mantle/kola/harness.go
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,10 @@ const InstalledTestDefaultTest = "test.sh"
// Specifying this in the tags list is required to denote a need for Internet access
const NeedsInternetTag = "needs-internet"

// BootcBaseTag marks tests with no test-specific Ignition/Butane (no register.Test.UserData).
// They are intended to run when SSH is provisioned without custom Ignition (e.g. systemd/SMBIOS).
const BootcBaseTag = "bootc-base"

// PlatformIndependentTag is currently equivalent to platform: qemu, but that may change in the future.
// For more, see the doc in external-tests.md.
const PlatformIndependentTag = "platform-independent"
Expand Down
7 changes: 7 additions & 0 deletions mantle/kola/tests/coretest/core.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import (

"github.com/pborman/uuid"

"github.com/coreos/coreos-assembler/mantle/kola"
"github.com/coreos/coreos-assembler/mantle/kola/register"
"github.com/coreos/coreos-assembler/mantle/platform"
)
Expand Down Expand Up @@ -57,6 +58,7 @@ func init() {
Run: LocalTests,
ClusterSize: 1,
NativeFuncs: nativeFuncs,
Tags: []string{kola.BootcBaseTag},
})
register.RegisterTest(&register.Test{
Name: "basic.uefi",
Expand All @@ -69,6 +71,7 @@ func init() {
MachineOptions: platform.MachineOptions{
Firmware: uefi,
},
Tags: []string{kola.BootcBaseTag},
})
register.RegisterTest(&register.Test{
Name: "basic.uefi-secure",
Expand All @@ -81,6 +84,7 @@ func init() {
MachineOptions: platform.MachineOptions{
Firmware: uefiSecure,
},
Tags: []string{kola.BootcBaseTag},
})
register.RegisterTest(&register.Test{
Name: "basic.nvme",
Expand All @@ -95,6 +99,7 @@ func init() {
MachineOptions: platform.MachineOptions{
Nvme: true,
},
Tags: []string{kola.BootcBaseTag},
})
register.RegisterTest(&register.Test{
Name: "rootfs.uuid",
Expand All @@ -106,6 +111,7 @@ func init() {
},
// FIXME run on RHCOS once it has https://github.com/coreos/ignition-dracut/pull/93
Distros: []string{"fcos"},
Tags: []string{kola.BootcBaseTag},
})
register.RegisterTest(&register.Test{
Name: "rhcos.services-disabled",
Expand All @@ -116,6 +122,7 @@ func init() {
"ServicesDisabled": register.CreateNativeFuncWrap(TestServicesDisabledRHCOS),
},
Distros: []string{"rhcos"},
Tags: []string{kola.BootcBaseTag},
})
}

Expand Down
2 changes: 1 addition & 1 deletion mantle/kola/tests/ostree/sync.go
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ func init() {
Name: "ostree.sync",
Description: "Verify ostree can sync the filesystem with disconnected the NFS volume.",
Distros: []string{"rhcos"},
Tags: []string{"ostree", kola.SkipBaseChecksTag, kola.NeedsInternetTag, "reprovision"},
Tags: []string{"ostree", kola.SkipBaseChecksTag, kola.NeedsInternetTag, "reprovision", kola.BootcBaseTag},
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.

This test cannot be tagged bootc-base because it used ignition dynamically c.f

func ostreeSyncTest(c cluster.TestCluster) {
// Start nfs server machine
nfs_server := setupNFSMachine(c)
// Start test machine
butane := conf.Butane(`variant: fcos
version: 1.5.0
storage:
directories:
- path: /var/mnt/data1
mode: 0777
- path: /var/mnt/data2
mode: 0777
- path: /var/mnt/data3
mode: 0777
- path: /var/mnt/data4
mode: 0777
files:
- path: /etc/systemd/system.conf
overwrite: true
contents:
inline: |
[Manager]
DefaultTimeoutStopSec=10s
- path: /usr/local/bin/nfs-random-write.sh
mode: 0755
overwrite: true
contents:
inline: |
#!/bin/bash
i=$1
while true; do
dd if=/dev/urandom of=/var/mnt/data$i/test bs=4096 count=2048 conv=notrunc oflag=append &> /dev/null
sleep 0.5
rm -f /var/mnt/data$i/test
done
systemd:
units:
- name: nfs-random-write@.service
enabled: false
contents: |
[Unit]
Description=Run NFS Random Write Test %I
Before=umount.target
After=remote-fs.target
[Service]
ExecStart=/usr/local/bin/nfs-random-write.sh %I
# Add this because of hang at reboot on EL10
# See https://github.com/openshift/os/issues/1751
ExecStopPost=/bin/umount -lf /var/mnt/data%I || true
Type=simple
[Install]
WantedBy=multi-user.target`)
opts := platform.MachineOptions{
MinMemory: 2048,
}

})
}

Expand Down
4 changes: 2 additions & 2 deletions mantle/kola/tests/ostree/unlock.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,15 +31,15 @@ func init() {
Name: "ostree.unlock",
Description: "Verify installing an rpm does not persist when using `ostree admin unlock`.",
FailFast: true,
Tags: []string{"ostree", kola.NeedsInternetTag}, // need network to pull RPM
Tags: []string{"ostree", kola.NeedsInternetTag, kola.BootcBaseTag}, // need network to pull RPM
})
register.RegisterTest(&register.Test{
Run: ostreeHotfixTest,
ClusterSize: 1,
Name: "ostree.hotfix",
Description: "Verify that the deployment can be put into hotfix mode where RPMs installed with persist across reboots.",
FailFast: true,
Tags: []string{"ostree", kola.NeedsInternetTag}, // need network to pull RPM
Tags: []string{"ostree", kola.NeedsInternetTag, kola.BootcBaseTag}, // need network to pull RPM
})
}

Expand Down
2 changes: 1 addition & 1 deletion mantle/kola/tests/rpmostree/deployments.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ func init() {
Name: "rpmostree.upgrade-rollback",
Description: "Verify an upgrade and rollback with a simulated update works.",
FailFast: true,
Tags: []string{"rpm-ostree", "upgrade"},
Tags: []string{"rpm-ostree", "upgrade", kola.BootcBaseTag},
})
register.RegisterTest(&register.Test{
Run: rpmOstreeInstallUninstall,
Expand Down