Skip to content

Releases: teemtee/tmt

Upgrade plugin, improved discover, identifiers...

07 Jun 12:34
Compare
Choose a tag to compare

Highlights

  • Implement upgrade execute plugin
  • Dist-git-source for Discover (fmf, shell)
  • Add a new core key id for unique identifiers

Full Changelog

  • Command 'tmt clean' should not run rsync at all
  • Dist-git-source for Discover (fmf, shell)
  • Adjust the new id key implementation
  • Add a new core key id for unique identifiers
  • Recommend qemu emulators for other architectures
  • Copy the whole git repo only if necessary
  • Reveal hidden errors during testcloud booting
  • Use time for timeout handling in Guest.reconnect()
  • Split Guest class to separate SSH-capable guests
  • Explicitly set the docs language in the config
  • Kill the running test when rebooting
  • Extend the reboot timeout to allow system upgrades
  • Allow selecting tasks directly from upgrade config
  • Adjust the new upgrade execute plugin
  • Allow specifying command for reboot
  • Implement upgrade execute plugin
  • Buildrequire python3-docutils, append plan adjust
  • Implement tmt tests export --nitrate --link-runs
  • Detect component from general plan during import
  • Adjust the support for steps in standalone mode
  • Add results method to ExecutePlugin
  • Implement a common ancestor for Action and Plugin
  • Allow abstractly excluding steps from runs
  • Correctly handle tests --name '.' shortcut
  • Rename WorkdirType to WorkdirArgumentType
  • Fix workdir parameter type for tmt.utils.Common
  • Allows importing jira issues as link-relates
  • Enables mypy coverage for empty-ish Python files
  • Adds type annotations to tmt.templates
  • Prevent infinite recursion if --id is set
  • Enable mypy check for Artemis provision plugin
  • Adjust provision dry mode propagation, add a test
  • Introduce new _options attribute to Common class
  • Add specification for remote plans referencing
  • Bootstrap type annotations
  • Execute script should not be used with discover
  • Add the arch key to the hardware specification
  • Fix pip install instructions
  • Disable network access when building in copr
  • Ignore list for dist-git-source
  • Remove the obsoleted detach execute method
  • Fix login during execute and prepare step
  • Import from Makefile with missing build target

Multiarch testcloud, artemis provision, test export improvements...

02 May 17:54
Compare
Choose a tag to compare
  • Add multiarch support to testcloud provision
  • Consistent summary for test export --nitrate
  • Allow dry mode for tests export --nitrate
  • Add a nice provisioning progress to Artemis plugin
  • Add support for the where keyword to execute
  • Adjust support for export of multiple tests
  • Add support for exporting multiple tests
  • Basic multihost test for the httpd web server
  • Update multihost specification with guest groups
  • Add a provision plugin for Artemis
  • Fix exclude option in fmf discover
  • Reduce the number of execute calls for reboot
  • Add support for reboot in interactive mode

Plan export, exclude search, import restraint metadata...

05 Apr 12:36
Compare
Choose a tag to compare

Highlights

  • New feature: tmt plan export
  • Add --exclude search option
  • Allow import from restraint's metadata file (#1043)
  • Add a command to setup shell completions
  • Option to export fmf-id from run discover -h fmf
  • Story.example can hold list of strings

Full changelog

  • Add a command to setup shell completions
  • Use /tmp instead of /run/user/ if not available
  • Use separate examples in the test specification
  • Add more story examples, simplify examples export
  • Story.example can hold list of strings
  • Fix traceback when connect plugin is used without hostname.
  • Adjust disabled shell expansion in Common.run()
  • Disable shell expansion in Common.run() by default
  • Build epel9 packages, update install docs
  • Adjust the full test wrapper and document it
  • Test which compiles tmt and runs its testsuite
  • Add --exclude search option
  • Correct regex for require read from metadata file
  • Update document for creating virtual environment
  • Option to export fmf-id from run discover -h fmf
  • Allow import from restraint's metadata file (#1043)
  • Do not disable building for power arch on Fedora
  • Update documentation for plan parametrization
  • Make .vscode ignored by git
  • Drops basestring and unicode built-ins from utils
  • Fix timeout behaviour in testcloud plugin
  • Fixes possible test of None-ish CWD when running a command
  • Remove workdir only when its defined
  • Adjust the new tmt plan export feature
  • New feature: tmt plan export

