Releases: teemtee/tmt
Releases · teemtee/tmt
Duration multiplication; `--failed-only` option; Multiple disks; Reportportal descriptions
See the release notes for the list of interesting changes.
- Run the
no-commit-to-branch
check only locally by @psss in #2913 - Update interaction with Fedora rawhide by @happz in #2931
- Drop duplicate list of supported HW requirements in beaker plugin by @happz in #2902
- Update distros in the
mrack
provisioning config by @psss in #2932 - Enable pydocstyle checks in ruff by @happz in #2906
- Enforce "one blank line after class docstring" rule by @happz in #2934
- Support
cpu.model-name
hardware requirement for mrack by @skycastlelily in #2921 - Pass correct spec to _parse_system and _parse_location by @skycastlelily in #2924
- Cover tmt.steps.prepare.distgit with pyright by @happz in #2944
- Fix pre-commit typing python version by @LecrisUT in #2959
- Ignore report files created by pytest-html by @happz in #2962
- Cover tmt.steps.prepare.shell with pyright checks by @happz in #2943
- Fix some invalid links in documentation by @happz in #2940
- Add konflux as possible initiator by @lukaszachy in #2947
- Clarify the
trigger
context dimension values by @psss in #2961 - Cover
tmt.trying
withpyright
check by @happz in #2942 - Fix validation of fmf id URL, it must be cloneable first by @happz in #2957
- Allow multiplication in duration input value by @lukaszachy in #2845
- Tweak docs to include how to see details about test failures by @mvo5 in #2541
- Polish test-check/dmesg documentation by @happz in #2897
- Display locals in traceback when requested by @happz in #2900
- Fix path to watchdog log by @happz in #2901
- Extend results schema to allow test phases by @happz in #2933
- Fix "skip missing" behavior when installing debuginfo packages with dnf by @happz in #2956
- Fix multiple rules
adjust
example induration
spec by @psss in #2971 - Require python3.9 in 'develop' target by @lukaszachy in #2993
- Document custom container images built for tmt tests by @happz in #2930
- Split provision/virtual plans to subgroups per step by @happz in #2938
- Add support for basic rerun of tests by @KwisatzHaderach in #2521
- Make test shell wrapper filename even more unique by @happz in #2998
- Simplify parsing of HW requirements and add missing ones by @happz in #2928
- Improve rendering of story links in our docs by @happz in #3001
- Add support for multiple disks to testcloud plugin by @happz in #2767
- Copy launch description to suite description by @kkaarreell in #2992
- Keep patched sources directly in TMT_SOURCE_DIR by @lukaszachy in #2999
- Fix normalization of
hardware
key/option by @happz in #3015
Full Changelog: 1.33.0...1.34.0
1.33.0 SSH options, test restart counter, hardware specifications improvements, pre-commit fixes, rpm-ostree improvements
What's Changed
- Update logger-name for clean by @skycastlelily in #2853
- Document custom Jinja template filters by @happz in #2769
- Fix incorrect translation of
cpu.processors
to Beaker by @skycastlelily in #2851 - Add the
cpu.vendor
hardware requirement by @qcheng-redhat in #2875 - Allow pip install from git-archive by @LecrisUT in #2879
- Add support
cpu.cores
hardware requirement for mrack by @skycastlelily in #2728 - Polish prepare/ansible documentation by @happz in #2824
- Re-use "become" image to fix sudo-related trouble in /tests/provision/user by @happz in #2892
- Fix AVC denial detection on Fedora rawhide by @happz in #2881
- Accept SSH options from environment variable by @happz in #2783
- Add a new section
Review
to contributor docs by @psss in #2886 - Add support for
virtualization.hypervisor
hardware requirement by @skycastlelily in #2733 - Make
junit_xml
more visible to linters by @happz in #2782 - Allow custom failure patterns in
dmesg
test check by @happz in #2786 - Fix Alpine Linux support by @thrix in #2828
- Fix inability of rpm-ostree to install multiple packages by @happz in #2887
- Log hash of the beakerlib library repo by @lukaszachy in #2843
- Allow
duration
in theexecute
schema by @lukaszachy in #2898 - Slightly improve rendring of ReST for command line by @happz in #2823
- Fix copy/paste issue for
combine_hw_disk_size()
by @mvo5 in #2899 - Fix error message if no supported package manager found by @thrix in #2829
- Add test restart counter, similar to
TMT_REBOOT_COUNT
by @happz in #2787 - Add
codespell
pre-commit and fix revealed errors by @LecrisUT in #2819 - Test restart on crash by @happz in #2870
- Define
location.lab-controller
hardware requirement by @happz in #2794 - Parse the
system
hardware requirement by @happz in #2795 - Improve fail message when library doesn't exist by @lukaszachy in #2839
- Install dependencies of upgrade tasks by @martinhoyer in #2866
- Simplify the documentation building by @LecrisUT in #2483
- Fix installation of packages from files by @happz in #2914
New Contributors
- @qcheng-redhat made their first contribution in #2875
- @mvo5 made their first contribution in #2899
Full Changelog: 1.32.2...1.33.0
Package manager discovery order
See the release notes for the list of interesting changes.
- Refresh Beaker API client in mrack to use up-to-date Kerberos ticket by @happz in #2775
- Correctly show the
--provision-timeout
default by @psss in #2817 - Remove the
.travis.yml
config file by @LecrisUT in #2811 - Clarify the
--last
symlink creation race a bit by @psss in #2818 - Removing c9s workaround for pytest-container by @martinhoyer in #2836
- Update pre-commit checks and add a couple of new ones by @happz in #2835
- Add unit test for package manager installing a file system path by @happz in #2830
- Refactor package manager discovery to allow priorities by @happz in #2861
- Removing /var/tmp workdir from rpm packaging by @martinhoyer in #2876
Full Changelog: 1.32.1...1.32.2
1.32.1
- Update pytest on c9s when using site-packages
- Fixing spec file version in order to be able to update Fedora packages.
1.32.0 Package managers; Hardware specifications improvements; Watchdog test check..
See the release notes for the list of interesting changes.
- Fix dmesg check test for recent Fedoras by @happz in #2674
- Support URL as post-install-script for
artemis
plugin by @skycastlelily in #2628 - Enable the full test execution using a label by @psss in #2683
- Drop two no longer used methods from prepare step by @happz in #2672
- Underline
try
menu keys by @lukaszachy in #2679 - Allow custom boot/connect timeouts for testcloud VMs by @happz in #2677
- Cover
tmt.templates
withpyright
by @happz in #2644 - Make checks smarter about environments in which they should not run by @happz in #2686
- Introduce "topology" addresses for guests by @happz in #2670
- Test the
become
key undervirtual
provision by @carlosrodfern in #2659 - Collect test/test check results in test invocation by @happz in #2608
- Check for files in
rpm-ostree install
script by @KwisatzHaderach in #2692 - Properly detect if test is enabled somewhere by @lukaszachy in #2662
- Use the
PROVISION_HOW
variable inprovision
plans by @psss in #2688 - Remove mention about the full test suite from docs by @psss in #2701
- Add essential requirements to checks by @happz in #2684
- Enable
additional_coverage
tests for pull requests by @psss in #2700 - Convert environment handling into a dict-like class by @happz in #2612
- "Show default" flag was dropped from CLI option initialization by @happz in #2710
- Bump supported Artemis API versions to 0.0.69 by @happz in #2711
- Add
Environment
andFmfContext
among loggable types by @happz in #2709 - Mark test check tests with more fitting provision tags by @happz in #2707
- Move deferred user stories into a separate section by @psss in #2715
- Add support for
disk.model-name
hardware requirement by @skycastlelily in #2708 - Extend the
duration
for time-demanding tests by @psss in #2718 - Set acl permissions on workdir root to ensure multi-user access when umask is
0027
by @carlosrodfern in #2510 - Use /usr/sbin/sestatus instead of /usr/bin/sestatus by @guoguojenna in #2720
- Log the beaker job whiteboard by @rh-mcermak in #2719
- Disable password authentication when using keys by @frantisekz in #2695
- Document how to enable verbose/debug logging by @psss in #2727
- Pass
domain_configuration
to testcloud'swake()
by @frantisekz in #2724 - Include
context
in the testmetadata.yaml
file by @LecrisUT in #2716 - Support
disk.model-name
hw requirement formrack
by @skycastlelily in #2705 - Remove now unnecessary
NON_KVM_ADDITIONAL_WAIT
from testcloud by @frantisekz in #2699 - Add support for
disk.driver
hardware requirement by @skycastlelily in #2667 - Disable IPv6 for
/plans/provision/virtual
in CI by @happz in #2735 - Set default formatting of Pint units to use symbols, not names by @happz in #2736
- Add support for emulated TPM into virtual provision plugin by @happz in #2596
- Bootstrap unit tests for Beaker XML transformation of HW requirements by @happz in #2734
- Cover
tmt.hardware
withpyright
check by @happz in #2742 - Support
disk.driver
hw requirement formrack
by @skycastlelily in #2668 - Implement the new test check
watchdog
by @happz in #2412 - Cover
report/junit
withpyright
by @happz in #2725 - Include a simple config for the
polarion
plugin by @psss in #2750 - Move
/tests/run/shell
to/plans/provision/local
by @psss in #2753 - Allow commands whose output is not logged unless they fail by @happz in #2751
- Extract "package manager" functionality into plugins by @happz in #2557
- Run
/plans/install/docs
in corepackit
jobs by @psss in #2747 - Finish unit testing of HW transformations in mrack plugin by @happz in #2748
- Debug output for
discover -h fmf --modified-only
by @lukaszachy in #2760 - Select no tests if
modified-only
returns nothing by @lukaszachy in #2761 - Add new environment variable for test iteration identifier by @therazix in #2726
- Fix typos in the
tmt try
help message examples by @psss in #2778 - Update pre-commit checks by @happz in #2776
- Increase the default test
duration
a bit by @psss in #2777 - Clarify that plan context is not applied to plan by @psss in #2779
- Document test tags and mark beakerlib integration by @lukaszachy in #2731
- Add support for linking artifacts from the report by @bajertom in #2732
- Introduce ansible-lint to format ansible files by @idorax in #2666
- Add support for
zcrypt
to Beaker plugin by @happz in #2697 - Prepare dist-git sources using
rpmbuild -bp
by @lukaszachy in #2641 - Use
TMT_REPORT_ARTIFACTS_URL
in Polarion report plugin by @KwisatzHaderach in #2785 - Allow
keep-git-metadata
to be used without url by @lukaszachy in #2698 - Update the
reportportal
plugin by @4N0body5 in #2702 - Support Alpine Linux
apk
package manager by @thrix in #2788
New Contributors
- @skycastlelily made their first contribution in #2628
- @rh-mcermak made their first contribution in #2719
- @LecrisUT made their first contribution in #2716
Full Changelog: 1.31.0...1.32.0
1.31.0 parallel provisioning, zcrypt, reboot timeout, reduced prepare requirements,...
See the release notes for the list of interesting changes.
- Simple ReST renderer for CLI help texts (#2574)
- Generate plugin documentation from their sources (#2549)
- Fix environment from command line updated twice (#2614)
- Introduce a new prepare plugin for common features (#2198)
- Remove
xfail
for themultidict
issue onrawhide
- Prevent catching avc denials from previous tests
- Remove an obsolete workaround for
centos-stream-8
- Enable the
/tests/discover/libraries
test (#2222) - Add documentation on tmt & regular expressions
- Fix expansion of envvar starting with
@
in fmf nodes - Add the
zcrypt
adapter specification - Allow urllib3 2.x
- Enable
/plans/provision/virtual
for pull requests (#2558) - Remove the dns failures workaround
- Fix reporting of schema errors without the
$id
key - AVC check now saves a timestamp on guest instead of using runner's time
- Add check to prevent
tmt try
deleting imported libraries - Reduce usage of locks in the
testcloud
plugin - Add support for envvars import and export to Polarion
- Use enumeration to implement action handling
- Handle the
ctrl-d
shortcut intmt try
- Run tests with
interactive
mode duringtmt try
- Fix
tmt import --dry
and Polarion import file name - Document that
name
is supported in--filter
search (#2637) - Refactor running of interactive commands (#2554)
- Create container images from the latest non-dev copr build
- Fail
dmesg
check if it containsCall Trace
orsegfault
- Mention the reboot timeout variable in the release notes
- Bump the default reboot timeout to 10 minutes
- Allow change of the default reboot timeout via environment variable
- Introduce essential requirements
- Allow
--update-missing
to change the defaulthow
value - Document the new
become
feature - Raise an error when loading pre-1.24
tests.yaml
- Support terminating process running test via its test invocation (#2589)
- Fix
egrep
warning in/plans/install/docs
- Test framework may provide additional test requirements
- Improve logging of AVC check plugin and its test
- Cleanup logging in
tmt.utils.create_file()
- Drop connection closed messages from test output
- Recommend
qemu-kvm-core
forprovision-virtual
- Fix
/tests/plan/import
to not use special ref (#2627) - Improve imported plan modification test to verify the order as well (#2618)
- Retry the
git clone
action multiple times - Simplify the debuginfo installation test
- Support
virtualization.is-virtualized
inmrack
plugin - Support running all or selected steps
--again
- Allow hardware requirements limit acceptable operators
- Fix inheritance of some keys in provision step data
- Run a callback when command process starts
- Add support for hard reboot to Beaker provision plugin
- Make collected requires/recommends guest-aware
- Copy top level
main.fmf
during testdir pruning - Add support for Artemis API v0.0.67
- Add support for
cpu.flag
hardware requirement - Use a different pidfile location for the full test
- Clear test invocation data path use and derived paths
- Add support for disallowing plugins via command line
- Use constraint classes specific for particular value type
- Making rhts metric value optional.
- Ignore tarballs and generated man page
- Cover
tmt.libraries
withpyright
checks - Parallelize the
provision
step - Let
click
know about the maximal output width - Cover
tmt.identifier
withpyright
checks - Extend
duration
of/tests/core/escaping
a bit - Move docs templates into their own directory
- Drop no longer needed
tmt.utils.copytree()
- Drop no longer used
tmt.utils.listify()
- Provision plugins use
self.data
instead ofself.get()
- Prepare and finish plugins use self.data instead of self.get()
- Fix tmt.utils.format to allow int and float values
- Move code-related pages under new
code
directory - Warn on test case not found in Polarion during report
- Bump pre-commit linters
- When cloning a logger, give it its own copy of labels
- Add a
Toolbelt Catalog
entry fortmt
- Enable the
avc
check for alltmt
tests - Fix dmesg check test on Fedora rawhide & newer
tmt try, custom templates, container network...
See the release notes for the list of interesting changes.
- Make
arch
field unsupported in the spec - Introduce
tty
test attribute to control terminal environment - Ensure the imported plan's
enabled
key is respected - Add support for user defined templates (#2519)
- Update the common schema for the
check
key - Create a
checks
directory to store avc/dmesg checks - Correctly update environment from importing plan
- Implement
tmt try
for interactive sessions - Use a shorter time for
podman stop
(#2480) - Add the
redis
server as a multihost sync example - Improve documentation of test checks
- Adjust the format of Polarion test run title
- Run all available tests only upon a user request
- Rename
name
tohow
in test check specification (#2527) - Link
inheritance
andelasticity
from the guide - Add the
fips
field for thepolarion
report - Cover
tmt.cli
withpyright
(#2520) - Custom soft/hard reboot commands for the connect provision plugin
- Add
--feeling-safe
for allowing possibly dangerous actions - Update docs for the
polarion
report plugin - Move test-requested reboot handling into test invocation class
- Add
-i
to select an image in beaker and artemis - Document how to use
yaml
anchors and aliases - Simplify log decolorizers to support pickleable trees
- Add description field to polarion report plugin
- Make check plugin class generic over check class (#2502)
- Increase verbosity of Artemis provisioning errors
- Add more distros to the
mrack
config - Move the
contact
key to theCore
class - Bump tmt in lint pre-commit check to 1.29.0
- Add Python 3.12 to the test matrix
- Move
mrack
configs intotmt+provision-beaker
- Allow running upgrade from the current repository
- Fix remote nested library fetch and add test
- Cover tmt.options with pyright
- Cover tmt.checks, tmt.frameworks and tmt.log with pyright
- Cover tmt.result with pyright checks
- Store fmf
context
in results for each test - Add networks to the podman provision plugin (#2419)
- Add a dedicated exit code when all tests reported
skip
result - Move invocation-related fields out of
Test
class - Remove expected fail from
/tests/pip/install/full
- Convert test execution internals to use "invocation" bundle (#2469)
- Introduce a separate page
Code
for code docs - Add code documentation generated from docstrings
- Fix possible unbound variable after import-under-try
- Add
pyright
as apre-commit
check - Add a helper for nonconflicting, multihost-safe filenames
- Add the
whiteboard
option forbeaker
provision - Support timestamped logging even on the terminal
- Enable pyupgrade
UP
ruff rule - Fix
UP035
deprecated-import violations - Fix
UP034
extraneous-parentheses violation - Fix
UP033
lru-cache-with-maxsize-none violations - Fix
UP032
f-string violations - Fix
UP013
convert-typed-dict-functional-to-class - Fix
UP009
utf8-encoding-declaration violations - Fix
UP006
non-pep585-annotation violations - Try several times to build the
become
container (#2467) - Add .py file extension to docs scripts (#2476)
- Add a link to the Testing Farm documentation
- Use
renku
as the default theme for building docs - Properly normalize the test
path
key - Add an
adjust
example for enabling custom repo - Drop special normalization methods
- Disable
dist-git-init
in thedistgit
test (#2463)
Source plan environment; become; show `check` results; dist-git-download-only; test directory pruning
Highlights
- Add support for pruning test directories
- Download all sources for
dist-git-source
- Source plan environment variables after
prepare
andexecute
steps - Framework is not consulted on results provided by tmt-report-result
- Run scripts with
sudo
whenbecome
is on - Add hardware schema for GPU
- Add
device
key into thehardware
specification - Extend tmt-reboot to allow reboot from outside of the test process
- Show
check
results in thehtml
report - Update
where
implementation, docs & test coverage
Full Changelog
- Add page
Releases
to highlight important changes - Update and polish hardware requirement docs
- Refactor generating of stories and lint check docs
- Add support for pruning test directories
- Download all sources for
dist-git-source
- Source plan environment variables after
prepare
andexecute
steps - Framework is not consulted on results provided by tmt-report-result
- Run scripts with
sudo
whenbecome
is on - Add
retry
for pulling images in thepodman
plugin - Add hardware schema for GPU
- Change the default test pidfile directory to
/var/tmp
- Add
device
key into thehardware
specification - Update code and test coverage for the
check
key - Document case-insensitive context dimension values
- Fix use of the
-name
suffix in system HW requirement - Correct parsing when called as
rhts
- Reconcile HW requirements with virtual's own options
- Move the
README
content intodocs/overview
- Make
BasePlugin
generic over step data class - Use
UpdatableMessage
for execute/internal progress bar - Drop an empty line from the pull request template
- Add
runner
property to run with test runner facts - Export sources of an
fmf
node - Bump pre-commit linters to newer versions
- Append the checklist template to new pull requests
- Extend tmt-reboot to allow reboot from outside of the test process
- Allow optional doc themes
- Use consistent style for multiword test names
- Show
check
results in thehtml
report - Update
where
implementation, docs & test coverage - Document difference between key, field and option
- Rename multiword keys to use dashes in export and serialization
- Allow Path instance to be used when constructing commands
- Switch
Logger.print()
to output to stdout - Replace Generator type annotation with Iterator
- Refactor data container helpers
- When merging fmf and CLI, use shared base step data
- Fix installing package from the command line
- Add support for checks to have their data packages
- Switch
tmt.identifier
from usingfmf.log
- Hide test/plan/story internal fields from export
- Fix full test suite after recent packaging changes
- Update the list of code owners
- Include the
fmf
root in the tarball as well
Include man page in the pypi tarbal
- Build man page during the
release
action
Adjust spec file to fix packit integration
- Remove the
.dev0
suffix from the specVersion