{"id":25812143,"url":"https://github.com/bulletdev/infra-automation","last_synced_at":"2025-11-22T15:03:07.292Z","repository":{"id":279558746,"uuid":"937871416","full_name":"Bulletdev/infra-automation","owner":"Bulletdev","description":"Automação de infra com Perl e golang","archived":false,"fork":false,"pushed_at":"2025-02-24T03:33:44.000Z","size":9,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-26T07:51:26.576Z","etag":null,"topics":["devops","go","perl","prometheus","svelte"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Bulletdev.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}},"created_at":"2025-02-24T03:33:06.000Z","updated_at":"2025-02-24T03:38:10.000Z","dependencies_parsed_at":"2025-02-26T07:51:27.989Z","dependency_job_id":"229f9332-5e0b-4e8b-8cb2-0a88cfbc4138","html_url":"https://github.com/Bulletdev/infra-automation","commit_stats":null,"previous_names":["bulletdev/infra-automation"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bulletdev%2Finfra-automation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bulletdev%2Finfra-automation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bulletdev%2Finfra-automation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bulletdev%2Finfra-automation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Bulletdev","download_url":"https://codeload.github.com/Bulletdev/infra-automation/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241084692,"owners_count":19907171,"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":["devops","go","perl","prometheus","svelte"],"created_at":"2025-02-28T01:24:46.123Z","updated_at":"2025-11-22T15:03:02.274Z","avatar_url":"https://github.com/Bulletdev.png","language":"Go","readme":"# 🏗️ Ferramenta de Automação de Infraestrutura\n\n\u003cdiv align=\"center\"\u003e\n\n![Versão](https://img.shields.io/badge/versão-1.0.0-blue.svg)\n![Licença](https://img.shields.io/badge/licença-MIT-green.svg)\n![Status](https://img.shields.io/badge/status-em%20desenvolvimento-yellow.svg)\n\n\u003c/div\u003e\n\n## 📋 Índice\n\n- [Sobre](#-sobre)\n- [Tecnologias](#-tecnologias)\n- [Requisitos](#-requisitos)\n- [Instalação](#-instalação)\n- [Configuração](#-configuração)\n- [Uso](#-uso)\n- [API](#-api)\n- [Scripts](#-scripts)\n- [Contribuição](#-contribuição)\n- [Licença](#-licença)\n\n## 💡 Sobre\n\nEsta ferramenta  combina a eficiência do Go com a versatilidade do Perl para criar uma solução robusta de gerenciamento de servidores e serviços.\n\nA interface web amigável, construída com Svelte, proporciona uma experiência intuitiva para operações de infraestrutura.\n\n## 🛠 Tecnologias\n\n- **Backend**: Go 1.21+\n- **Scripts**: Perl 5.32+\n- **Frontend**: Svelte 4\n- **API**: Gin Framework\n- **Monitoramento**: Prometheus\n- **Logging**: Loki\n\n## 📋 Requisitos\n\n- Go 1.21 ou superior\n- Perl 5.32 ou superior\n- Node.js 18+ e npm\n- Docker (opcional)\n\n## 🚀 Instalação\n\n```bash\n# Clone o repositório\ngit clone https://github.com/bulletdev/infra-automation.git\ncd infra-automation\n\n# Instale as dependências do Go\ngo mod download\n\n# Instale os módulos Perl necessários\ncpan install JSON\ncpan install Getopt::Long\n\n# Instale as dependências do frontend\ncd frontend\nnpm install\n```\n\n## ⚙ Configuração\n\n1. **Configuração do Backend**\n\n```bash\n# Crie o arquivo de configuração\ncp config.example.yaml config.yaml\n\n# Ajuste as variáveis de ambiente\nexport INFRA_API_PORT=8080\nexport PERL_SCRIPTS_PATH=/path/to/scripts\n```\n\n2. **Configuração dos Scripts**\n\n```bash\n# Dê permissão de execução aos scripts Perl\nchmod +x scripts/*.pl\n\n# Configure o path dos scripts no config.yaml\nscripts_path: /path/to/scripts\n```\n\n## 📦 Uso\n\n1. **Inicie o Backend**\n\n```bash\ngo run main.go\n```\n\n2. **Inicie o Frontend**\n\n```bash\ncd frontend\nnpm run dev\n```\n\n3. **Acesse a Interface**\n\nAbra seu navegador e acesse `http://localhost:5173`\n\n## 🔗 API\n\n### Endpoints\n\n| Método | Endpoint | Descrição |\n|--------|----------|-----------|\n| GET | `/health` | Verificação de saúde da API |\n| POST | `/execute` | Executa scripts de automação |\n\n### Exemplo de Requisição\n\n```json\n{\n  \"script_name\": \"check_status.pl\",\n  \"parameters\": {\n    \"action\": \"check_status\",\n    \"target\": \"server1.example.com\",\n    \"verbose\": \"1\"\n  }\n}\n```\n\n## 📜 Scripts\n\n### Scripts Disponíveis\n\n- `check_status.pl`: Verifica o status de servidores\n- `deploy_app.pl`: Automatiza deploy de aplicações\n- `backup_data.pl`: Realiza backup de dados\n\n### Exemplo de Uso Direto\n\n```bash\n./scripts/check_status.pl --action check_status --target server1.example.com --verbose\n```\n\n## 🤝 Contribuição\n\n1. Faça um Fork do projeto\n2. Crie sua Feature Branch (`git checkout -b feature/AmazingFeature`)\n3. Commit suas mudanças (`git commit -m 'Add some AmazingFeature'`)\n4. Push para a Branch (`git push origin feature/AmazingFeature`)\n5. Abra um Pull Request\n\n## 📄 Licença\n\nEste projeto está sob a licença MIT. Veja o arquivo [LICENSE](LICENSE) para mais detalhes.\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\nDesenvolvido com ❤️ pelo melhor devops da Bahia\n\n[Reportar Bug](https://github.com/bulletdev/infra-automation/issues) · [Solicitar Feature](https://github.com/bulletdev/infra-automation/issues)\n\n\u003c/div\u003e","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbulletdev%2Finfra-automation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbulletdev%2Finfra-automation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbulletdev%2Finfra-automation/lists"}