{"id":22574811,"url":"https://github.com/thoth-station/package-update-job","last_synced_at":"2025-04-10T16:10:30.312Z","repository":{"id":40420507,"uuid":"238041099","full_name":"thoth-station/package-update-job","owner":"thoth-station","description":"Aggregate updates from Packages hosted in Indices...","archived":false,"fork":false,"pushed_at":"2023-10-18T00:34:54.000Z","size":1133,"stargazers_count":2,"open_issues_count":5,"forks_count":9,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-24T13:51:22.717Z","etag":null,"topics":["hacktoberfest","python","thoth"],"latest_commit_sha":null,"homepage":"","language":"Python","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/thoth-station.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null}},"created_at":"2020-02-03T19:10:57.000Z","updated_at":"2023-02-12T11:21:22.000Z","dependencies_parsed_at":"2023-02-17T08:30:39.891Z","dependency_job_id":null,"html_url":"https://github.com/thoth-station/package-update-job","commit_stats":null,"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoth-station%2Fpackage-update-job","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoth-station%2Fpackage-update-job/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoth-station%2Fpackage-update-job/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoth-station%2Fpackage-update-job/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thoth-station","download_url":"https://codeload.github.com/thoth-station/package-update-job/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248250774,"owners_count":21072683,"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":["hacktoberfest","python","thoth"],"created_at":"2024-12-08T03:08:04.146Z","updated_at":"2025-04-10T16:10:30.294Z","avatar_url":"https://github.com/thoth-station.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Thoth Package  Update Job\n--------------------------\n\n.. image:: https://img.shields.io/github/v/tag/thoth-station/package-update-job?style=plastic\n  :target: https://github.com/thoth-station/package-update-job/tags\n  :alt: GitHub tag (latest by date)\n\n.. image:: https://quay.io/repository/thoth-station/package-update-job/status\n  :target: https://quay.io/repository/thoth-station/package-update-job?tab=tags\n  :alt: Quay - Build\n\nThis job iterates over the packages in our database to ensure that they:\n\n* still exist\n* haven't changed\n\nThis job is run periodically as an OpenShift CronJob. The job checks the availability\nof packages as well as their hashes to make sure they match what Thoth has stored.\n\nLogic behind package update\n============================================\n\nWe get a list of all packages which we have analyzed. Then, we check whether.\n\n* the package still exists on that index\n* that version of the package still exists\n* if the SHA256 from source matches what we have stored\n\nIf we find any of these issues we post to a Kafka topic so that a consumer can\ndecide how to handle the update.\n\nInstallation and Deployment\n===========================\n\nThe job is an OpenShift s2i build, the deployment is done via Kustomize,\ndeployment templates are live in the `core repository \u003chttps://github.com/thoth-station/thoth-application/tree/master/package-update/overlays/test\u003e`__.\n\nRunning the job locally\n=======================\n\nYou can run this job locally without a cluster deployment. To do so, prepare\nyour virtual environment:\n\n.. code-block:: console\n\n  $ pipenv install  --dev # Install all the requirements\n\nAfter that, you need to run a local instance of database - follow\n`instructions in the README \u003chttps://github.com/thoth-station/storages#running-postgresql-locally\u003e`__ file for\nmore info and prepare the database schema:\n\n  $ pipenv run python3 ./app.py\n\nJob will talk to your local database instance by default which is located at\n```localhost:5432`` by default. And your local Kafka instance which is ``localhost:9092``\nby default.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthoth-station%2Fpackage-update-job","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthoth-station%2Fpackage-update-job","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthoth-station%2Fpackage-update-job/lists"}