kojismokydingo


Namekojismokydingo JSON
Version 2.2.0 PyPI version JSON
download
home_pagehttps://github.com/obriencj/koji-smoky-dingo
SummaryA collection of Koji client plugins and utils
upload_time2024-11-13 21:22:44
maintainerNone
docs_urlNone
authorChristopher O'Brien
requires_pythonNone
licenseGNU General Public License v3 (GPLv3)
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Overview

Koji Smoky Dingo is a collection of client command-line plugins for
the [Koji] build system, and a set of utility modules for writing your
own commands or scripts.

[koji]: https://pagure.io/koji

The phrase "smoky-dingo" was provided by [coolname] and has no
particular relevance.

[coolname]: https://pypi.org/project/coolname/


## Meta Plugin

This project provides a relatively tiny CLI plugin for koji, named
kojismokydingometa. The meta plugin acts as an adapter between koji's
existing CLI plugin loading framework and Python entry_points.

The meta plugin can be used to load additional commands beyond those
provided as part of this project. Simply register your commands with
the `"koji_smoky_dingo"` entry point key. See the [example command]
as a reference.

[example command]: https://github.com/obriencj/koji-smoky-dingo/blob/master/examples/command/


## Tag Commands

These commands modify tag features, requiring either the tag
permission (koji >= [1.18]) or the admin permission.

| Command | Description |
|---------|-------------|
|`block-env-var` |Blocks a mock environment variable from a tag. |
|`block-rpm-macro` |Blocks a mock RPM macro from a tag. |
|`bulk—move-builds` |Move a large amount of builds, bypassing the creation of individual tasks. |
|`bulk—tag-builds` |Tag a large amount of builds, bypassing the creation of individual tasks. |
|`bulk—untag-builds` |Untag a large amount of builds, bypassing the creation of individual tasks. |
|`remove-env-var` |Removes a mock environment variable from a tag. |
|`remove-rpm-macro` |Removes a mock RPM macro from a tag. |
|`renum—tag-inheritance` |Adjust the priority values of a tag to maintain the same inheritance order, but to create an even amount of space between each entry. |
|`set-env-var` |Sets, unsets, or blocks the value of a mock environment variable on a tag. |
|`set-rpm-macro` |Sets, unsets, or blocks the value of a mock RPM macro on a tag. |
|`swap—tag-inheritance` |Adjust the inheritance of a tag by replacing one entry for another. If both entries are already parents of a tag, then swap the priority of the two. |


## Information Commands

These commands are informational only, and do not require any special
permissions in koji.

| Command | Description |
|---------|-------------|
|`affected—targets` |Show targets which would be impacted by modifications to the given tag |
|`cginfo` |Show content generators and their permitted users |
|`check—hosts` |Show builder hosts which haven't been checking in lately |
|`check-repo` |Shows whether a tag's repo is up-to-date with its history |
|`client-config` |Show settings for client profiles |
|`filter-builds` |Filter a list of NVRs by various criteria |
|`filter-tags` |Filter a list of tags by various criteria |
|`latest-archives` |Show selected latest archives from a tag |
|`list-btypes` |Show build types |
|`list-build-archives` |Show selected archives attached to a build |
|`list-cgs` |Show content generators |
|`list-component-builds` |Show builds which were used to produce others |
|`list-env-vars` |Show all inherited mock environment variables for a tag |
|`list-rpm-macros` |Show all inherited mock RPM macros for a tag |
|`list-tag-extras` |Show all inherited extra fields for a tag |
|`open` |Opens a brower to the info page for koji data types |
|`perminfo` |Show information about a permission |
|`pull-container` |Pull an image from a container build |
|`repoquery` |Use DNF to query the contents of a tag's repo |
|`userinfo` |Show information about a user account |


## Install

The kojismokydingo package utilizes setuptools and can be built and
installed as a wheel.

Because of how koji loads client plugins, if you want the meta plugin
available by default system-wide, then the package needs to be
installed into the default site-packages for the python
installation.


### As an RPM via DNF

If using an RPM-based distribution, this is easily achieved using the
included spec to produce an RPM and install that.

```bash
make clean rpm
dnf install dist/noarch/python3-kojismokydingo-2.2.0-0.fc38.noarch.rpm
```


### As a System-wide Wheel via Pip

The pip3 tool can also achieve this by specifying the specific root or
prefix parameter

```bash
make clean build
pip3 install --prefix /usr -I dist/kojismokydingo-2.2.0-py3-none-any.whl
```

or you can install the most recent release straight from PyPI

```bash
pip3 install --prefix /usr -I kojismokydingo
```


### As a User-only Wheel via Pip