Order key, multihost provision & prepare, rsync handling...

02 Mar 14:39
Compare
Choose a tag to compare
  • Prevent koji build failures on unsupported arches
  • Check remote git URL if it is accessible
  • Implement a generic requires for all plugins
  • Run commands in podman provision via bash
  • Adjust implementation of the new order attribute
  • Implement the Core attribute order
  • Fix link generation in report.html
  • Improve step name handling
  • Enable shared volume mounts in podman provision
  • Add support for multihost provision and prepare
  • Adjust the dnf support for rsync install
  • Add dnf support for rsync install
  • Update links and refs after migration to teemtee
  • Track output for reboot purposes on per-test basis
  • Fix test --name '.' used with multiple plans
  • Tweak test suite (duration, centos:8, datadir)
  • Use os.pathsep to separate TMT_PLUGINS paths (#1049)
  • Document framework:shell exit codes
  • Add html2text to the convert pip dependencies

Storing logs, ssh multiplexing, support r/o file systems, ...

02 Feb 08:36
Compare
Choose a tag to compare

Highlights

  • Add support for ssh multiplexing
  • Ignore read/only file systems reboot script errors
  • Handle rsync installation on read-only distros
  • Minor modification of test result specification
  • Implement variables for storing logs and artifacts

Full Changelog

  • Make reboot support a bit more backward compatible
  • Ensure that workdir has a correct selinux context
  • Use centos:stream8 image instead of centos:8
  • Disable X11 forwarding in ssh connections
  • Fix traceback for login after last report
  • Use TMT_TEST_DATA as location for rlFileSubmit
  • Implement variables for storing logs and artifacts
  • Adjust rsync installation on read-only distros
  • Handle rsync installation on read-only distros
  • Add hardware specification for hostname
  • Correctly import multiple bugs from Makefile
  • Remove dependency on the python3-mock package
  • Adjust linting of manual test files
  • Check Markdown files in tmt lint if manual=True
  • Adjust pulling logs from the guest during finish
  • Add guest.pull() to the finish step
  • Update virtualization hints for session connection
  • Improve error message for empty git repositories
  • Minor modification of test result specification
  • Use where instead of on in the multihost spec
  • Clarify that path is defined from the tree root
  • Adjust ansible requires for containers preparation
  • Move the reboot scripts to a read/write directory
  • Ignore read/only file systems reboot script errors
  • Require either ansible or ansible-core
  • Set the TMT_TREE variable during test execution
  • Clarify that 'until' means until and including
  • Update test debugging examples with --force option
  • Add bios.method to hardware spec
  • Improve environment variables specification a bit
  • Adjust the ssh connection multiplexing
  • Add support for ssh multiplexing

Discover from source, filter by link, submit files...

01 Dec 13:22
Compare
Choose a tag to compare

Highligts

  • Discover tmt tests from sources
  • Allow to pick objects by --link
  • Add support for Beakerlib's rlFileSubmit
  • Enable duplicate test names and preserve ordering
  • Ansible plugin for Finish step
  • Allow to specify session type (system/session)

Full Changelog

  • Improve testcloud/virtual provider docs
  • Disable UseDNS, GSSAPI for faster SSH in testcloud
  • Use extra-args attr for ansible-playbook
  • Fix el7 provision in testcloud user session
  • Adjust the instructions for migrating from STI
  • Document how to migrate tests from STI to tmt
  • Allow to pick objects by --link
  • Generate ecdsa key in testcloud
  • Simplify plugin keys handling in wake() and show()
  • Add support for Beakerlib's rlFileSubmit
  • Revert requiring exact beakerlib version
  • Dist git source can contain multiple files
  • Symlink worktree for discovered shell tests
  • Read environment variables from options only once
  • Correctly handle empty environment files
  • Use distro values from context for dist-git type
  • Make tests --name to just prune discovered tests
  • Enable duplicate test names and preserve ordering
  • Require beakerlib-1.28 for beakerlib tests
  • Adjust the dist git source discover implementation
  • Discover tmt tests from sources
  • Reenable plans/install/docs
  • Correct the playbook attribute in the spec (#948)
  • Ansible plugin for Finish step
  • Thread processing of executed commands inside tmt
  • Adjust tmt test lint test for old yaml format
  • Canonical name for centos-stream in dimension
  • Remove obsoleted conditionals from the spec file
  • Use a fresh sphinx when building the readthedocs
  • Allow to specify session type (system/session)
  • Package tmt.plugins to store arbitrary plugins
  • Ignore ssh connection closed during reboot
  • Improve error message for the missing step name
  • Document how to integrate tests with other tools
  • Use the recommended format of the copyright notice
  • Update notes about the release process
  • Update the hardware specification with new keys

Reboot, exit after first failure, force,

30 Sep 14:23
Compare
Choose a tag to compare
  • Add support for reboot in a reused provision
  • Solve the reboot race condition
  • Adjust the current git remote improvement
  • Use current git remote for url in fmf-id
  • Implement option to exit after first failure
  • Clarify and update spec for the discover step
  • Adjust the multihost test specification
  • Add the multihost testing specification
  • Make run --force behave more expectably
  • Increase duration for tests using containers
  • Rename soon-to-be deprecated resultcallback
  • Remove the minute.obsolete provision plugin
  • Document how to create a new minor/major release
  • Explicitly mention '.' as special value for names
  • Add Github Action for PyPI releases
  • Improve fetching remote environment files
  • Adjust the check for rsync before pull and push
  • Install rsync before guest.pull()
  • Second chapter of the Guide: Under The Hood
  • Simplify the search for step method options
  • Produce better errors for unsupported plugins
  • Add more ignored files, categorize gitignore more
  • Extend .gitignore with a few more common patterns
  • Export fields of a case should be checked by lint
  • Adjust the bugzilla support in test export
  • Test export can link case to bugzilla
  • Document the support for open key in html report
  • Allow html report to be opened by plan
  • Require essential packages for tmt testing
  • Skip the docs test until the Sphinx issue is fixed

Reboot, environment files, parametrized plans, image guessing...

31 Aug 13:42
Compare
Choose a tag to compare
  • Adjust support for exporting test fmf identifiers
  • Add --fmf-id option for tests export
  • Fix regression in image listing
  • Update hardware spec with units and current status
  • Adjust the reboot support in the internal executor
  • Add support for reboot to internal executor
  • Always try to save guest details
  • Give hints about available report methods
  • Handle libvirt exceptions correctly
  • Handle FileNotFoundError when running commands
  • Adjust framework detection during test import
  • Detect test framework during test import
  • Adjust the reboot command test, minor enhancements
  • Adjust reboot command implementation
  • Implement the reboot class and subcommand
  • Adjust the improved login step selection
  • Login after last done step without --step option
  • Adjust default shell options implementation a bit
  • Make multiline shell scripts fail on error
  • Ensure environment files are within metadata tree
  • Add pycharm .idea to .gitignore
  • Ensure environment-file paths are only relative
  • Adjust the 'environment-file' implementation
  • Implement the 'environment-file' option
  • Mention required packages on the Contribute page
  • Migrate to ruamel.yaml
  • Adjust tmt lint implementation
  • Add tmt lint command
  • Do not expand the process environment variables
  • Adjust legacy match to cover both rhel and centos
  • Guess pci/net when libguestfs python is missing
  • Add timestamp to the tmt debug output
  • Restart sshd on EL8 to prevent delays after boot
  • Support systemd-networkd systems without nm too
  • Testcloud: Use cache='unsafe' for a nice IO boost
  • Check invalid attributes in plans with lint
  • Require correct testcloud version in setup.py
  • Adjust the support for plan parametrization
  • Implement plan parametrization from environment
  • Deprecation timing, mention vagrant box support
  • Fix exit code for tmt story lint
  • Require testcloud with the url guessing support
  • Use testcloud for image url guessing
  • Update the RHEL 8 / CentOS 8 install instructions
  • Accept more ssh keys in the API
  • Require a full path for local images in testcloud
  • Adjust the conversion of Makefile types to tags
  • Convert Type from Beaker Makefile into tags
  • Make sure pip is available for integration testing
  • Disable the white space test for container/virtual
  • Use IdentitiesOnly=yes when key or password is set

Debuginfo install, pass environment, obsolete minute...

02 Jun 14:47
Compare
Choose a tag to compare
  • Adjust the new plugin documentation
  • Add plugin examples and documentation
  • Ensure that the discover git reference is a string
  • Report plugin for JUnit output
  • Fix issue when raising error for NoneType
  • Print better error when nitrate testcase not found.
  • Use count=True for multiple flag options
  • Add option to explicitly use default plan
  • Adjust debuginfo installation, add test coverage
  • Use debuginfo-install for installing debuginfos
  • Update the documentation based on refactoring
  • Implement tmt story lint
  • Refactor Node class to Core
  • Correctly handle spaces in file/directory names
  • Hand over plan environment during local execution
  • Do not execute manual test cases
  • Fix option handling for plugins with common prefix
  • Propagate options to guests based on the step
  • Support fetching libraries from a local directory
  • Add a simple example of a test written in ansible
  • Pass environment variables to ansible (local)
  • Pass environment variables to ansible (virtual)
  • Adjust warning for extra lines in Makefile targets
  • Add test import warning for run and build targets
  • Enable a few more pre-commit hooks, sort imports
  • Give a warning about the obsoleted minute plugin
  • Clarify adjust dependency on explicit context
  • Fix the EPEL installation instructions
  • Adjust the new list options for the minute plugin
  • New print method, used now in minute plugin
  • Implement listing available minute images/flavors
  • Update default option values for verbose and debug
  • Avoid creating workdir on --help
  • Do not keep run workdir during testing
  • Clean up the code style, remove the vagrant plugin

Run progress, tmt clean, docs enhancements...

30 Apr 12:56
Compare
Choose a tag to compare
  • Enable and document pre-commit and autopep8
  • Reorganize feature stories, fix title duplication
  • Prepare/install story for package development.
  • Add package preparation scenarios from Fedora CI
  • Prepare/install story for released packages
  • Add new stories related to package preparation
  • Fix login not working for cloud images
  • Work around a seccomp podman issue on centos-8
  • Tag multihost tests during import from Makefile
  • Adjust the simple test for ansible prepare
  • Remove hardcoded ansible_python_interpreter=auto
  • Fix lint and use it on the tmt repo itself
  • Obsolete the minute provision plugin
  • Update the documentation for contributors
  • Do not assert installed packages for recommend
  • Show link to the full debug log in the html report
  • Implement tmt clean command
  • Require a newer fmf which supports storing data
  • Allow to specify port in provision.connect
  • Surround classes and functions with 2 blank lines
  • Fix order of imports, sort them alphabetically
  • Update the provision step hardware specification
  • Fix tmt plan lint for multiple configurations
  • Add tmt status examples section
  • Add a context adjust example for the prepare step
  • Adjust the git suffix stripping for known forges
  • Strip git suffix from pagure/gitlab/github repos
  • Enable install plans for pull request testing
  • Adjust the essential attributes description
  • Document the essential class attributes
  • Improve the prepare step documentation
  • Correctly convert relevancy with the != operator
  • Print note in report.html if it exists
  • Add note about error for beakerlib results
  • Adjust progress bar for the internal executor
  • Add test progress bar to non-verbose mode
  • Adjust the attribute linting for tests
  • Lint attribute names for test
  • Human friendly names for VMs