integration_tests += [
integration_test_template + {
'name' : fs.name(meson.current_source_dir()),
- 'mkosi-args' : integration_test_template['mkosi-args'] + [
- '--configure-script', meson.current_source_dir() / 'mkosi.configure',
- ],
+ 'rtc' : true,
'vm' : true,
},
]
import argparse
import base64
import dataclasses
+import datetime
import json
import os
import re
parser.add_argument('--exit-code', required=True, type=int)
parser.add_argument('--coredump-exclude-regex', required=True)
parser.add_argument('--sanitizer-exclude-regex', required=True)
+ parser.add_argument('--rtc', action=argparse.BooleanOptionalAction)
parser.add_argument('mkosi_args', nargs='*')
args = parser.parse_args()
"""
)
+ if args.rtc:
+ if sys.version_info >= (3, 12):
+ now = datetime.datetime.now(datetime.UTC)
+ else:
+ now = datetime.datetime.utcnow()
+
+ rtc = datetime.datetime.strftime(now, r'%Y-%m-%dT%H:%M:%S')
+ else:
+ rtc = None
+
cmd = [
args.mkosi,
'--directory', os.fspath(args.meson_source_dir),
'--credential', f'systemd.unit-dropin.{args.unit}={shlex.quote(dropin)}',
'--runtime-network=none',
'--runtime-scratch=no',
+ *([f'--qemu-args=-rtc base={rtc}'] if rtc else []),
*args.mkosi_args,
'--firmware', args.firmware,
*(['--kvm', 'no'] if int(os.getenv('TEST_NO_KVM', '0')) else []),
'vm' : false,
'coredump-exclude-regex' : '',
'sanitizer-exclude-regex' : '',
+ 'rtc' : false,
}
testdata_subdirs = [
'auxv',
integration_test_args += ['--vm']
endif
+ if integration_test['rtc']
+ integration_test_args += ['--rtc']
+ endif
+
if not mkosi.found()
continue
endif