Archive for the ‘trac’ category

Script Simples de Backup do Servidor Trac e Subversion

July 23rd, 2008

Existem várias estratégias possíveis de backup do servidor do Trac e do Subversion, mas executar o backup diretamente sobre os repositórios não é a melhor alternativa. Para os repositórios do Subversion usando o formato FSFS, um backup direto até funciona, mas para o Trac, que usa um banco de dados internamente, o backup pode acabar pegando o banco de dados em um estado intermediário e depois haverá problemas para restaurá-lo.

A estratégia usada no script mostrado neste artigo é criar uma cópia dos repositórios em um lugar específico e aí sim, esse lugar específico deverá usado para fazer o backup total dos repositórios.

Tanto o Trac quanto o Subversion possuem comandos administrativos para criar uma hotcopy, isto é, uma cópia do repositório enquanto o original ainda está em uso. Este comando executa automaticamente todo o procedimento para eliminar quaisquer inconsistências que poderiam ser produzidas durante a cópia de um repositório em uso.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#!/usr/bin/python
# -*- coding: utf-8 -*-

import os
import shutil

def limpa_diretorio_backup(diretorio):
    if os.path.exists(diretorio):
        print 'rm -rf %s' % diretorio
        shutil.rmtree(diretorio)
    print 'mkdir %s' % diretorio
    os.mkdir(diretorio)

def hotcopy(diretorio_origem, diretorio_destino, comando_hotcopy):
    limpa_diretorio_backup(diretorio_destino)
    for nome_repos in os.listdir(diretorio_origem):
        caminho_repos = os.path.join(diretorio_origem, nome_repos)
        if not os.path.isdir(caminho_repos):
            continue
        destino_repos = os.path.join(diretorio_destino, nome_repos)
        print comando_hotcopy % (caminho_repos, destino_repos)
        os.system(comando_hotcopy % (caminho_repos, destino_repos))

diretorio_repos_svn   = '/srv/svn'
diretorio_backup_svn  = '/srv/backup/svn'
svnadmin_hotcopy      = 'svnadmin hotcopy %s %s'

diretorio_env_trac    = '/srv/trac'
diretorio_backup_trac = '/srv/backup/trac'
trac_admin_hotcopy    = 'trac-admin %s hotcopy %s'

hotcopy(diretorio_repos_svn, diretorio_backup_svn, svnadmin_hotcopy)
hotcopy(diretorio_env_trac, diretorio_backup_trac, trac_admin_hotcopy)

Treinamento em São Paulo de Gerência de Configuração de Software – Agosto

July 1st, 2008

Estão abertas as inscrições para o próximo treinamento em Gerência de Configuração de Software com as ferramentas open source Trac e Subversion que acontecerá em São Paulo, nos dias 04, 05 e 06 de agosto.

São 24hs de treinamento divididos em dois módulos (Básico e Avançado) que cobrem inúmeras tarefas cotidianas e avançadas de gerência de configuração voltadas para desenvolvedores, testadores e líderes de projeto.

A novidade dessa nova turma fica por conta da utilização das versões recém-lançadas do Trac (0.11) e do Subversion (1.5), que trazem novas funcionalidades tais como configuração do workflow e rastreamento automático de mesclagens respectivamente.

Para mais informações sobre preço, local e inscrições, consulte os links:

Faça já sua inscrição! Vagas limitadas!

O que você quer que o Trac tenha nas próximas versões?

June 25th, 2008

Agora você já pode contribuir diretamente no projeto do Trac com sua opinião, votando nas funcionalidades mais desejadas. Com essas informações, vai ser mais fácil ouvir a comunidade de desenvolvedores, administradores e usuários do Trac e atender esses desejos.

Atenção: antes de votar, é preciso se registrar com nome e e-mail no site. Use a página de preferências do projeto do Trac para isto. Votações anônimas não serão contabilizadas.

A votação não é simplesmente acessar um formulário de enquete, escolher uma opção e clicar. Há duas maneiras de votar:

  1. Existe esta página reservada para receber votos. Para demonstrar sua preferência em determinado Plugin ou funcionalidade que gostaria que fosse incorporado ao núcleo central do Trac, é necessário editar manualmente e incrementar o contador para um plugin já registrado, ou cadastrar a funcionalidade desejada.
    A edição é manual mesmo, e é preciso saber um pouco de formatação wiki para mexer. Se precisar de alguma ajuda para mexer na página, entre em contato conosco.
  2. Votar em um ticket já cadastrado que descreve a funcionalidade desejada ou o problema a ser resolvido. Vá para a página do ticket e use as setas que estão no canto superior direito da página (veja a figura abaixo). A lista dos tickets mais votados está disponível através deste relatório.

