{"id":21081972,"url":"https://github.com/tayron/git-deploy-shell-script","last_synced_at":"2026-04-13T01:37:02.286Z","repository":{"id":95258238,"uuid":"166445015","full_name":"tayron/git-deploy-shell-script","owner":"tayron","description":"Exemplo de script de deploy usando Shell Script","archived":false,"fork":false,"pushed_at":"2019-12-26T16:25:05.000Z","size":8,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-26T03:56:33.550Z","etag":null,"topics":["deployment-automation","git","php","shellscript"],"latest_commit_sha":null,"homepage":"","language":null,"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/tayron.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":"2019-01-18T17:09:16.000Z","updated_at":"2020-02-04T11:25:30.000Z","dependencies_parsed_at":"2023-03-13T16:52:35.443Z","dependency_job_id":null,"html_url":"https://github.com/tayron/git-deploy-shell-script","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tayron/git-deploy-shell-script","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tayron%2Fgit-deploy-shell-script","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tayron%2Fgit-deploy-shell-script/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tayron%2Fgit-deploy-shell-script/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tayron%2Fgit-deploy-shell-script/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tayron","download_url":"https://codeload.github.com/tayron/git-deploy-shell-script/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tayron%2Fgit-deploy-shell-script/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31736723,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-12T22:19:12.206Z","status":"ssl_error","status_checked_at":"2026-04-12T22:18:33.088Z","response_time":58,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: 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":["deployment-automation","git","php","shellscript"],"created_at":"2024-11-19T20:11:46.205Z","updated_at":"2026-04-13T01:37:02.264Z","avatar_url":"https://github.com/tayron.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Deploy com Git usando Shell Script\n\nAcesse a pasta **/var/www/html** do servidor de produção via ssh e clone seu projeto\n```ssh\ngit clone --branch=\"staging\" --depth 1 https://url-do-projeto-git-aqui\n```\n\nCrie um arquivo ssh chamado: **deploy_staging.sh** com o seguinte conteúdo:\n```ssh\n#!/bin/bash\n\nVERMELHO='\\033[0;31m'\nVERDE='\\033[0;32m'\nAZUL='\\033[0;34m'\nFIM_COR='\\033[0m'\n\ndir_www=\"/root/projetos/\"\ndir_project=\"site.com.br\"\n\nprintf ${VERDE}\necho \" ------------------------------------------------------- \"\necho \"|                                                       |\"\necho \"|                INICIO DO DEPLOY                       |\"\necho \"|                                                       |\"\necho \" ------------------------------------------------------- \"\nprintf ${FIM_COR}\n\necho\necho\nprintf ${VERDE}\"1) Removendo backup antigo\"${FIM_COR}\necho\nprintf ${AZUL}\nrm -rf \"${dir_www}${dir_project}_backup\"\nprintf ${FIM_COR}\necho\n\necho\nprintf ${VERDE}\"2) Realizando novo backup\"${FIM_COR}\necho\nprintf ${AZUL}\ncp -rf \"${dir_www}${dir_project}\" \"${dir_www}${dir_project}_backup\"\nprintf ${FIM_COR}\necho\n\necho\nprintf ${VERDE}\"3) Abrindo diretório: ${dir_www}${dir_project}\"${FIM_COR}\necho\nprintf ${AZUL}\ncd \"${dir_www}${dir_project}\"\nprintf ${FIM_COR}\necho\n\necho\nprintf ${VERDE}\"4) Atualizando repositório\"${FIM_COR}\necho\nprintf ${AZUL}\ngit reset --hard HEAD\ngit pull\nprintf ${FIM_COR}\necho\n\necho\nprintf ${VERDE}\"5) Copiando arquivo de configurações do backup para dentro do projeto\"${FIM_COR}\necho\nprintf ${AZUL}\ncp -rf \"${dir_www}${dir_project}_backup/app/config/database.php\" \"${dir_www}${dir_project}/app/config/database.php\"\ncp -rf \"${dir_www}${dir_project}_backup/app/config/app.php\" \"${dir_www}${dir_project}/app/config/app.php\"\nprintf ${FIM_COR}\necho\n\necho\nprintf ${VERDE}\"6) Instalando novas dependências\"${FIM_COR}\necho\nprintf ${AZUL}\ndocker exec -t container_name composer install\nprintf ${FIM_COR}\necho\n\necho\nprintf ${VERDE}\"7) Atualizando as tabelas do banco\"\necho\nprintf ${AZUL}\ndocker exec -t container_name php artisan migrate\nprintf ${FIM_COR}\necho\n\necho\nprintf ${VERDE}\"8) Atualizando serviço agendados: cron\"\necho\nprintf ${AZUL}\ndocker cp ${dir_www}${dir_project}/build/crontab container_name:/etc/crontab\ndocker exec -i container_name echo -en '\\n\\n' \u003e\u003e /etc/crontab\ndocker exec -i container_name crontab /etc/crontab\ndocker exec -i container_name crontab -l\ndocker exec -i container_name service cron status\nprintf ${FIM_COR}\necho\n\nprintf ${VERDE}\necho \" ------------------------------------------------------- \"\necho \"|                                                       |\"\necho \"|                   FIM DO DEPLOY                       |\"\necho \"|                                                       |\"\necho \"|                    ¯\\_(ツ)_/¯                         |\"\necho \"|                                                       |\"\necho \" ------------------------------------------------------- \"\nprintf ${FIM_COR}\n\n\n```\nCrie um arquivo ssh chamado: **deploy_revert.sh** com o seguinte conteúdo:\n```ssh\n#!/bin/bash\n\ndir_www=\"/var/www/html/\"\ndir_project=\"site\"\n\necho \" ------------------------------------------------------- \"\necho \"|                                                       |\"\necho \"|                INICIO DO REVERSAO                     |\"\necho \"|                                                       |\"\necho \" ------------------------------------------------------- \"\necho\necho\n\necho \"1) Removendo deploy atual\"\nsudo rm -rf \"${dir_www}${dir_project}\"\necho\n\necho \"2) Restaurando backup\"\necho\nsudo cp -rf \"${dir_www}${dir_project}_backup\" \"${dir_www}${dir_project}\"\necho\n\necho \"3) Abrindo diretório: ${dir_www}${dir_project}\"\ncd \"${dir_www}${dir_project}\"\n\necho \"4) Limpando cache\";\necho\nsudo ./clearCache.sh\necho\n\necho \"5) Dando permissões em todos os arquivos\"\necho\nsudo chmod 755 *\necho\n\necho \"6) Dando permissões nas pastas logs, tmp e uploads\"\necho\nsudo chmod 777 -R logs/\nsudo chmod 777 -R tmp/\nsudo chmod 777 -R webroot/uploads/\necho\n\necho \"7) Removendo permissão dos arquivos Shell Script\"\necho\nsudo chmod 760 *.sh\necho\n\necho \" ------------------------------------------------------- \"\necho \"|                                                       |\"\necho \"|                  FIM DA REVERSÃO                      |\"\necho \"|                                                       |\"\necho \"|                    ¯\\_(ツ)_/¯                         |\"\necho \"|                                                       |\"\necho \" ------------------------------------------------------- \"\n\n```\n\n## Utilização dos scripts\n\n###Exemplo de uso para efetuar deploy:\n\n```sh\nssh root@seusite.com.br \"./deploy_staging.sh\"\n\n```\n### Exemplo de uso para reverter o último deploy:\n\n```sh\nssh root@seusite.com.br \"./deploy_revert.sh\"\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftayron%2Fgit-deploy-shell-script","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftayron%2Fgit-deploy-shell-script","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftayron%2Fgit-deploy-shell-script/lists"}