Skip to content

Releases: teemtee/tmt

Beakerlib pruning and merge; dynamic ref evaluation support to plan import; Reimplement the `ReportPortal` plugin

10 Jul 13:13
Compare
Choose a tag to compare

Highlights

  • Beakerlibs pruning and merge
  • Add dynamic ref evaluation support to plan import
  • Reimplement the ReportPortal plugin using API
  • Recommend needs a different option for dnf5

Full Changelog

  • Test for pruning needs VM
  • Internal anonymous git:// access is deprecated
  • Add tests and some modifications after rebases
  • Clone to tmp and use fmf.Tree.find instead of looping
  • Add clone_dirpath to Common
  • Fix bad usage of path and name
  • Fix multiple clones and inherited fmf metadata
  • Beakerlibs pruning and merge
  • Add dynamic ref evaluation support to plan import
  • Replace self.opt() when looking for debug/verbose/quiet setting
  • Reimplement the ReportPortal plugin using API
  • Make Step class own export of step data (#2040)
  • Make relevancy/coverage linters to not re-read fmf files
  • Add a single tmpdir fixture for all Python versions
  • Replace named tuples with data classes
  • Replace / in safe name, and fix prepare step to use safe names
  • Do not export fmf id's ref when it's the default branch
  • Move the sync libraries into a separate section
  • Allow running next plan in queue when one fails to complete
  • Fix a too strict check for the detected library
  • Convert provision plugins' step data to our field implementation
  • Convert execute plugins to tmt.utils.field() for options
  • Cache that beakerlib/library repo is missing
  • Use code-block directive for examples and code blocks
  • Add the show() method for guest data packages
  • Turn fmf context into a fancy dict
  • Enable ruff checks for mutable dataclass field defaults
  • Create option metavar from listed choices
  • Document how to modify imported plans
  • Recommend needs a different option for dnf5
  • Ask ruff to show what it fixed
  • Bumps supported Artemis API to 0.0.58
  • Use --version to gather the package_manager fact
  • Use f-strings where possible
  • Bump pre-commit hooks to latest version
  • Fix ruff RUF010: Use f-strings conversion flags
  • Fix py<38 mypy type:ignore being on wrong line
  • Move isort to ruff
  • Enable passing Pylint checks
  • Fix ruff RSE102: Unnecessary parentheses on exception
  • Fix ruff PIE: flake8-pie errors
  • Remove duplicates from ruff rules selection
  • Fix ruff SIM: flake8-simplify errors
  • Fix ruff RET: flake8-return errors
  • Fix ruff PT: flake8-pytest-style errors
  • Fix ruff UP: pyupgrade errors
  • Fix ruff N: pep8-naming errors
  • Fix ruff RUF005: collection-literal-concatenation
  • Fix ruff B: flake8-bugbear errors
  • Fix flake8 C405: unnecessary literal set
  • Fix flake8 C401: unnecessary generator set
  • Fix flake8 C416: unnecessary comprehension
  • Fix flake8 C408: unnecessary collection calls
  • Polarion report set to UTC timezone
  • Add Organize Data as a new tmt guide chapter
  • Fix emptiness check of /var/tmp/tmt in /tests/status/base
  • Allow modification of imported plans
  • Raise error if malformed test metadata is given
  • Ensure test with empty custom results ends as an ERROR
  • Fix /tests/status/base when /var/tmp/tmt is empty
  • Remove pytest.ini from the Makefile targets
  • Bad source path for local libraries file require
  • Remove useless loop.cycle() from the HTML report
  • Implement basic filtering for the HTML report
  • Cleanup of "logging function" types
  • Do not patch verbosity in discover for --fmf-id
  • Drop enum from HW hypervisor and boot method constraints
  • Fix enforcement of workdir root in full workdir root test
  • Narrow type of file & library dependencies
  • Make web-link test play nicely with custom SSH host config
  • Use serialization callbacks for last script fields
  • Save click context in click context object
  • Add the envvar argument to utils.field()
  • Improve structure of the packit config a bit
  • Update release instructions with simplified steps
  • Sync changelog when creating downstream release

Parallel execution, guest topology, lint docs...

09 Jun 07:43
Compare
Choose a tag to compare

Highlights

  • Parallelize prepare, execute and finish steps
  • Expose guest topology to tests and scripts
  • Support environment variables for plugin options
  • Improve documentation of lint checks

Full Changelog

  • Revert the Source0 url to the original value
  • Use correct url for the release archive, fix docs
  • Do not display guest facts when showing a plan
  • Add new guide/summary for multihost testing
  • Define a "plugin registry" class
  • Hide facts in the virtual provision plugin
  • Cache resolved linters
  • Improve documentation of lint checks (#2089)
  • A custom wrapper for options instead of click.option()
  • Identify incorrect subcommand after a correct one
  • Remove one extra space between @ and decorator name
  • Assign envvars to Polarion report arguments
  • Expose "key address" to normalization callbacks (#1869)
  • Move export of special test/plan/story fields to their respective classes
  • Expose guest topology to tests and scripts (#2072)
  • Enable building downstream release using Packit
  • Add sections for environment variable groups
  • Add default envvar to plugin options
  • Load env TMT_WORKDIR_ROOT when running tmt status (#2087)
  • Opportunistically use "selectable" entry_points.
  • Explicitly convert tmpdir to str in test_utils.py.
  • Move pytest.ini contents to pyproject.toml.
  • Rename Require* classes to Dependency* (#2099)
  • Expose fmf ID of tests in results
  • Use the tmt-lint pre-commit hook
  • Turn finish step implementation to queue-based one (#2110)
  • Convert base classes to data classes (#2080)
  • Crashed prepare and execute steps propagate all causes
  • Support exceptions with multiple causes
  • Make "needs sudo" a guest fact (#2096)
  • Test data path must use safe guest/test names
  • Support for multi case import from Polarion and Polarion as only source (#2084)
  • Fix search function in docs
  • Make tmt test wrapper name unique to avoid race conditions
  • Change link-polarion argument default to false
  • Add export plugin for JSON (#2058)
  • Handle el6 as a legacy os too in virtual provision
  • Hint beakerlib is old when result parsing fails
  • Revert "Fix dry mode handling when running a remote plan"
  • Set a new dict instance to the Plan class
  • Replaces "common" object with logger in method hint logging
  • Parallelize prepare and execute steps
  • Formalizing guest "facts" storage
  • Support urllib3 2.x and its allowed_methods/method_whitelist
  • Require setuptools

Support for require of files and directories, refactored linting, log timestamps, extended hardware spec....

11 May 20:17
Compare
Choose a tag to compare

Highlights

  • Add support for require of files and directories
  • Refactored metadata linting (demo)
  • Add test start/end timestamps into results
  • Convert gitlab private namespace into dist-git url
  • Shorter Nitrate summary name
  • Add a new cpu property flag to the hardware spec
  • Fix duplicate export for Polarion hyperlinks
  • Don't use specific addresses in virtual provision
  • Support for fuzzy matching subcommand
  • Support logging "topics" to allow lower unnecessary verbosity

Full Changelog

  • Add Artemis to the provision documentation
  • Add artemis's user defined watchdog specification
  • Add support for require of files and directories
  • Expose test serial number as an environment variable
  • Print only failed objects when linting in hook
  • Refactored metadata linting
  • Request newer os image and python version for docs
  • Explore all available plugins only once
  • Add test start/end timestamps into results
  • Implement deprecated for obsoleted options
  • Unify results examples in test and plan specification
  • Convert gitlab private namespace into dist-git url
  • Shorter Nitrate summary name
  • Correct the path of Ansible playbook
  • Refactor logging during plugin discovery, using tmt's logging
  • Improve names and docs around CLI context in Common classes
  • Fix ruamel.yaml type waivers that mypy sometimes ignores
  • Drop some no longer valid TODO comments
  • Replace '--t' by '-t' when creating a new plan with template
  • Add a new cpu property flag to the hardware spec
  • Fix duplicate export for Polarion hyperlinks
  • Option to list locally cached images for testcloud
  • Log out testcloud version in virtual provision
  • Use yq instead of grep when testing YAML content
  • Don't use specific addresses in virtual provision
  • Polish workdir pruning - pathlib transition & logging
  • Support for fuzzy matching subcommand
  • Add new link relation test-script definition
  • Remove group from the multihost specification
  • Move "show exception" code to utils
  • Add missing support for 0.0.55 and 0.0.48 API
  • Add type annotations to tmt.steps.STEPS/ACTIONS
  • Support logging "topics" to allow lower unnecessary verbosity
  • Add support for right-padding of logging labels
  • Move tools config to pyproject.toml, add Ruff
  • Example to parametrize test selection via envars
  • Merge run_command() and _run_command() into Command.run()
  • Install beakerlib into images used in test/full
  • Don't run ShellCheck on tests & decrease severity
  • Support multiline strings for option help texts
  • Fix tests run only in full testsuite

Beaker provision plugin, more distros in testcloud, improved custom results...

15 Apr 10:27
Compare
Choose a tag to compare

Highlights

  • New beaker provision using mrack allows to test on all arches from your laptop
  • The testcloud plugin is now working with fedora, centos, alma, rocky, oracle, debian and ubuntu
  • Improved custom results reporting (fixed logs, docs, now allows results.json as well)
  • New kickstart section added to the provision step specification
  • Variables TMT_TEST_NAME and TMT_TEST_METADATA now available to tests

Full Changelog

  • Change help text of the tmt --root option
  • Add support for results.json in custom results
  • Proper support for the test duration format
  • Prepend '/' to custom test result name if missing
  • Document necessary packages for pip install on Ubuntu
  • Tag cloud resources to tmt in Testing Farm
  • Display guest multihost name even in dry run (#1982)
  • Pass the arch option to the Beaker provider
  • Use job-id instead of guestname in Beaker class
  • Adjust the fix for the default branch handling
  • Add support to get ref under the git worktree
  • Fix dry mode handling when running a remote plan
  • Enable the external polarion plugin tests
  • Extract "run a command" functionality into a stand-alone helper
  • Increase minimal severity of ShellCheck defects
  • Display guest full name in display plugin report
  • Push using sudo rsync when necessary
  • Avoid warning from installing tmt as pre-commit
  • Add test checking repeated test execution results
  • Freeze the yq version to fix el8 installation
  • Update the CODEOWNERS file with more granularity
  • Document current workaround for running scripts
  • Install beakerlib before the ShellCheck
  • Rename Guest.full_name to Guest.multihost_name
  • Display guest full name in html plugin report
  • Add test for template-based export plugin
  • Add kickstart to the artemis provision plugin
  • Extract just tar files in dist-git-source
  • Add missing fields to custom results test
  • Add shell linter Differential ShellCheck
  • Always try to run dhclient in cloud-init in virtual provision
  • Fix polarion report pruning and add or fix arguments
  • Run chcon only if SELinux fs supported
  • Require beaker provision in tmt-all
  • Adjust the new mrack plugin spec, test and plan
  • Add beaker provision plugin using mrack
  • Adjust pip install to always upgrade to the latest
  • Move testcloud url guessing logic out of tmt
  • Hotfix Ubuntu with virtual provision
  • Detect correct category when export to nitrate
  • Add an entrypoint for interactive tmt sessions
  • Fix internal handling of the where key
  • Move logging labels to the beginning of lines
  • Refactor CLI error reporting to improve readability
  • Remove no longer needed cast around our custom Click context
  • Display guest full name when showing its details
  • Add kickstart section as a new specification key
  • Add more controls for output colorization
  • Rephrase results.yaml documentation and examples
  • Fix get_bootstrap_logger name and docstring typo
  • Expose guest info in results
  • Enable root login and disable default core for rhcos
  • Sanitize plan/test/story names before filtering
  • Set default user core for rhcos in testcloud
  • Remove no longer used "err" parameter of logging methods
  • testcloud: Raise default limits
  • Update log key content of results.yaml examples (#1834)
  • Include guest name in execute phase data paths
  • Adds "bootstrap logger" for logging before CLI options are recognized (#1839)
  • Export TMT_TEST_NAME and TMT_TEST_METADATA (#1888)
  • List supported operators in hardware requirement docs (#1867)
  • Build tmt usable in inner guests for tests/full
  • Target test-complement for tests/full
  • Tag tests which are affected by how=full
  • Use PROVISION_METHODS in tests
  • Report individual test results in tests/full
  • Use Require* classes for collection & installation of plugin requirements (#1766)
  • Disable tracebacks if default branch is not found
  • Assign a data path and serial number to each test in discover (#1876)
  • Convert log path for results:custom
  • Allow report result for itself in results:custom
  • Support to import Makefile having '\\n'
  • Require pylero for the polarion subpackage
  • Fix forgotten guest when Artemis provisioning times out
  • Turn tests.yaml into a list of tests
  • Simplify the Result class implementation
  • Use Path instead of os.path in export code
  • Use Path when working with logfile path
  • Fix use of old os.path.symlink() in discover/shell
  • Add /root/.local/bin to PATH on Centos Stream 8 in CI
  • Install jq/yq for more readable tests in tmt test suite
  • Fix Common class ignoring other branches of multiple inheritance tree
  • Use Path instead of os.path in prepare/install plugin
  • Convert path-like strings to pathlib.Path objects
  • Change Plugin.go() to accept logger and extra environment
  • Artemis API version may contain multiple integers
  • Add logging labels used for prefixing messages
  • Adds "full name" guest property for multihost logging

Option to sync git repo for discover.shell; ReportPortal report plugin; web-url

03 Feb 13:09
Compare
Choose a tag to compare

Highlights

  • Do not clone the whole remote plan in dry mode
  • Include a simple Python code among the examples
  • Enable to sync git repo to SUT in shell discover
  • Enable url and ref as shell discover options
  • Respect TMT_WORKDIR_ROOT variable in testcloud
  • Implement the reportportal report plugin
  • Add a clickable web link to test to polarion export
  • Enhance Links to allow checking for any links at all

Whole change log

  • Fix tmt-reboot without custom command
  • Fix test /discover/libraries
  • Add serialization callbacks to data class fields
  • Use own private key for provision.virtual
  • Adds a template-backed export plugin
  • Polarion export fix component upload bug and upload id first
  • Convert story ReST export to use a Jinja2 template
  • Convert export-related code to plugins per format
  • Do not clone the whole remote plan in dry mode
  • Hardcode tmt git URL so test won't fail for PRs
  • Add py.typed marker for 3rd party type annotations
  • Fixes isort 5.10.1 installation issue
  • Improve logging by tmt.utils.wait()
  • Check packages are installed via debuginfo-install
  • Always ignore failures for recommended packages
  • Merge report plugins options into step data fields
  • Dynamically find the current Fedora release
  • Suggest using a pull request checklist template
  • Include a simple Python code among the examples
  • Apply normalization callback when updating data with CLI input
  • Bump pre-commit linters - Flake8, Mypy, JSON schema, YAML lint & pygrep
  • Use base implementation of provision plugin requirements
  • Relay 'interactive' value for podman call
  • Update Fedora versions in upgrade tests
  • Apply ShellScript for the custom reboot command
  • Update the shell discover specification
  • Enable to sync git repo to SUT in shell discover
  • Increase the default utils.format() indent a bit
  • Define pull request Copr build job in Packit config
  • Decouple logging from objects and base classes
  • Enable url and ref as shell discover options
  • Export TMT_TREE in other steps as well
  • Add a new key system to the hardware spec
  • Remove default for the dynamic ref evaluation
  • Schema update and test for order in discover step
  • Merge report plugins options into step data fields
  • Add a test for hardware schema coverage
  • Better type annotations of prepare/install scripts
  • Move jinja2 require to the main tmt package
  • Define the new context dimension initiator
  • Respect TMT_WORKDIR_ROOT variable in testcloud
  • Annotate commands, command line elements and shell scripts
  • Adjust the reportportal plugin implementation
  • Implement the reportportal report plugin
  • Require the latest testcloud package
  • Define srpm_build_deps in the packit config
  • Include the new web link in verbose show mode
  • Add a clickable web link to test to polarion export
  • Enhance Links to allow checking for any links at all
  • Drop various guest wake() methods in favor of parent class
  • Catch SystemExit during module discovery

Improved export; verbose output for provision and prepare; TMT_WORKDIR_ROOT; provision error handling; prune in finish step

09 Dec 13:45
Compare
Choose a tag to compare

Highlights

  • Do not leak "private" fields into export
  • Set guest hostname in testcloud provision
  • Capture provision error when login is used
  • Support TMT_WORKDIR_ROOT environment variable
  • Support step data definitions carrying CLI options
  • Prune irrelevant files during the finish step
  • Support to import empty key from Makefile
  • Support absolute paths in HTML reports
  • Capture exceptions when getting image_url
  • Enable verbose output for provision & prepare
  • Initial support for passing ssh options from cli
  • Update specification of the where multihost key

Full changelog

  • Do not prune html and junit reports
  • Skip extending fmf context if cli context missing
  • Connect needs is_ready property as well
  • Cover setup.py with pre-commit Python checks
  • Do not leak "private" fields into export
  • Set guest hostname in testcloud provision
  • Capture provision error when login is used
  • Support TMT_WORKDIR_ROOT environment variable
  • Support step data definitions carrying CLI options
  • Adds flake8 coverage for bin/ directory
  • Prune irrelevant files during the finish step
  • Add junit plugin schema
  • Support to import empty key from Makefile
  • Deleting unsed and duplicite part of finish step
  • Support absolute paths in HTML reports
  • Capture exceptions when getting image_url
  • Enable verbose output for provision & prepare
  • Add support for Artemis v0.0.47 upcoming release
  • Remove unused variables
  • Initial support for passing ssh options from cli
  • Update specification of the where multihost key
  • Add a simple test demonstrating the upgrade testing
  • Use custom subclass of click.Context for better annotations
  • Extend the duration for tests using containers
  • Change common class constructors to use keyword arguments only
  • Make packit build with the next release.dev version
  • Add basic test coverage for tmt story export
  • Fix export of the story priority field
  • Read source from correct directory if ref is used

Fix duration, import remote plan, dynamic ref parametrization, remove obsoleted execution methods

10 Nov 10:08
Compare
Choose a tag to compare

Highlights

  • Fix test duration enforcement
  • Support fetching remote repo for shell discover
  • Fix default framework, remove old execution methods
  • Login after each test using the --test parameter
  • Enable context based plan parametrization
  • Add support for dynamic ref evaluation
  • Add import plan feature

Full Changelog

  • Protect args in rsync call
  • Set tree root for the default plan tree as well
  • Properly set the tmt script shebang on rhel-8
  • Use image exists to check for container image
  • Updates docs with example on adjust & prepare+
  • Fix test duration enforcement
  • Skip missing debuginfo packages in recommend
  • Explicitly document extending the plan environment
  • Fix ownership of a tmp directory propagated to container
  • Support fetching remote repo for shell discover
  • Fix default framework, remove old execution methods
  • Add support for Artemis v0.0.46 upcoming release
  • Handle an fmf fetch error in remote plan clone
  • Do not truncate RunError output in verbose mode
  • Warn user about data erasing after prepare step
  • Formalize data package passed to the Result class
  • Change order of plugin and guest classes in files
  • Add compatible as a new hardware specification key
  • Add tpm as a new hardware specification key
  • Move the hardware specification into a separate page
  • Improve fmf-id processing
  • Add test for TTY state in test environment
  • Login after each test using the --test parameter
  • Mention version where important features were added
  • Handle dist-git-sources for gitlab
  • Fix getting CentOS via --how virtual
  • Capture uncaught exceptions when using testcloud
  • Update the overview of essential classes
  • When following command line --how, do not iterate over step data
  • Convert utils' Run unit tests to class-less tests
  • Enable variable expansion for dynamic references
  • Support beaker libraries as recommended packages
  • Add SpecBasedContainer.to_minimal_spec() method (#1637)
  • Enable context based plan parametrization
  • Coverage for tests defined under discover.shell
  • Fix /tests/run/shell access permission problem
  • Add step data classes for provisioning and report
  • Adjust support for the dynamic ref evaluation
  • Add support for dynamic ref evaluation
  • Add a test for fmf id parsing and normalization
  • Fix NO_COLOR not being honored by executed command output
  • Moves common command options into one place
  • Log full chain of exceptions, not just the first cause
  • Drop deprecated PluginIndex
  • Add message to failure tags in junit report
  • Update the pip installation plan
  • Remove pointless reimport of tmt.base in discover steps
  • Do not use f-string as a docstring
  • Fix use of variable before assignment in Plan.go
  • Fix variable redefinition in discover/shell.py
  • Fix guest distro detection, do not throw results away
  • Fix a typo in cpu.sockets hardware requirement
  • Make links relative for report html
  • Review all uses of type: ignore and link relevant issues
  • Enhance ClickOptionDecorator type to announce identity
  • Update /tests/execute/upgrade/override duration
  • Review all uses of Any and link relevant issues
  • Annotate all cast() calls with respective issues
  • Move the Result class into a separate file
  • Unblock mypy's follow-import setting
  • Use set comprehension instead of list-in-set sequence
  • Use enumerate() instead of range(len())
  • Use dict comprehension instead of tuple-in-list-in-dict
  • Replace two more list comprehensions with generators
  • Replace GeneralError's "origin" with Python's "raise from"
  • Fix normalization of the Plan.context key
  • Adds a missing import to polarion plugin
  • Update all linters to their most recent versions
  • Define CPU HW components with more granularity
  • Adjust the support for importing remote plans
  • Add import plan feature and tests
  • Add type annotations to base.py
  • Fix test depending on ordering of elements in junit XML
  • Adds type annotations to tmt itself
  • Remove custom yet same implementation of step's show()
  • Make sure repo_copy is gone before make srpm

Custom results, polarion import, typing, refactoring...

11 Oct 11:21
Compare
Choose a tag to compare

Highlights

  • Custom results implementation
  • Add Polarion as a source for test case import
  • Support to install package from URL
  • Refactor internal link handling and storage
  • Substantial progress on typing annotations

Full Changelog

  • Fix recommended packages handling for rpm-ostree
  • Add EFI configuration to the tmt-reboot script
  • Fix adjust for precommit test
  • Fix provision for coreos image
  • Emit only non-default keys when constructing a test from execute
  • Add flake8 config file for easier integration with IDEs
  • Multiple scripts for CLI prepare -h shell
  • Allow mypy to cover the whole tmt.plugins and tmt.steps
  • Add typing for steps/execute/upgrade.py
  • Fix name & default value of polarion's upload field
  • Fixes enhancing of environment by local's guest implementation
  • Ignore plan -n when searching for upgrade path
  • Document & correct use of class conversion methods
  • Print fmf tree location when schema unit test fails
  • Custom results implementation
  • Refactors internal link handling and storage
  • Allow mypy to cover whole tmt.steps.prepare
  • Add typing for steps/execute/internal.py
  • Use workdir with safe names without special chars
  • Adjust support for installing remote packages
  • Support to install package from URL
  • Make sure short option '-x' is covered
  • Add Polarion as a source for test case import
  • Print path to the used ssh identity
  • Add typing for steps/prepare/__init__.py
  • Use generator instead of list comprehension with any/all
  • Fixes handling of default of --key in connect plugin
  • Update test data for the debuginfo install test
  • Add a helper for importing a member from a module
  • Fix plan schema to allow custom context dimensions
  • Allow mypy to cover whole tmt.steps.discover
  • Remove support for the obsoleted detach executor
  • Add typing for steps/discover/fmf.py
  • Fix importing for pylero
  • Allow mypy to cover whole tmt.steps.provision
  • Replace blank "type: ignore" with more specific waivers
  • Use the SerializableContainer for plugins' data
  • Enhance SerializableContainer with default key value inspection
  • Moves validation and normalization mixins to utils

Remote playbooks in prepare; Common attributes extended; Nested root warning

06 Sep 08:18
Compare
Choose a tag to compare

Main improvements and fixes:

  • Error out if reboot timeout is exceeded
  • Initialize workdir thread-safe
  • Add support for remote playbooks in prepare
  • Print escaped command suitable for manual debugging
  • Less eager to disable nitrate case during export
  • Move tag and tier to common core attributes
  • Hint user if 'tmt init' creates nested root

Whole change log:

  • Unify Polarion case searching
  • Error out if reboot timeout is exceeded
  • Initialize workdir thread-safe
  • Add support for remote playbooks in prepare
  • Add plan schema for errata and minute plugins
  • Correct rhts command names in stories file
  • Print escaped command suitable for manual debugging
  • Fix report plugin not getting arguments from fmf file
  • Less eager to disable nitrate case during export
  • Move tag and tier to common core attributes
  • Use /bin/bash instead of /bin/sh for execute
  • Reorder step and their base plugin classes
  • Fix prepare/multihost docs to match implementation
  • Teach schema validation tests to peek into other trees
  • Clarify motivation for creating id during export
  • Add link-polarion option and fix link searching bug
  • Ignore race in last-run symlink creation
  • Fix polarion tcmscaseid search
  • Force order of clean operations
  • Convert status/clean argument to option
  • Report enabled plans/tests/stories via option
  • Hint user if 'tmt init' creates nested root
  • Require libvirt-daemon-config-network as well
  • Add type annotation for /steps/prepare/install.py
  • Encapsulate created file within script's dataclass
  • Adds normalization layer to base classes based on fmf
  • Fixes data class used for local guest creation
  • Fixes Artemis guest data class link
  • Making tests/full more usable
  • Add typing for tmt/steps/provision/podman.py
  • Add typing for tmt/steps/provision/testcloud.py
  • Add typing for tmt/steps/provision/local.py
  • Remove unused keys parameter from wake() methods
  • Adds types describing tmt constructs when as stored in raw fmf data
  • Typing /steps/provision/connect.py
  • Allow raising an exception on validation errors
  • Inject logger object to base node classes inheritance
  • Fixes use of SSH keys in testcloud and connect plugins
  • Annotate tmt.steps.provision
  • Ask mypy to show error codes in its messages
  • Testcloud expects disk and memory to be int
  • Do not inherit classes from object
  • Use keyword-only init in base fmf-backed classes
  • Use decorator to register plugin methods
  • Demonstrate inheritance on a virtual test example
  • Add a simple hint how to write user messages
  • Add typing for steps/finish/ansible.py
  • Remove unneeded parameters for step load/save (#1428)
  • Normalize step data to be always stored a list internally
  • Display test/plan/story name in parametrized schema tests
  • Allow numbers and booleans to be values of environment
  • Give a reasonable error for old data format
  • Add typing for tmt/steps/finish/init.py
  • add typing for steps/discover/shell.py
  • Adds a fmf node validation layer to core classes (Test/Plan/Story)
  • Add missing keys role and where to schemas
  • Extend plan schema with all known step plugin schemas
  • Correcting rhts aliases & adding rhts opt.
  • Adds a generic "wait for condition" primitive
  • Disallow push/pull/execute if guest is unavailable
  • Rename "default how" step attribute to enhance its visibility
  • Use textwrap.dedent() to unindent docstrings

Reboot timeout and reconnect improvements; polarion report; library recursion

04 Aug 07:00
Compare
Choose a tag to compare

Main improvements and fixes:

  • Backwards compatibility for rstrnt-abort, rstrnt-report-log and rstrnt-report-result.
  • Package installation using rpm-ostree.
  • Polarion report plugin.
  • Implement reboot reconnect timeout configuration and make sure machine was rebooted before reconnect.
  • Cut circular dependency of libraries.
  • Print result for execute -v.
  • Fixing the directory name escaping in 'cd' command.
  • Precommit hooks to call tmt * lint

Whole change log:

  • Reboot has to check for boot time
  • Fix path inside pre-commit test
  • Cut circular dependency of libraries
  • Update 'Develop' section of contribution docs
  • Precommit hooks to call tmt * lint
  • Schema loading helpers
  • Package schemas in subdirectories too
  • Implement reboot reconnect timeout configuration
  • Add missing report specifications/docs
  • Print result for execute -v
  • Correct import assumption about script
  • Ask mypy to check whole tmt.steps.report package
  • Fixing the directory name escaping in 'cd' command
  • Add polarion report plugin
  • Add schemas for plans
  • Write extra-nitrate as soon as possible
  • Retry git clone without --depth=1 if it failed
  • Support to lint attribute 'id'
  • Do not apply test command filter in upgrade
  • Fix export.py typing issues
  • Refactor location and signature of Phase's go() method
  • Simplify abort handling
  • Backwards compatibility for rstrnt-abort
  • Add type annotations for tmt/cli.py
  • Add typing for tmt/export.py
  • add typing for steps/discover/init.py
  • Convert guest implementations to use serializable container for load/save
  • Detect plugins by entry_point as well
  • Add typing for steps/execute/__init__.py
  • Add typing for tmt/convert.py
  • Remove duplicated dist-git-source/dist-git-type
  • Add typing for steps/report/junit.py
  • Add typing for steps/report/html.py
  • add typing for steps/report/display.py
  • Add typing for steps/report/init.py
  • tmt-file-submit is a bash script
  • Add type annotations for tmt/options.py
  • Backwards compatibility for rstrnt-report-log
  • Support conditional requires with pip as well
  • Remove duplicated short option in tmt lint
  • Adjust the rstrnt-report-result implementation
  • Backwards compatibility for rstrnt-report-result
  • Set the 1777 permision for /var/tmp/tmt
  • Adjust the fix for the rpm-ostree intallation
  • Fix package installation using rpm-ostree
  • Handle empty fmf file as an empty dictionary
  • Fix distgit testsuite after tmt packaging change