{"id":17930893,"url":"https://github.com/iwizard7/nginx-config-generator","last_synced_at":"2026-04-30T15:33:02.098Z","repository":{"id":259850340,"uuid":"879619938","full_name":"iwizard7/nginx-config-generator","owner":"iwizard7","description":"Этот скрипт на Python предназначен для автоматической генерации конфигурации NGINX на основе заданного входного файла. Он позволяет создавать блоки `location` для различных HTTP-методов и путей. Скрипт предназначен для упрощения и автоматизации настройки NGINX.","archived":false,"fork":false,"pushed_at":"2024-10-28T10:49:33.000Z","size":19,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-04-30T15:33:00.107Z","etag":null,"topics":["automation","nginx","python3"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/iwizard7.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2024-10-28T08:50:54.000Z","updated_at":"2024-10-28T10:49:36.000Z","dependencies_parsed_at":"2024-10-28T12:26:07.587Z","dependency_job_id":null,"html_url":"https://github.com/iwizard7/nginx-config-generator","commit_stats":null,"previous_names":["iwizard7/nginx-config-generator"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/iwizard7/nginx-config-generator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iwizard7%2Fnginx-config-generator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iwizard7%2Fnginx-config-generator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iwizard7%2Fnginx-config-generator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iwizard7%2Fnginx-config-generator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/iwizard7","download_url":"https://codeload.github.com/iwizard7/nginx-config-generator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iwizard7%2Fnginx-config-generator/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32469344,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"ssl_error","status_checked_at":"2026-04-30T13:12:06.837Z","response_time":57,"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":["automation","nginx","python3"],"created_at":"2024-10-28T21:18:27.088Z","updated_at":"2026-04-30T15:33:02.078Z","avatar_url":"https://github.com/iwizard7.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Генератор конфигурации NGINX ⚙️🐍\n\nЭтот скрипт генерирует конфигурацию NGINX на основе входного файла, содержащего информацию о переменных и конечных точках API. Скрипт поддерживает использование регулярных выражений для динамической замены переменных и создания блоков `location` с соответствующими методами.\n\n## Описание формата входного файла\n\nВходной файл должен содержать следующие секции, разделенные тройными дефисами (`---`):\n\n1. **Имя сервера**: строка с именем сервера.\n2. **Переменные**: переменные в формате `{variable_name}=value`, где `value` может содержать специальные символы.\n3. **Конечные точки**: строки, начинающиеся с метода (например, `GET`, `POST`) и содержащие путь.\n\n### Пример входного файла\n```\nserver_name: test-server.com\n---\nproxy_pass:http://k8s-ingress\n---\nvars: \n{envname1}=419863-049523 \n{envname2}=5944223432 \n{date}=2019-05-12\n---\nPOST api/account/signinstage \nGET api/account/current \nPOST api/clients/find\nGET api/info\n```\n## Установка\n\nСкрипт написан на Python. Убедитесь, что Python установлен на вашем компьютере. Для проверки версии Python выполните команду:\n\n```bash\npython --version\n```\n## Использование\nСкрипт запускается из командной строки с передачей двух аргументов: путь к входному файлу и путь для сохранения выходного файла.\nТакже можно просто запустить скрипт и использовать в интерактивном режиме, отвечая на вопросы.\n## Команда запуска\n```bash\npython generate_nginx_config.py input_file.txt output_nginx.conf\n```\ninput_file.txt: путь к вашему входному файлу с локейшенами.\noutput_nginx.conf: путь к выходному файлу, в который будет сохранена сгенерированная конфигурация NGINX.\n\n## Пример использования\n\n### С использованием аргументов командной строки:\n```bash\npython generate_nginx_config.py input_file.txt output_nginx.conf\n```\n### Интерактивно (без аргументов):\n```bash\npython generate_nginx_config.py\n```\nПри запуске без аргументов вас попросят ввести путь к входному и выходному файлам.\n## Вывод\nПосле успешного выполнения скрипта вы получите сгенерированную конфигурацию NGINX в указанном выходном файле. В консоли также будет выведена информация о количестве созданных блоков location и количестве каждого метода:\n```\nСоздано 5 блоков location.\nМетод GET: 2 блок(ов).\nМетод POST: 3 блок(ов).\n```\n## Зависимости\n\nСкрипт использует стандартные библиотеки Python, поэтому дополнительных зависимостей не требуется.\n\n## Лицензия\n\nЭтот проект лицензирован под лицензией MIT. Пожалуйста, см. файл LICENSE для получения дополнительной информации.\n\n### Как Пользоваться\n\n1. **Создайте входной файл**: Сформируйте файл с нужной информацией в формате, описанном выше.\n2. **Сохраните скрипт**: Убедитесь, что у вас есть скрипт `generate_nginx_config.py` в доступном каталоге.\n3. **Запустите скрипт**: Используйте команду в терминале, как указано в разделе \"Использование\".\n4. **Проверьте выходной файл**: Откройте выходной файл, чтобы убедиться, что конфигурация сгенерирована корректно.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiwizard7%2Fnginx-config-generator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fiwizard7%2Fnginx-config-generator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiwizard7%2Fnginx-config-generator/lists"}