votação em ticket

Fazendo um Lobby :o )

Na página reservada para receber votos eu votei/sugeri no seguinte:

  • IniAdminPlugin: Este plugin permite editar o arquivo de configuração do Trac (trac.ini) diretamente pela interface web.
  • Tags: Permite associar tags às páginas wiki. O que facilita muito depois organizar as páginas de maneiras diferentes. Temos usado muito nas nossas consultorias, na definição dos processos de Gerência de Configuração.
  • Wygiwys (What you get is what you see): Torna a criação e edição de páginas wiki mais fácil através de um editor visual mais amigável.
  • Usage Statistics: Mostra gráficos de atividade no projeto. Produz informação gerencial interessante.

As outras opções sugeridas também são muito interessantes.

Os tickets que eu votei são:

  • #710 – Rastreamento de tempo. Pedido para registrar tempo gasto/estimado de cada ticket.
  • #130 – Suporte a vários projetos. Usar um Trac só para controlar vários projetos ao mesmo tempo.
  • #31 – Mostrar a relação e/ou dependência entre tickets. É possível fazer isso usando TracLinks, mas seria melhor deixar isso automático.
  • #1 – Mostrar um resumo do projeto com tickets abertos, milestones, tickets associados ao usuário logado etc.

Participe você também!

Lançado Trac 0.11

June 23rd, 2008

Depois de muito tempo de espera, finalmente está lançado oficialmente o Trac 0.11. Houve várias novas funcionalidades, correções e melhorias internas e externas. Já adiantando o final da história, para quem ainda não atualizou, vale a pena a migração para esta nova versão.

As principais mudanças foram:

  • Configuração do fluxo de trabalho (workflow) que permite que o ciclo de vida do ticket seja ajustado de acordo com a necessidade da equipe e/ou do projeto.
  • Controle mais apurado das permissões de acesso.
  • WebAdmin passa a ser parte integrante do Trac, facilitando a tarefas de administração do ambiente do projeto. Antes, o WebAdmin precisava ser instalado como um plugin. Devido ao seu sucesso e utilidade, foi incorporado diretamente ao núcleo central do Trac. Outros plugins disponíveis vão ser incorporados também nas próximas versões do Trac.
  • Uso do Pygments como padrão para colorir sintaxe de código fonte (usado na visualização do conteúdo de repositório e em outras partes do Trac). Pygments é uma biblioteca totalmente feita em Python (o Trac também é feito em Python), fácil de usar e estender que as opções anteriores (SilverCity e Enscript).
  • Melhoria da visualização do repositório.
  • Novo mecanismo de template para as páginas (Genshi).

Nos próximos posts, vou comentar em mais detalhes algumas dessas novas funcionalidades e mudanças. Mas para quem já quer pesquisar um pouco mais, as notas dessa nova revisão estão disponíveis (em inglês) na página http://trac.edgewall.org/wiki/TracDev/ReleaseNotes/0.11

Instalação

O modo de instalar o Trac mudou. Antes, era necessários usar os pacotes de instalação específico do sistema operacional e da versão. A instalação no Windows era particularmente trabalhosa pois envolvia a instalação de um conjunto de pacotes em uma determinada ordem.

A partir da versão 0.11, o Trac é instalado através do setuptools. Isso significa que basta usar o comando:

easy_install Trac

Todas as dependências do Trac serão instaladas automaticamente e na ordem correta.

Lembre-se que antes de atualizar a instalação, é sempre prudente fazer um backup de todos os ambientes do Trac.

Suporte Técnico

A Pronus oferecer serviço de suporte técnico especializado em Trac e Subversion para tarefas de:

  • Implantação
  • Configuração
  • Atualização e migração
  • Diagnósticos
  • Solução de problemas e dúvidas

Treinamento de Gerência de Configuração de Software com Trac e Subversion em Julho em São Paulo

June 4th, 2008

Está marcada para a primeira semana de julho, em São Paulo , a próxima turma do treinamento em Gerência de Configuração de Software com as ferramentas open source Trac e Subversion.

São 24hs de treinamento divididos em dois módulos (Básico e Avançado) que cobrem inúmeras tarefas cotidianas e avançadas de gerência de configuração voltadas para desenvolvedores, testadores e líderes de projeto.

A novidade dessa nova turma fica por conta da utilização das versões recém-lançadas do Trac (0.11) e do Subversion (1.5), que trazem novas funcionalidades tais como configuração do workflow e rastreamento automático de mesclagens respectivamente.

Para mais informações sobre preço, local e inscrições, consulte os links: