# Script-Master
Сервис, который по конфигам (формат YAML),
создает задания запуска скриптов в сервисе [Process-Executor](https://github.com/pavelmaksimov/process-executor),
согласно плану запусков полученных от сервиса [Work-Planner](https://github.com/pavelmaksimov/work-planner).
Отлично подходит для запуска ETL скриптов по расписанию.
Требует мало ресурсов, не требует БД, конфигурации скриптов
и их параметры запуска (расписание) создаются в YAML конфигах,
поэтому интерфейс не требуется, но он есть, дополнительно можно поставить.
## Install
poetry add script-master
or
pip install script-master
## Run
script-master --help
script-master init # Создаст конфиг в текущий директории
script-master run # Запускать всегда в директории, в которой был выполнен init
or
uvicorn script_master.main:app --port 8080 --reload
## Интерфейс
Есть [интерфейс](https://github.com/pavelmaksimov/script-master-helper), он не обязателен. Для сервиса требуются только конфиги yaml, их иожно вручную создавать
Запускается отдельно/
Raw data
{
"_id": null,
"home_page": "https://github.com/pavelmaksimov/script-master",
"name": "script-master",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.10,<4.0",
"maintainer_email": "",
"keywords": "",
"author": "Pavel Maksimov",
"author_email": "vur21@ya.ru",
"download_url": "https://files.pythonhosted.org/packages/2a/ab/ceff3f94f0dc684373787f77b124e710e986346b48aafb655f01bb06f40a/script_master-0.0.5.tar.gz",
"platform": null,
"description": "# Script-Master\n\n\u0421\u0435\u0440\u0432\u0438\u0441, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0430\u043c (\u0444\u043e\u0440\u043c\u0430\u0442 YAML), \n\u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432 \u0432 \u0441\u0435\u0440\u0432\u0438\u0441\u0435 [Process-Executor](https://github.com/pavelmaksimov/process-executor),\n\u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u043f\u043b\u0430\u043d\u0443 \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u0432 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u043e\u0442 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 [Work-Planner](https://github.com/pavelmaksimov/work-planner).\n\n\u041e\u0442\u043b\u0438\u0447\u043d\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 ETL \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432 \u043f\u043e \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u044e.\n\n\u0422\u0440\u0435\u0431\u0443\u0435\u0442 \u043c\u0430\u043b\u043e \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432, \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0411\u0414, \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432 \n\u0438 \u0438\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0437\u0430\u043f\u0443\u0441\u043a\u0430 (\u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435) \u0441\u043e\u0437\u0434\u0430\u044e\u0442\u0441\u044f \u0432 YAML \u043a\u043e\u043d\u0444\u0438\u0433\u0430\u0445, \n\u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f, \u043d\u043e \u043e\u043d \u0435\u0441\u0442\u044c, \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c.\n\n\n## Install\n poetry add script-master\n\nor\n\n pip install script-master\n\n## Run\n script-master --help\n script-master init # \u0421\u043e\u0437\u0434\u0430\u0441\u0442 \u043a\u043e\u043d\u0444\u0438\u0433 \u0432 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438\n script-master run # \u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u0432\u0441\u0435\u0433\u0434\u0430 \u0432 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0431\u044b\u043b \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d init\n\nor \n \n uvicorn script_master.main:app --port 8080 --reload\n\n\n## \u0418\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\n\u0415\u0441\u0442\u044c [\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441](https://github.com/pavelmaksimov/script-master-helper), \u043e\u043d \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u0435\u043d. \u0414\u043b\u044f \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u0442\u0440\u0435\u0431\u0443\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0438 yaml, \u0438\u0445 \u0438\u043e\u0436\u043d\u043e \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c\n\u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e/",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "",
"version": "0.0.5",
"project_urls": {
"Homepage": "https://github.com/pavelmaksimov/script-master"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "a9c904683f791c57be305fa6cf87c2dae25c7b85526884b27c66dacaa08b839e",
"md5": "de67a76cedbf094a49a1e0c9691aecbc",
"sha256": "ba61b9efb3a27e8ca3800329786bec37184b344f0a4667d5a9d2699864238d18"
},
"downloads": -1,
"filename": "script_master-0.0.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "de67a76cedbf094a49a1e0c9691aecbc",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10,<4.0",
"size": 24753,
"upload_time": "2023-05-30T15:45:53",
"upload_time_iso_8601": "2023-05-30T15:45:53.694380Z",
"url": "https://files.pythonhosted.org/packages/a9/c9/04683f791c57be305fa6cf87c2dae25c7b85526884b27c66dacaa08b839e/script_master-0.0.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2aabceff3f94f0dc684373787f77b124e710e986346b48aafb655f01bb06f40a",
"md5": "0dccd4a4feac49f3f61ccd1aeba60015",
"sha256": "9f328ba038f01f27b51233a2105157f78540979d2ce57c801fcd9a4bf80fb9df"
},
"downloads": -1,
"filename": "script_master-0.0.5.tar.gz",
"has_sig": false,
"md5_digest": "0dccd4a4feac49f3f61ccd1aeba60015",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10,<4.0",
"size": 16592,
"upload_time": "2023-05-30T15:45:55",
"upload_time_iso_8601": "2023-05-30T15:45:55.919621Z",
"url": "https://files.pythonhosted.org/packages/2a/ab/ceff3f94f0dc684373787f77b124e710e986346b48aafb655f01bb06f40a/script_master-0.0.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-05-30 15:45:55",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "pavelmaksimov",
"github_project": "script-master",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "script-master"
}