mirror of
https://github.com/rancher/os.git
synced 2025-06-25 22:41:36 +00:00
45 lines
921 B
Python
45 lines
921 B
Python
|
import time
|
||
|
import pytest
|
||
|
import rostest.util as u
|
||
|
from rostest.util import SSH
|
||
|
|
||
|
|
||
|
@pytest.fixture(scope="module")
|
||
|
def qemu(request):
|
||
|
q = u.run_qemu(request, run_args=['--append', 'rancher.state.dev=x'])
|
||
|
u.flush_out(q.stdout)
|
||
|
return q
|
||
|
|
||
|
|
||
|
def test_oem(qemu):
|
||
|
SSH(qemu).check_call('sudo', 'bash', '-c', '''
|
||
|
set -x
|
||
|
set -e
|
||
|
sudo mkfs.ext4 -L RANCHER_OEM /dev/vda
|
||
|
sudo mount /dev/vda /mnt
|
||
|
cat > /tmp/oem-config.yml << "EOF"
|
||
|
#cloud-config
|
||
|
rancher:
|
||
|
upgrade:
|
||
|
url: 'foo'
|
||
|
EOF
|
||
|
sudo cp /tmp/oem-config.yml /mnt
|
||
|
sudo umount /mnt
|
||
|
sudo reboot >/dev/null 2>&1 &'''.strip())
|
||
|
|
||
|
time.sleep(1)
|
||
|
|
||
|
SSH(qemu).check_call('bash', '-c', '''
|
||
|
set -x
|
||
|
if [ ! -e /usr/share/ros/oem/oem-config.yml ]; then
|
||
|
echo Failed to find /usr/share/ros/oem/oem-config.yml
|
||
|
exit 1
|
||
|
fi
|
||
|
|
||
|
FOO="$(sudo ros config get rancher.upgrade.url)"
|
||
|
if [ "$FOO" != "foo" ]; then
|
||
|
echo rancher.upgrade.url is not foo
|
||
|
exit 1
|
||
|
fi
|
||
|
'''.strip())
|