Ir para o conteúdo
Mostrar cesto Esconder cesto
Tela cheia

Como fazer correção de Bug no CIRANDAS / NOOSFERO

15 de Março de 2013, 21:00 , por Daniel Tygel - 0sem comentários ainda | Ninguém está seguindo este artigo ainda.
Visualizado 611 vezes
O CIRANDAS é uma implementação da rede social NOOSFERO. Assim, alguns problemas encontrados no CIRANDAS também se repetem em outras implementações do NOOESFERO, dai quando resolvidos precisam ser compartilhados com toda a comunidade NOOSFERO.Esta é a coisa linda do Software Livre, todo mundo pode ajudar todo mundo na medida que resolve um problema e compartilha a solução. A lista [email protected] é local onde outros usuários NOOSFERO de outras implementações como STOA, PETROBRAS, SERPRO, SOFTWARELIVRE, etc podem fazer a discussão de 'como fazer a correção'. Assim, o processo de resolução de problemas fica ainda mais coletivo.
1. Pre-requsitos 
2. Correção de Bugs
3. Testando
4. Pedidos de Merge
5. Resumo Procedimentos
***
1. Pre-requisitos
1. 1 Instalação do CIRANDAS (noosfero-ecosol)
Antes de começar a correção de bugs certifique-se que você possui um ambiente CIRANDAS funcionando. Veja aqui como instalar o CIRANDAS em seu ambiente http://pontaopad.me/eita-cirandas-instalacao 
1. 2. Criação dos Repositórios
Devido a existirem correções próprias do NOOSFERO e outras especificas do CIRANDAS será preciso criar dois repositórios de desenvolvimento para cada desenvolvedor. Este procedimento pode parecer cansativo mas visa preservar a autonomia de cada ambiente. 
Em ambos os casos será preciso criar a chave rsa - leia aqui instruções https://help.github.com/articles/generating-ssh-keys
1.2.1 Github (noosfero-ecosol - https://github.com/CIRANDAS/noosfero-ecosol)
O CIRANDAS usa o repositório do GItHub. Crie um usuário lá e faça um fork do repositório noosfero-ecosol, criando um novo repositorio para o seu usuário. Neste fork serão commitados todas as corrções de bugs feitas por você. Será a partir deste repositório  que o Pull Request será solicitado, uma vez aceito o pull a correção é aplicada no branch oficial do CIRANDAS (master) e passa ser disponibilizada para toda a comunidade. 
1.2.2 Gitorious (noosfero - https://gitorious.org/noosfero/noosfero)
O repositório utilizado pelo o NOOSFERO é o Gitorious, faça um usuário lá e crie um fork do repositório noosfero. Neste fork serão commitados todas as resoluções de ActionItems feitas por você. Será também nele que o Merge Request será solicitado, para que a correção seja aplicada no branch oficial do NOOSFERO (master ou stable) e possa ser utilizada por toda a comunidade. 
obs: Há uma wiki na comunidade Noosfero com algumas instruções sobre este procedimento http://noosfero.org/Development/GettingStartedWithNoosferoDevelopment#Forking_at_Gitorious
1.3 Repositórios no GIT
    git remotes
    git remote add noosfero git://gitorious.org/noosfero/noosfero.git
    
    Ao final deve haver os seguintes repositórios, exceto caioformiga-noosfero e caioformiga-noosfero-ecolsol que devem ter o prefixo 'caioformiga' substituido pelo seu nome de repositório.
    
caioformiga-noosfero    [email protected]:~eitaformiga/noosfero/caioformiga-noosfero.git (fetch)
caioformiga-noosfero    [email protected]:~eitaformiga/noosfero/caioformiga-noosfero.git (push)
caioformiga-noosfero-ecosol     [email protected]:caioformiga/noosfero-ecosol.git 
(fetch)
caioformiga-noosfero-ecosol     [email protected]:caioformiga/noosfero-ecosol.git 
(push)
noosfero        git://gitorious.org/noosfero/noosfero.git 
(fetch)
noosfero        git://gitorious.org/noosfero/noosfero.git 
(push)
(fetch)
(push)
Para editar as url e nome dos repositório remotos acesse 
    vim .git/config
    
Para atualizar um repositório use o camando abaixo com o nome do repositório ou apenas o fetch para atualizar todos.
    git fetch noosfero
    git fetch 
****
2. Corrigindo o Bug
Primeiramente, acesse o sac http://sac.eita.org.br:8080/rt/ para ver os bugs reportados por usuários CIRANDAS, seja nas listas de discussão ou outros canais de ouvidoria para problemas, como o forum de ajuda (http://cirandas.net/ajuda)
Utilizamos as reuniões da Equipe CIRANDAS Manutenção para eleger prioridades na correção de bugs, porém caso todos os itens elencados estejam finalizados é importante consultar outro membro da equipe e definir o que fazer juntos. 
ATENÇÃO: Nem sempre um problema reportado é um bug, avalie com cuidado o problema e tente repetir o caminho até o erro em diferentes ambientes, como seu ambiente local e o bhakta.
Uma vez definido qual o bug a será corrigido, vamos criar um item de ação ou desenvolvimento, um ActionItem. O NOOSFERO utiliza o Foswiki para gerenciar pedidos de correção. Crie um usuário lá. Cada correção de bug deve vir acompanhada da criação de um ActionItem. Uma vez no Foswiki, acesse http://noosfero.org/Development/BugItem e utilize a sessão Create New BugItem, informando o título do bug, depois aperte CREATE. Será gerado um ActionItem com um número. 
Agora no SAC da EITA entre no ticket correspondente e altere o responsável, o status e adicione o numero do ActionItem recém criado. Para fazê-lo, cesse um ticket e clique em Basic no menu superior direito que vai possibilitar editar o ticket, coloque você como responsável e open como status. 
DICA: Utilizamos a ideia de programação em pares com bastante frequência, principalmente no ínicio. Uma vez com acesso ao bhakta use ssh [email protected], será solicitada um password que é a senha de seu usuário no servidor bhakta. Entre em contato caso não tenha acesso. O importante é estar em um abiente de desenvolvimento devidamente configurado.
Uma vez no ambiente de desenvolvimento, use o numero do AI gerado para criação do branch de desenvolvimento em seu ambiente. Acesse a pasta do noosfero-ecosol no ambiente de desenvolvimento crie o referido branch a partir de um branch estavel do noosfero 
    git fetch noosfero
    g co noosfero/master -b ai2603
Tutorial do Git
Comece a codificação! 
Em breve dicas sobre o VIM o SCREEN e DEPURAÇÃO
5. Procedimento Resumido
  • 2. A equipe de Manutenção de Bugs deve olhar a lista de tickets abertos e avaliar cada caso, para saber se o comportamento está correto, se foi uma sugestão de nova funcionalidade ou se foi um bug de fato, neste caso deve ser criado um ActionItem no Foswiki do Noosfero
  • 4. Em alguns casos será preciso dialogr com a comunidade Noosfero para pensar uma solução estrutural, quando for necessaŕio enviar e-mail para [email protected]
  • 5. Iniciar a correção do bug.
  • 5.1 codigo estável do Noosfero, que será o branch base 
  •     g co noosfero/master -b ai2603
  • 6. Quando resolvido realizar um pull quest no github (noosfero-ecosol)
  • 7. Realiza um merge request no gittourious (noosfero)

0sem comentários ainda

    Enviar um comentário

    Os campos são obrigatórios.

    Se você é um usuário registrado, pode se identificar e ser reconhecido automaticamente.

    Cancelar