This repository contains the automation code used to keep the snap-tempest repo up to date.
The automation works as follows.
- The
update-tempest-releases.yaml
workflow is triggered on a schedule or manually, and will run theupdate-snapcraft.yaml
workflow for every supported OpenStack release - The
update-snapcraft.yaml
workflow will checkout astable/
branch from the snap-tempest repo and compare itssnapcraft.yaml
file to the one generated by theupdate_snapcraft.py
script. If there are differences, it will push the changes to arelease/
branch on the snap-tempest repo and create a PR against the correspondingstable/
branch - The
update_snapcraft.py
script will determine the correct component versions for a given OpenStack release by inspecting the OpenStack releases repo and pypi RSS feeds.
The output of the update_snapcraft.py
script can be altered via two parameters:
--excluded-plugins
: this is the path to a file containing a list of Tempest plugin names that should not be bundled in the snap. A default list is provided in this repo.--manual-requirements
: this is a path to a list of additional Python packages that should be bundled in the snap, in PEP440 format. This may sometimes be required to fix missing plugin dependencies. By default, no additional requirements are installed.