{"id":20235325,"url":"https://github.com/phphleb/spreader","last_synced_at":"2026-02-02T00:35:08.463Z","repository":{"id":57040473,"uuid":"437316022","full_name":"phphleb/spreader","owner":"phphleb","description":"Single configuration replication for PHP Framework HLEB2","archived":false,"fork":false,"pushed_at":"2024-12-06T01:58:37.000Z","size":38,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-21T03:49:33.402Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/phphleb.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,"zenodo":null}},"created_at":"2021-12-11T15:18:15.000Z","updated_at":"2024-12-06T01:58:13.000Z","dependencies_parsed_at":"2024-12-06T02:30:31.075Z","dependency_job_id":"1d19b078-57ca-451a-b724-6a17aceb0667","html_url":"https://github.com/phphleb/spreader","commit_stats":{"total_commits":24,"total_committers":1,"mean_commits":24.0,"dds":0.0,"last_synced_commit":"9f60cf20ec913a6e25ec7ebe89474140c2c690f5"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/phphleb/spreader","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phphleb%2Fspreader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phphleb%2Fspreader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phphleb%2Fspreader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phphleb%2Fspreader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/phphleb","download_url":"https://codeload.github.com/phphleb/spreader/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phphleb%2Fspreader/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28997024,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-01T23:10:54.274Z","status":"ssl_error","status_checked_at":"2026-02-01T23:10:47.298Z","response_time":56,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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-11-14T08:15:54.579Z","updated_at":"2026-02-02T00:35:08.449Z","avatar_url":"https://github.com/phphleb.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n### Удалённое конфигурирование для библиотек фреймворка HLEB2\n\n[![HLEB2](https://img.shields.io/badge/HLEB-2-darkcyan)](https://github.com/phphleb/hleb) ![PHP](https://img.shields.io/badge/PHP-^8.2-blue) [![License: MIT](https://img.shields.io/badge/License-MIT%20(Free)-brightgreen.svg)](https://github.com/phphleb/hleb/blob/master/LICENSE)\n\nПозволяет создать общую конфигурацию для библиотек, в том числе использующих\nнастраиваемую пользователем конфигурацию.\nЭто может понадобиться при распределении нагрузки на несколько одинаковых клонов проекта,\nв таком случае у них должна быть общая внешняя конфигурация.\n\nНапример, в библиотеке Hlogin через веб-интерфейс администратором изменён тип дизайна\nрегистрации, это изменение должно быть применено ко всем клонам проекта одновременно.\nБиблиотека phphleb/spreader добавляет общий тип хранения конфигурации в базе данных.\nДля этого вам нужно переключить настройку фреймворка в тип 'DB' и указать идентификатор базы данных.\n\n\nДля сохранения конфигурации в базу данных используйте следующие настройки:\n```php\n// File /config/common.php\n\n/*\n │-----------------------------------------------------------------------------\n │ Selecting the type of configs storage (\"File\" or \"DB\")\n │-----------------------------------------------------------------------------\n │ Выбор типа хранения конфигов (\"File\" или \"DB\")\n │-----------------------------------------------------------------------------\n */\n'spread.config.type' =\u003e 'DB',\n\n```\n\n```php\n\n// File /config/database.php\n\nreturn [\n'spread.db.type' =\u003e 'mysql.name',\n// ,,, //\n];\n```\nДля начальной синхронизации всех конфигураций можно использовать специальную консольную команду.\nУстановка команды в проект:\n```bash\nphp console phphleb/spreader add\n```\nПеренос конфигурации из файлов в выбранный тип (`DB`):\n```bash\nphp console spreader/sync\n```\nЭта команда может пригодиться при первоначальном развертывании проекта,\nона делает конфигурацию текущего проекта общей для всех его клонов.\n\nПредварительно можно вывести данные для переноса следующей командой:\n```bash\nphp console spreader/report\n```\n\nВ случае, если вы хотите использовать этот механизм для своей библиотеки,\nто нужно получение/сохранение конфигурации в ней реализовать через\nкласс Phphleb\\Spreader\\Transfer.\n\n\nПри выборе типа `File` будет использовано хранение конфигурации по умолчанию, в файлах по пути /storage/lib/.\nДля типа `DB` данные будут перенесены в таблицу `hleb_spreader_conf`.\nПроверена поддержка  __MySQL__ / __MariaDB__ / __PostgreSQL__.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphphleb%2Fspreader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphphleb%2Fspreader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphphleb%2Fspreader/lists"}