{"id":22809024,"url":"https://github.com/ccuffs/deploy-sites-pessoais","last_synced_at":"2025-07-04T09:07:54.229Z","repository":{"id":37789667,"uuid":"328638181","full_name":"ccuffs/deploy-sites-pessoais","owner":"ccuffs","description":"Sistema para deploy dos sites pessoais de alunos e professores na página do curso.","archived":false,"fork":false,"pushed_at":"2022-06-16T21:17:04.000Z","size":42,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-30T21:17:45.904Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ccuffs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE-OF-CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-01-11T11:12:28.000Z","updated_at":"2022-06-16T21:17:08.000Z","dependencies_parsed_at":"2022-06-23T21:09:18.103Z","dependency_job_id":null,"html_url":"https://github.com/ccuffs/deploy-sites-pessoais","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":"ccuffs/template","purl":"pkg:github/ccuffs/deploy-sites-pessoais","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccuffs%2Fdeploy-sites-pessoais","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccuffs%2Fdeploy-sites-pessoais/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccuffs%2Fdeploy-sites-pessoais/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccuffs%2Fdeploy-sites-pessoais/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ccuffs","download_url":"https://codeload.github.com/ccuffs/deploy-sites-pessoais/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccuffs%2Fdeploy-sites-pessoais/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263480898,"owners_count":23473165,"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":[],"created_at":"2024-12-12T11:13:16.197Z","updated_at":"2025-07-04T09:07:54.169Z","avatar_url":"https://github.com/ccuffs.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003cimg width=\"400\" height=\"200\" src=\".github/logo.png\" title=\"Logo do projeto\"\u003e\u003cbr /\u003e\n    \u003cimg src=\"https://img.shields.io/maintenance/yes/2021?style=for-the-badge\" title=\"Status do projeto\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/workflow/status/ccuffs/template/ci.uffs.cc?label=Build\u0026logo=github\u0026logoColor=white\u0026style=for-the-badge\" title=\"Status do build\"\u003e\n\u003c/p\u003e\n\n# Sobre\n\nEsse repositório contém os códigos e scripts utilizados para fazer deploy dos [sites pessoais](https://cc.uffs.edu.br/sites) do curso de [Ciência da Computação](https://cc.uffs.edu.br) da [Universidade Federal da Fronteira Sul](https://www.uffs.edu.br). A gerência de quais sites existem e suas propriedades (url, etc) são manuseadas no [portal de intranet do curso](https://cc.uffs.edu.br/intranet), cujo código está no repositório [ccuffs/intranet](https://github.com/ccuffs/intranet).\n\n\u003e ***IMPORTANTE:*** se você quer apenas utilizar os sites do curso, ex.: ter um site pessoal, veja a documentação em [cc.uffs.edu.br/sites](https://cc.uffs.edu.br/sites).\n\n## Utilização\n\n### 1. Pré-requisitos\n\nPara rodar os scripts desse repositório, você precisa ter o [git](https://git-scm.com/), [php](https://php.net) e o [composer](https://getcomposer.org/) disponível na linha de comando.\n\n### 2. Preparando tudo\n\nClone o repositório\n\n```\ngit clone https://github.com/ccuffs/deploy-sites-pessoais \u0026 cd deploy-sites-pessoais\n```\n\nInstale as dependências\n\n```\ncomposer install\n```\n\nSe estiver em um ambiente Linux, certifique-se de dar permissão de execução para os arquivos `.php` na raiz do projeto:\n\n```\nchmod +x *.php\n```\n\n### 3. Rodando o script\n\nTodas as opções do script podem ser vistas com a flag `--help`, basta rodar:\n\n```\nphp deploy-sitescc.php --help\n```\n\nSe você estiver apenas testando alguma funcionalidade do script, você pode rodá-lo sem muitos problemas. Execute:\n\n```\nphp deploy-sitescc.php\n```\n\nNesse caso, o script rodará utilizando o arquivo [input-list-exemplo.json](input-list-exemplo.json) como fonte de conteúdo.\nPara rodar o script em um ambiente de produção, você utilizará algo como o seguinte:\n\n```\nphp deploy-sitescc.php --input-list=\"https://cc.uffs.edu.br/intranet/api/sites/list.json\" --output-dir=\"/var/www/sites\" --control-dir=\"/var/www/sites/api/status\"\n```\n\n## Utilização em produção\n\nA utilização desse repositório em produção está intrincicamente ligada ao portal de intranet do curso. Na máquina que rodará esse script (e hospedará os sites), você precisa do seguinte:\n\n* Servidor web para servir as páginas.\n* Pasta web acessível através da URL `/api/status`, por exemplo `/var/www/sites/api/status`. O caminho para essa pasta deve ser utilizado na flag `--control-dir` do script `deploy-sitescc`.\n\nO recomendado é rodar os script de atualização de sites no cron, por exemplo, a cada 15 minutos. Para isso, rode:\n\n```\ncrontab -e\n```\n\nDepois adicione a seguinte linha:\n\n```cron\n*/15 * * * * /usr/bin/php /home/fernando/www/deploy-sites-pessoais/deploy-sitescc.php --input-list=\"https://cc.uffs.edu.br/intranet/api/sites/list.json\" --output-dir=\"/home/fernando/www/sites.cc.uffs.edu.br/public\" --control-dir=\"/home/fernando/www/sites.cc.uffs.edu.br/public/api/status\" \u003e\u003e /home/fernando/www/deploy-sites-pessoais/deploy-sitescc.log\n```\n\nPara reduzir a carga de processamento ou memória, pode-se usar `--batch-internval`, `--site-interval` e `--batch-size` ao rodar `deploy-sitescc`. Os valores default para essas flags são bem generosos.\n\n## Contribua\n\nSua ajuda é muito bem-vinda, independente da forma! Confira o arquivo [CONTRIBUTING.md](CONTRIBUTING.md) para conhecer todas as formas de contribuir com o projeto. Por exemplo, [sugerir uma nova funcionalidade](https://github.com/ccuffs/deploy-sites-pessoais/issues/new?assignees=\u0026labels=\u0026template=feature_request.md\u0026title=), [reportar um problema/bug](https://github.com/ccuffs/deploy-sites-pessoais/issues/new?assignees=\u0026labels=bug\u0026template=bug_report.md\u0026title=), [enviar um pull request](https://github.com/ccuffs/hacktoberfest/blob/master/docs/tutorial-pull-request.md), ou simplemente utilizar o projeto e comentar sua experiência.\n\nVeja o arquivo [ROADMAP.md](ROADMAP.md) para ter uma ideia de como o projeto deve evoluir.\n\n## Licença\n\nEsse projeto é licenciado nos termos da licença open-source [Apache 2.0](https://choosealicense.com/licenses/apache-2.0/) e está disponível de graça.\n\n## Changelog\n\nVeja todas as alterações desse projeto no arquivo [CHANGELOG.md](CHANGELOG.md).\n\n## Projetos semelhates\n\nAbaixo está uma lista de links interessantes e projetos similares:\n\n* [academicpages](https://github.com/academicpages/academicpages.github.io)\n* [Github Pages](https://pages.github.com)\n* [HTML5 Boilerplate](https://html5boilerplate.com)\n* [academic-responsive-template](https://github.com/dmsl/academic-responsive-template)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fccuffs%2Fdeploy-sites-pessoais","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fccuffs%2Fdeploy-sites-pessoais","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fccuffs%2Fdeploy-sites-pessoais/lists"}