Skip to content

Releases: teemtee/tmt

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

Userspace virtual provision, enable/disable plans, duration improvements...

07 Apr 09:02
Compare
Choose a tag to compare

Highlights

  • Use qemu user mode in the testcloud provision
  • Implement shared worktree for the tests
  • Support excluding packages during installation
  • Support enabling/disabling plans and stories
  • Improve handling of verbose and debug options
  • Add hint to stdout in case of timeout
  • Improve documentation of tests, plans and stories
  • Always enable force mode for display/html report
  • Store relevant bugs during test import
  • Export manual test case fields to nitrate

Changelog

  • Create a copy of nitrate testplans for iteration
  • Check the rsync as the first preparation step
  • Use an empty worktree if no metadata tree found
  • Adjust manual test instructions export to nitrate
  • Export manual test case fields to nitrate
  • Adjust the worktree implementation and test
  • Implement shared worktree for the tests
  • Adjust the improved verdict implementation
  • Correct the verdict function, align docstring
  • Print final image name in minute plugin
  • Adjust the improved plan linting a bit
  • Improve plan linting
  • Implement port in Guest, show in verbose mode
  • Use qemu user mode in the testcloud provision
  • Support excluding packages during installation
  • Support enabling/disabling plans and stories
  • Do not link and remove general plans by default
  • Improve general plans handling during test export
  • Match by name prefix in discover.modified-only
  • Passthrough non-zero exits for beakerlib execution
  • Adjust the dry mode implementation for tmt init
  • Implement dry mode for the tmt init command
  • Do not use the spec release for the pip version
  • Simplify story, plan and test search methods
  • Do not use mutable objects as default arguments
  • Prevent duplicate content in generated docs
  • Ignore the nitrate migration warning during import
  • Better summary for new exported tests
  • Adjust exception handling in the testcloud plugin
  • Make the testcloud ProvisionError more verbose
  • Use IPv6 enabled 1MT network by default
  • Improve debugging of tests using click runner
  • Fix step selection for --before and --after
  • Adjust the prepare test and pull/push enhancements
  • Add prepare/shell test and pull/push enhancements
  • Test filter on command line overrides config
  • Improve handling of verbose and debug options
  • Verify automated test case import from nitrate
  • Enable copr repo even if no package is provided
  • Improve documentation of tests, plans and stories
  • Use fmf to store the newly created nitrate case id
  • Adjust the hint about increasing the test duration
  • Add hint to stdout in case of timeout
  • Catch all exceptions when evaluating --condition
  • Fix missing overview on the readthedocs.org site
  • Adjust style of the new nitrate integration test
  • Nitrate integration testsuite with requre
  • Always enable force mode for display/html report
  • Improve documentation, clearly show draft stories
  • Test filter on command line overrides config
  • Print unofficial attributes in tmt tests show -vv
  • Adjust dry mode fix for test/plan/story create
  • Implement dry mode for tmt test/plan/story create
  • Support NO_COLOR to disable colored output
  • Add test duration to results.yaml
  • Adjust checking for duplicates during test export
  • Prevent creating duplicate test cases in Nitrate
  • Use singular for 'gate' as defined in the spec
  • Fix gates conversion & drop artifacts
  • Adjust a bit the shell completion instructions
  • Describe how to enable shell completions
  • Extend the duration test to cover positive results
  • Detect timeout for Beakerlib, use TESTRESULT_STATE
  • Improve tmt test path linting
  • Clarify playbook path for ansible prepare plugin
  • Adjust warning about the invalid disabled step
  • Only warn on invalid disabled step
  • Use date-service to get correct instantiation time
  • Prevent keys mutation when searching plans/stories
  • Cache fmf_id property
  • Store relevant bugs during test import
  • Avoid mutating keys default in .tests()
  • Use the new execute method syntax for tmt tests
  • Clean up obsolete test metadata

Core attribute link, fix prepare freeze

25 Feb 19:33
Compare
Choose a tag to compare
  • Add test for prepare freeze
  • Make file descriptors non-blocking
  • Update the specification and stories to use link
  • Implement the new core attribute 'link'

Default branches, improved filtering, tmt status...

24 Feb 19:51
Compare
Choose a tag to compare

Highlights

  • Default git branch handling for libraries/discover
  • Implement the new tmt status command
  • Apply filters after applying defaults and conversions
  • Implement tmt run --follow option for checking log
  • Allow selecting only tests that have changed in git
  • The first chapter of the ultimate guide to tmt

Changelog

  • Show the current tmt version in the debug log
  • Revert support for the 'el' distro shortcut
  • Strip whitespace before relevancy comment
  • Ensure rsync is installed on the guest if needed
  • Use the default branch in the discover fmf plugin
  • Suport the 'el' shortcut for the distro context
  • Implement the 'tmt --version' option [fix #445]
  • Adjust test create test, fix missing dots
  • Support creating tests in the current directory
  • Rename container images, update install docs
  • Fixup Dockerfiles to build in quay.io.
  • Support building mini and full tmt container image
  • Add a Dockerfile for container with tmt
  • Fix dependency error messages
  • Use a better trigger name for source code changes
  • Add a new 'Check Report' section to examples
  • Add the --force explanation in the documentation
  • Extend the test coverage to check for active runs
  • Add basic test coverage for tmt status
  • Restore context after processing each run
  • Correctly handle an undefined step status
  • Load default plan when no root is present
  • Implement tmt status command
  • Define command-line interface for status command
  • Print library in error message during ref conflict
  • Adjust the default branch handling for libraries
  • Handle default branch in Library
  • Adjust test duration, clean up old test metadata
  • Improve timeout handling (fix an infinite loop)
  • Adjust default timeout in the testcloud provision
  • Remove obsolete unit test coverage for steps
  • Adjust the filtering support, fix docs building
  • Allow filtering using custom L1 metadata
  • Allow filtering with lowercase bool names
  • Handle exceptions when applying filters and conditions
  • Share code for filters & conditions, test coverage
  • Apply filters after applying defaults and conversions
  • Fix IPv4 parsing when booting minute machine
  • Remove all hacks for the old cruncher executor
  • Remove the whole rhts-lint line during test import
  • Remove the old convert test from unit tests
  • Adjust contact handling to work with manual tests
  • Fix contacts without name during tmt test import
  • Finalize the specification of the 'link' attribute
  • Add specification of the new core attribute 'link'
  • Enough of dreaming, let's go to the forest! :)
  • Update the overview of core classes, minor cleanup
  • Add missing required packages for pip install
  • Implement tmt run --follow option for checking log
  • Extra check for required packages when using yum
  • Clean up obsolete names in examples and templates
  • Update the test checking for relevancy conversion
  • Adjust storing test case id for new nitrate cases
  • Append nitrate id when exporting instead of rewrite
  • Skip prereserve check if custom flavor requested
  • Use special compare operators only if minor given
  • Adjust support for selecting modified tests
  • Allow selecting only tests that have changed in git
  • Remove the duplicate build job from packit config
  • Verify the old beakerlib functions using Makefile
  • Enable debug output using the TMT_DEBUG variable