{"id":23024715,"url":"https://github.com/oss/rutgers-repotools-2","last_synced_at":"2025-06-29T11:33:05.322Z","repository":{"id":145260071,"uuid":"55251593","full_name":"oss/rutgers-repotools-2","owner":"oss","description":"Set of tools used by Rutgers OSS to manage yum repositories with packages from Koji","archived":false,"fork":false,"pushed_at":"2019-10-24T16:56:13.000Z","size":54,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-02-08T10:21:17.214Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/oss.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-04-01T17:53:13.000Z","updated_at":"2019-10-24T16:56:15.000Z","dependencies_parsed_at":null,"dependency_job_id":"bccb12a2-c20b-47ec-8447-5ef47ab46500","html_url":"https://github.com/oss/rutgers-repotools-2","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oss%2Frutgers-repotools-2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oss%2Frutgers-repotools-2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oss%2Frutgers-repotools-2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oss%2Frutgers-repotools-2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/oss","download_url":"https://codeload.github.com/oss/rutgers-repotools-2/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246882985,"owners_count":20849361,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-15T13:20:52.359Z","updated_at":"2025-04-02T19:41:30.736Z","avatar_url":"https://github.com/oss.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"Rutgers Repository Tools (v2)\n========================\n\nRutgers Repository Tools is a set of tools used by Open System Solutions on\nCentOS machines for the RPM package publishing process. These tools work in\nconjunction with Koji and uses mash to generate the repos. It is written\nmostly in bash.\n\nThe configuration files are the mash configuration options stored in\n\"/etc/mash\", the yum conf in \"/etc/repotools2-yum.conf\", and the main conf\nfile in \"/etc/rutgers-repotools-2.conf\"\n\nPrerequisites\n-------------\nIn summary, an the root user  does the tagging and untagging of packages on \nKoji, and a user called 'roji' sends an email with the results of its operations.\n\nThese tools are designed to run on a system which has read and write access to\nthe Koji PostgreSQL database, as well as write access to the Rutgers RPM\nrepositories.  In order to access the Koji database and perform tagging\noperations, the user running the commands needs SSL certificates generated \nand installed in the Koji certificate directory (typically `/etc/pki/koji`).\n\nPublishing Scripts\n------------------\nScripts for publishing to repositories.\n\n### pushpackage\nThe main publishing script. This takes packages from a repository (tag) and\ncopies it (tags it) to a given target repository. Note that this does not erase\nexisting tags. This also checks the dependencies of the packages against the\nrepository they are being moved to with the depcheck script. At the end of the\npush, mail is sent, indicating success or failure.\n\nAn example:\n\n     $ pushpackage centos6-rutgers-testing rutgers-repotools-2-1.0.1-1.ru6\n\n### pullpackage\nThis script does the opposite of pushpackage: it takes a package from a\nrepository and untags it. Before this occurs, it does dependency checking to\nmake sure that an existing package does not depend on the removed one.\n\nThe pullpackage script takes arguments in the same style as pushpackage.\n\nOther Scripts\n-----------------------------------\nThese scripts do dependency checking, regenerate repositories, perform backups,\nand so on.\n\n### depcheck\nDoes dependency checking on a given repository. This is a hack that uses\nrepoclosure from the yum-utils package. Essentially, it pretends that our\nrepository is a Yum repository, then has Yum do the dependency checking for us.\n\nThis script is run as part of the daily checks cron job; it call also be run by\nhand if desired.\n\nIt's possible to give a list of exceptions for broken dependencies that this\nscript will ignore. By default, the list is installed at `/etc/depcheck2.ignore`.\nHowever, it's best to avoid using exceptions and fix the broken dependencies\nproperly. \n\n### rebuild-repo\nThis script will regenerate the published repository for a specific koji tag. \nFirst, this uses mash to create the repo for a koji tag into a temporary \ndirectory (the directory is the same name as the koji tag it is making the repo for). \nThen, asssuming mash succeeded, the old repository is renamed to \"\\\u003ctag\\\u003e-temp\" and \nthe newly generated repository is remaned \"\\\u003ctag\\\u003e-current\". If for whatever reason\nthe newly generated repo is bad, you can just use the old one. The \"\\\u003ctag\\\u003e-temp\" \nrepository gets deleted after each successful run of mash.\nThis script is used by pullpackage and pushpackage.\n\nFor more information about where these directories are located, see the\nconfiguration file.\n\n### koji-backup\nThis dumps the PostgreSQL Koji database and saves it as a backup. Like the\nrpmdb-backup script, it takes its arguments from the command line, but the cron\njob automatically uses information from the configuration file by default.\n\nAuthors\n=======\nWritten by Alexander Pavel of Rutgers University Open System Solutions to replace \nthe original repotools suite (originally written in python).\n\nLicense\n=======\nThis software is licensed under the GNU General Public License v3. See LICENSE\nfor more info.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foss%2Frutgers-repotools-2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foss%2Frutgers-repotools-2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foss%2Frutgers-repotools-2/lists"}