Proposta de organiza\xE7\xE3o do s\xEDtio de desenvolvimento

Esta proposta versa sobre o procedimento de manipula\xE7\xE3o do s\xEDtio de desenvolvimento. Ela \xE9 uma proposta ligada ao Grupo de Trabalho do MIR/Daileon.

\xCDndice

Proposta

O/A volunt\xE1rio/a que tiver sua conta shell dever\xE1 seguir os seguintes passos para trabalhar com o s\xEDtio de desenvolvimento

  • O/A vonlunt\xE1rio/a baixa (para o s\xEDtio de desenvolvimento) os templates do reposit\xF3rio do CMI-Brasil[1] e vai trabalhando nas configura\xE7\xF5es do site de desenvolvimento. Este "download" \xE9 feito usado um sistema de controle de vers\xE3o sobre o qual \xE9 bom que o/a tech tenha conhecimento. Desta maneira, as altera\xE7\xF5es feitas podem ser facilmente desfeitas (apagando o diret\xF3rio criado no momento do "checkout").

  • Quando a pessoa finalizou o que tinha para fazer, limpa tudo o que fez, baixa os templates oficiais do CMI e roda o ant para deixar o s\xEDtio de desenvolvimento com o mesmo comportamento do s\xEDtio do CMI.

  • Durante esse procedimento, \xE9 recomendado que a pessoa esteja no canal #brasil-tech informando que est\xE1 mexendo no s\xEDtio de desenvolvimento, para evitar que duas pessoas mexam ao mesmo tempo no dev.midiaindependente.org de forma concorrente.

Os/As novos/as volunt\xE1rios/as n\xE3o ter\xE3o acesso de escrita ao reposit\xF3rio de templates e por isso ter\xE3o que editar os arquivos do s\xEDtio de desenvolvimento no servidor. Dessa forma, suas modifica\xE7\xF5es n\xE3o ser\xE3o salvas e o s\xEDtio de desenvolvimento ter\xE1 sempre o aspecto do s\xEDtio do CMI, o que possibilita:

  • Que as pessoas possam treinar as configura\xE7\xF5es do MIR sem se preocupar em causar alguma modifica\xE7\xE3o no s\xEDtio do CMI.

  • Que todo/a volunt\xE1rio/a que estiver treinando MIR come\xE7ar\xE1 seu trabalho a partir da configura\xE7\xE3o usada no s\xEDtio do CMI, o que n\xE3o impede que cada volunt\xE1rio guarde uma c\xF3pia das suas modifica\xE7\xF5es em sua pasta pessoal.

Scripts

Um conjunto de scripts foi escrito para auxiliar a utiliza\xE7\xE3o do s\xEDtio de desenvolvimento. At\xE9 a data em que isto foi escrito (12/2006), esses scripts se encontravam num reposit\xF3rio tempor\xE1rio (caso contr\xE1rio, atualize esta documenta\xE7\xE3o). Tal conjunto \xE9 constitu\xEDdo pelos seguintes scripts:

  • rebuild: reconstr\xF3i o s\xEDtio de desenvolvimento (mas sem mexer no banco de dados)
  • reload: recarrega a aplica\xE7\xE3o do s\xEDtio de desenvolvimento no tomcat
  • produce: enfileira tarefas no mir do s\xEDtio de desenvolvimento

Esses scripts devem ficar em algum local do servidor (neste exemplo, assumiremos que eles estejam em /home/dev/bin). Se eles ainda n\xE3o estiverem instalados, use os seguintes comandos:

mkdir -p /home/dev
cd /home/dev
svn checkout svn://svn.sarava.org/daileon/dev
mv dev bin

Por padr\xE3o, esses scripts usam um config.properties armazenado em /root/dev/config.properties.dev e que cont\xE9m as configura\xE7\xF5es do s\xEDtio de desenvolvimento. Quando o s\xEDtio de desenvolvimento for reconstru\xEDdo, o script rebuild apagar\xE1 a pasta /var/www/dev/ e construir\xE1 uma nova \xE1rvore do MIR a partir desse arquivo de configura\xE7\xE3o.

Como os/as usu\xE1rios do s\xEDtio de desenvolvimento ser\xE3o novos/as volunt\xE1rios, n\xE3o \xE9 interessante que elas/eles

  • Tenham acesso irrestrito ao servidor e possam rodar qualquer comando
  • Tenham permiss\xE3o de leitura ao arquivo /root/dev/config.properties.dev para que assim n\xE3o tenham acesso direto ao banco de dados do s\xEDtio de desenvolvimento.

Por isso, \xE9 interressante restringir os comandos que o/a usu\xE1rio podem executar. Isso \xE9 feito atrav\xE9s do sudoers, primeiramente adicionando as seguintes entradas:

Cmnd_Alias RELOAD_DEV = /home/dev/bin/reload
Cmnd_Alias REBUILD_DEV = /home/dev/bin/rebuild
Cmnd_Alias PRODUCE_DEV = /home/dev/bin/produce

Para que o usu\xE1rio usuario possa executar os comandos acima, adicione uma entrada para ele no sudoers:

usuario ALL=(ALL) RELOAD_DEV, REBUILD_DEV, PRODUCE_DEV

Assim, o usu\xE1rio usuario poder\xE1 reconstruir o s\xEDtio de desenvolvimento com o comando

sudo /home/dev/bin/rebuild

Para que o usu\xE1rio possa enfileirar conte\xFAdo no s\xEDtio de desenvolvimento, basta usar o script produce. Por exemplo, para requisitar a gera\xE7\xE3o de uma p\xE1gina inicial do s\xEDtio de desenvolviment, usa-se o comando

sudo /home/dev/bin/produce startpage generate

Detalhes da produ\xE7\xE3o de conte\xFAdo via script podem ser encontrados aqui.

Finalmente, a recarga da parte din\xE2mica do s\xEDtio de desenvolvimento podem ser feitas simplesmente com o comando

sudo /home/dev/bin/reload

-- SilvioRhatto - 15 Dec 2006
Topic revision: r2 - 13 Sep 2007, AlsteR
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback