Container Workflow Tool
=======================
[![Docker Repository on Quay](https://quay.io/repository/rhscl/cwt-generator/status "Docker Repository on Quay")](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
```
Raw data
{
"_id": null,
"home_page": "https://github.com/sclorg/container-workflow-tool",
"name": "container-workflow-tool",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "tool, containers, images, automate, workflow",
"author": "Petr Kubat",
"author_email": "pkubat@redhat.com",
"download_url": "https://files.pythonhosted.org/packages/2b/53/fa7db525da931fff306f1212054e8b791512d7ca977913844bb97734b1f0/container_workflow_tool-1.5.10.tar.gz",
"platform": null,
"description": "Container Workflow Tool\n=======================\n[![Docker Repository on Quay](https://quay.io/repository/rhscl/cwt-generator/status \"Docker Repository on Quay\")](https://quay.io/repository/rhscl/cwt-generator)\n\n\nA python3 tool to make rebuilding container images easier by automating several steps of the process.\n\nMotivation\n----------\n\nThe actual rebuild of container images consists of several steps that have been so far done manually. Some of these steps are:\n\n * **Rebase against upstream repository**\n * **Check the changes made by the rebase**\n * **Push the changes into dist-git and run the build**\n\nAll 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.\n\nRequirements\n------------\n\n* python3\n* python3-GitPython\n* python3-requests-kerberos\n* fedpkg\n\nOptions\n-------\n\n```\nusage: cwt [options] command\n Command:\n koji - List builds, base images, hash ids\n build - Command for building images\n git - Work with upstream/downstream git repositories\n utils - Other actions tied to the rebuild (communication, repository preparation etc.)\n\n Options:\n -v, --verbosity - Verbosity level, 1 (Critical only) - 5 (Debug messages), default 4 (Info)\n --base - Specific base image release, required for some actions\n --clear-cache - Clears tmp dir before running the command\n --latest-release - Work with latest brew builds by release value\n --config - Overrides default configuration file, expects the name of file a inside the config folder, optionally takes image_set argument\n example usage: --config default.yaml:fedora27\n --do-image - Use a custom set of images instead of all from the config (use dist-git names)\n --exclude-image - Exclude an image from the list of images defined by config (use dist-git names)\n --do-set - Use a specific set of images instead of all from the config (use dist-git names)\n --tmp - Overrides default temporary working directory\n --disable-klist - Disables getting kerberos token by klist\n```\n\nTo get the usage of a specific command, you can run:\n\n cwt command --help\n\ncontainer-workflow-tool in the quay.io registry\n-----------------------------------------------\n`container-workflow-tool` is automatically built and pushed in\n[quay.io/rhscl/cwt-generator](https://quay.io/repository/rhscl/cwt-generator) as soon as changes\nare merged into `master` branch.\n\nTest\n----\nThis repository also contains test suites for python's `unittest` framework that check the basic functionality of cwt.\nThese test can be run directly from the repository's root via Makefile:\n\n make test\n\nIf you do not need to run all of the test cases provided you can run a module-specific subset like this:\n\n make test_distgit\n\nIf you want to run all the test cases in container, run it like this:\n\n```bash\nmake test-in-container\n```\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A python3 tool to make rebuilding images easier by automating several steps of the process.",
"version": "1.5.10",
"project_urls": {
"Homepage": "https://github.com/sclorg/container-workflow-tool"
},
"split_keywords": [
"tool",
" containers",
" images",
" automate",
" workflow"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "156ea37c72be4cb853e5b174a499adb0235cebe57aedb68d272c34cb0b923f80",
"md5": "20e185b39eda45ed6b4798a586169d84",
"sha256": "56093dba3d71e7cb15bccffeb4745365b53f9b9a2e2f13a6645bad50c4b67eee"
},
"downloads": -1,
"filename": "container_workflow_tool-1.5.10-py3-none-any.whl",
"has_sig": false,
"md5_digest": "20e185b39eda45ed6b4798a586169d84",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 44068,
"upload_time": "2024-11-13T14:28:25",
"upload_time_iso_8601": "2024-11-13T14:28:25.208020Z",
"url": "https://files.pythonhosted.org/packages/15/6e/a37c72be4cb853e5b174a499adb0235cebe57aedb68d272c34cb0b923f80/container_workflow_tool-1.5.10-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2b53fa7db525da931fff306f1212054e8b791512d7ca977913844bb97734b1f0",
"md5": "554cce0986bf2264909e7995a2fb7db1",
"sha256": "a6a4690d4abb74c341328e7041650d3bbd5e271db525427a773ac2b1444fb785"
},
"downloads": -1,
"filename": "container_workflow_tool-1.5.10.tar.gz",
"has_sig": false,
"md5_digest": "554cce0986bf2264909e7995a2fb7db1",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 34230,
"upload_time": "2024-11-13T14:28:28",
"upload_time_iso_8601": "2024-11-13T14:28:28.077679Z",
"url": "https://files.pythonhosted.org/packages/2b/53/fa7db525da931fff306f1212054e8b791512d7ca977913844bb97734b1f0/container_workflow_tool-1.5.10.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-13 14:28:28",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "sclorg",
"github_project": "container-workflow-tool",
"travis_ci": true,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "container-workflow-tool"
}