If you only want the plugin available for yourself, you can use the
`install` target of the Makefile to easily build the wheel, install it
using pip3, then symlink the meta plugin into your koji user plugins
directory.

```bash
make clean install
```

or you can install the most recent release straight from PyPI, and
then copy the meta plugin into place

```bash
pip3 install --user -I kojismokydingo
mkdir -p ~/.koji/plugins
cp $(python3 -c 'import koji_cli_plugins.kojismokydingometa as k ; print(k.__file__);' ~/.koji/plugins
```


## Contact

Author: Christopher O'Brien  <obriencj@gmail.com>

Original Git Repository: <https://github.com/obriencj/koji-smoky-dingo>

Documentation: <https://obriencj.github.io/koji-smoky-dingo>


## License

This library is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or (at
your option) any later version.

This library is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
General Public License for more details.

You should have received a copy of the GNU General Public License
along with this library; if not, see <http://www.gnu.org/licenses/>.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/obriencj/koji-smoky-dingo",
    "name": "kojismokydingo",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": null,
    "author": "Christopher O'Brien",
    "author_email": "obriencj@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/d7/39/c040ab3899f26613389ad4937af0998674ab79b006e6a112f025df9f2b7e/kojismokydingo-2.2.0.tar.gz",
    "platform": "any",
    "description": "# Overview\n\nKoji Smoky Dingo is a collection of client command-line plugins for\nthe [Koji] build system, and a set of utility modules for writing your\nown commands or scripts.\n\n[koji]: https://pagure.io/koji\n\nThe phrase \"smoky-dingo\" was provided by [coolname] and has no\nparticular relevance.\n\n[coolname]: https://pypi.org/project/coolname/\n\n\n## Meta Plugin\n\nThis project provides a relatively tiny CLI plugin for koji, named\nkojismokydingometa. The meta plugin acts as an adapter between koji's\nexisting CLI plugin loading framework and Python entry_points.\n\nThe meta plugin can be used to load additional commands beyond those\nprovided as part of this project. Simply register your commands with\nthe `\"koji_smoky_dingo\"` entry point key. See the [example command]\nas a reference.\n\n[example command]: https://github.com/obriencj/koji-smoky-dingo/blob/master/examples/command/\n\n\n## Tag Commands\n\nThese commands modify tag features, requiring either the tag\npermission (koji >= [1.18]) or the admin permission.\n\n| Command | Description |\n|---------|-------------|\n|`block-env-var` |Blocks a mock environment variable from a tag. |\n|`block-rpm-macro` |Blocks a mock RPM macro from a tag. |\n|`bulk\u2014move-builds` |Move a large amount of builds, bypassing the creation of individual tasks. |\n|`bulk\u2014tag-builds` |Tag a large amount of builds, bypassing the creation of individual tasks. |\n|`bulk\u2014untag-builds` |Untag a large amount of builds, bypassing the creation of individual tasks. |\n|`remove-env-var` |Removes a mock environment variable from a tag. |\n|`remove-rpm-macro` |Removes a mock RPM macro from a tag. |\n|`renum\u2014tag-inheritance` |Adjust the priority values of a tag to maintain the same inheritance order, but to create an even amount of space between each entry. |\n|`set-env-var` |Sets, unsets, or blocks the value of a mock environment variable on a tag. |\n|`set-rpm-macro` |Sets, unsets, or blocks the value of a mock RPM macro on a tag. |\n|`swap\u2014tag-inheritance` |Adjust the inheritance of a tag by replacing one entry for another. If both entries are already parents of a tag, then swap the priority of the two. |\n\n\n## Information Commands\n\nThese commands are informational only, and do not require any special\npermissions in koji.\n\n| Command | Description |\n|---------|-------------|\n|`affected\u2014targets` |Show targets which would be impacted by modifications to the given tag |\n|`cginfo` |Show content generators and their permitted users |\n|`check\u2014hosts` |Show builder hosts which haven't been checking in lately |\n|`check-repo` |Shows whether a tag's repo is up-to-date with its history |\n|`client-config` |Show settings for client profiles |\n|`filter-builds` |Filter a list of NVRs by various criteria |\n|`filter-tags` |Filter a list of tags by various criteria |\n|`latest-archives` |Show selected latest archives from a tag |\n|`list-btypes` |Show build types |\n|`list-build-archives` |Show selected archives attached to a build |\n|`list-cgs` |Show content generators |\n|`list-component-builds` |Show builds which were used to produce others |\n|`list-env-vars` |Show all inherited mock environment variables for a tag |\n|`list-rpm-macros` |Show all inherited mock RPM macros for a tag |\n|`list-tag-extras` |Show all inherited extra fields for a tag |\n|`open` |Opens a brower to the info page for koji data types |\n|`perminfo` |Show information about a permission |\n|`pull-container` |Pull an image from a container build |\n|`repoquery` |Use DNF to query the contents of a tag's repo |\n|`userinfo` |Show information about a user account |\n\n\n## Install\n\nThe kojismokydingo package utilizes setuptools and can be built and\ninstalled as a wheel.\n\nBecause of how koji loads client plugins, if you want the meta plugin\navailable by default system-wide, then the package needs to be\ninstalled into the default site-packages for the python\ninstallation.\n\n\n### As an RPM via DNF\n\nIf using an RPM-based distribution, this is easily achieved using the\nincluded spec to produce an RPM and install that.\n\n```bash\nmake clean rpm\ndnf install dist/noarch/python3-kojismokydingo-2.2.0-0.fc38.noarch.rpm\n```\n\n\n### As a System-wide Wheel via Pip\n\nThe pip3 tool can also achieve this by specifying the specific root or\nprefix parameter\n\n```bash\nmake clean build\npip3 install --prefix /usr -I dist/kojismokydingo-2.2.0-py3-none-any.whl\n```\n\nor you can install the most recent release straight from PyPI\n\n```bash\npip3 install --prefix /usr -I kojismokydingo\n```\n\n\n### As a User-only Wheel via Pip\n\nIf you only want the plugin available for yourself, you can use the\n`install` target of the Makefile to easily build the wheel, install it\nusing pip3, then symlink the meta plugin into your koji user plugins\ndirectory.\n\n```bash\nmake clean install\n```\n\nor you can install the most recent release straight from PyPI, and\nthen copy the meta plugin into place\n\n```bash\npip3 install --user -I kojismokydingo\nmkdir -p ~/.koji/plugins\ncp $(python3 -c 'import koji_cli_plugins.kojismokydingometa as k ; print(k.__file__);' ~/.koji/plugins\n```\n\n\n## Contact\n\nAuthor: Christopher O'Brien  <obriencj@gmail.com>\n\nOriginal Git Repository: <https://github.com/obriencj/koji-smoky-dingo>\n\nDocumentation: <https://obriencj.github.io/koji-smoky-dingo>\n\n\n## License\n\nThis library is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation; either version 3 of the License, or (at\nyour option) any later version.\n\nThis library is distributed in the hope that it will be useful, but\nWITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\nGeneral Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this library; if not, see <http://www.gnu.org/licenses/>.\n",
    "bugtrack_url": null,
    "license": "GNU General Public License v3 (GPLv3)",
    "summary": "A collection of Koji client plugins and utils",
    "version": "2.2.0",
    "project_urls": {
        "Bug Reports": "https://github.com/obriencj/koji-smoky-dingo/issues",
        "Discussions": "https://obriencj.github.io/koji-smoky-dingo/discussions",
        "Documentation": "https://obriencj.github.io/koji-smoky-dingo",
        "Homepage": "https://github.com/obriencj/koji-smoky-dingo",
        "Source": "https://github.com/obriencj/koji-smoky-dingo"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "854202eaaf224ba7b4faa9ca36f300a973017d59d7979b195efd0f2fd49ba104",
                "md5": "7d355f04967a6e41177261dd53401fee",
                "sha256": "a0f2ebdcb146137ac667cb4eb9688944962ac1b156b6e719f3b6c3c84a59b8d3"
            },
            "downloads": -1,
            "filename": "kojismokydingo-2.2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7d355f04967a6e41177261dd53401fee",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 149183,
            "upload_time": "2024-11-13T21:22:42",
            "upload_time_iso_8601": "2024-11-13T21:22:42.578627Z",
            "url": "https://files.pythonhosted.org/packages/85/42/02eaaf224ba7b4faa9ca36f300a973017d59d7979b195efd0f2fd49ba104/kojismokydingo-2.2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d739c040ab3899f26613389ad4937af0998674ab79b006e6a112f025df9f2b7e",
                "md5": "8231e2cdfa63bb6655c5f10f1d58e3cd",
                "sha256": "1a95938768b695a8adc182e72edb47931b4b9a0a8cc4ae554eeabd63890eff15"
            },
            "downloads": -1,
            "filename": "kojismokydingo-2.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "8231e2cdfa63bb6655c5f10f1d58e3cd",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 127717,
            "upload_time": "2024-11-13T21:22:44",
            "upload_time_iso_8601": "2024-11-13T21:22:44.105503Z",
            "url": "https://files.pythonhosted.org/packages/d7/39/c040ab3899f26613389ad4937af0998674ab79b006e6a112f025df9f2b7e/kojismokydingo-2.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-13 21:22:44",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "obriencj",
    "github_project": "koji-smoky-dingo",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "kojismokydingo"
}
        
Elapsed time: 1.10859s