{"id":22574888,"url":"https://github.com/thoth-station/graph-refresh-job","last_synced_at":"2025-04-10T16:11:14.169Z","repository":{"id":31934508,"uuid":"129856789","full_name":"thoth-station/graph-refresh-job","owner":"thoth-station","description":"A job for scheduling solver to resolve dependency graphs of new packages","archived":false,"fork":false,"pushed_at":"2023-10-18T00:16:55.000Z","size":1593,"stargazers_count":1,"open_issues_count":3,"forks_count":9,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-03-24T13:51:24.505Z","etag":null,"topics":["artificial-intelligence","hacktoberfest","thoth"],"latest_commit_sha":null,"homepage":null,"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":null,"security":null,"support":null}},"created_at":"2018-04-17T06:27:35.000Z","updated_at":"2022-05-12T08:33:39.000Z","dependencies_parsed_at":"2023-02-10T18:15:41.770Z","dependency_job_id":null,"html_url":"https://github.com/thoth-station/graph-refresh-job","commit_stats":null,"previous_names":[],"tags_count":36,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoth-station%2Fgraph-refresh-job","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoth-station%2Fgraph-refresh-job/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoth-station%2Fgraph-refresh-job/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thoth-station%2Fgraph-refresh-job/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thoth-station","download_url":"https://codeload.github.com/thoth-station/graph-refresh-job/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248251020,"owners_count":21072685,"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":["artificial-intelligence","hacktoberfest","thoth"],"created_at":"2024-12-08T03:08:21.432Z","updated_at":"2025-04-10T16:11:14.151Z","avatar_url":"https://github.com/thoth-station.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Thoth Graph Refresh Job\n-----------------------\n\n.. image:: https://img.shields.io/github/v/tag/thoth-station/graph-refresh-job?style=plastic\n  :target: https://github.com/thoth-station/graph-refresh-job/tags\n  :alt: GitHub tag (latest by date)\n\n.. image:: https://quay.io/repository/thoth-station/graph-refresh-job/status\n  :target: https://quay.io/repository/thoth-station/graph-refresh-job?tab=tags\n  :alt: Quay - Build\n\nA job for scheduling solver to resolve dependency graphs and package-analyzer to gather digests and ABI of new packages or packages not analyzed yet.\n\nRunning the job locally\n=======================\n\nYou can run this job locally. Run a faust consumer and then run the faust producer with help of app.sh.\nThe steps to run the consumer is well documented here - `link \u003chttps://github.com/thoth-station/messaging/#development-and-testing\u003e`_.\nYou can run the producer as - `faust -A producer main`\n\nNotes on configuring producer.\n==============================\nThe producer currently produces three types of messages i.e. solver, revsolver and unanalyzed-si messages.\nThese can be disabled by passing the respective env variables -\n\n* THOTH_GRAPH_REFRESH_SOLVER=0\n* THOTH_GRAPH_REFRESH_REVSOLVER=0\n* THOTH_GRAPH_REFRESH_SECURITY=0\n* THOTH_GRAPH_REFRESH_COUNT=\u003cGraphDatabase.DEFAULT_COUNT\u003e (This restricts the number of messages per solver for solver messages and the total number of messages generated for security and revsolver.)\n\nInsights to graph-refresh job\n=============================\n\nThe job is run periodically as OpenShift's CronJob. It can be also triggered\nautomatically by Thoth's monitoring system when there is no workload happening\nin Thoth's middletier namespace.\n\n.. note::\n\n  * graph-refresh job is run in Thoth's frontend namespace\n  * kafka producer ensures that the messages to schedule solvers and reverse solvers(revsolvers) are sent to the kafka broker\n\nPackages which are not resolved yet might be coming from:\n\n* user requests on advises for software stacks\n* user requests for provenance checks\n* container image scans\n* explicitly registering Python packages to Thoth on Management API endpoint\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthoth-station%2Fgraph-refresh-job","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthoth-station%2Fgraph-refresh-job","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthoth-station%2Fgraph-refresh-job/lists"}