https://github.com/sclorg/container-workflow-tool
https://github.com/sclorg/container-workflow-tool
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/sclorg/container-workflow-tool
- Owner: sclorg
- License: mit
- Created: 2018-05-16T07:21:56.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2025-04-23T06:52:34.000Z (about 1 year ago)
- Last Synced: 2025-06-14T17:02:42.459Z (about 1 year ago)
- Language: Python
- Size: 203 KB
- Stars: 1
- Watchers: 10
- Forks: 9
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Container Workflow Tool
=======================
[](https://quay.io/repository/rhscl/cwt-generator)
A python3 tool to make rebuilding container images easier by automating several steps of the process.
Motivation
----------
The actual rebuild of container images consists of several steps that have been so far done manually. Some of these steps are:
* **Rebase against upstream repository**
* **Check the changes made by the rebase**
* **Push the changes into dist-git and run the build**
All of the steps are currently automated or semi-automated by `cwt` (but still need to be manually started). This should help a bit with the image rebuild workflow.
Requirements
------------
* python3
* python3-GitPython
* python3-requests-kerberos
* fedpkg
Options
-------
```
usage: cwt [options] command
Command:
koji - List builds, base images, hash ids
build - Command for building images
git - Work with upstream/downstream git repositories
utils - Other actions tied to the rebuild (communication, repository preparation etc.)
Options:
-v, --verbosity - Verbosity level, 1 (Critical only) - 5 (Debug messages), default 4 (Info)
--base - Specific base image release, required for some actions
--clear-cache - Clears tmp dir before running the command
--latest-release - Work with latest brew builds by release value
--config - Overrides default configuration file, expects the name of file a inside the config folder, optionally takes image_set argument
example usage: --config default.yaml:fedora27
--do-image - Use a custom set of images instead of all from the config (use dist-git names)
--exclude-image - Exclude an image from the list of images defined by config (use dist-git names)
--do-set - Use a specific set of images instead of all from the config (use dist-git names)
--tmp - Overrides default temporary working directory
--disable-klist - Disables getting kerberos token by klist
```
To get the usage of a specific command, you can run:
cwt command --help
container-workflow-tool in the quay.io registry
-----------------------------------------------
`container-workflow-tool` is automatically built and pushed in
[quay.io/rhscl/cwt-generator](https://quay.io/repository/rhscl/cwt-generator) as soon as changes
are merged into `master` branch.
Test
----
This repository also contains test suites for python's `unittest` framework that check the basic functionality of cwt.
These test can be run directly from the repository's root via Makefile:
make test
If you do not need to run all of the test cases provided you can run a module-specific subset like this:
make test_distgit
If you want to run all the test cases in container, run it like this:
```bash
make test-in-container
```