Lançamento da plataforma de desenvolvimento colaborativo Kallithea 0.5

Introduzido lançamento de um sistema de gerenciamento de repositório Caliteia 0.5, baseado entusiastas e representantes da Software Freedom Conservancy, a fim de continuar o desenvolvimento da base de código livre RhodeCode, após transformações esta plataforma em um produto comercial semi-proprietário. Kallithea permite implantar uma infraestrutura de gerenciamento de desenvolvimento que suporta sistemas de controle de versão Git e Mercurial e é semelhante em tarefas ao GitHub, GitLab e Bitbucket. O código do projeto é escrito em Python e distribuído por licenciado sob GPLv3.

Kallithea inclui um servidor de alto desempenho para processar solicitações push/pull e uma interface web para organizar o desenvolvimento colaborativo, que permite gerenciar repositórios, compartilhar direitos de acesso, revisar código, rastrear a atividade de outros participantes, bifurcar projetos, enviar solicitações pull ou altere o código para colocar, através de um editor simples. A integração com um banco de dados centralizado de usuários corporativos baseado em LDAP ou ActiveDirectory é suportada. A criação de grupos de repositórios e grupos de desenvolvedores com gerenciamento unificado dos membros do grupo é suportada. A aparência da interface pode ser facilmente alterada através do sistema de templates. É suportada uma representação visual da atividade na forma de gráficos. O sistema de revisão de alterações oferece suporte à discussão de alterações e ao envio de notificações.

A parte do servidor da plataforma é multithread, o que permite atender simultaneamente várias solicitações pull/push. Para aumentar o desempenho, o sistema usa ativamente o cache e executa ações no modo assíncrono. O sistema possui ferramentas de backup integradas que permitem arquivar e salvar periodicamente uma cópia de todos os dados via “scp”. Para rastrear atividades em repositórios, é suportada uma camada especial que mantém um registro de todas as solicitações e permite que cada solicitação seja autenticada. Uma biblioteca é usada para trabalhar com repositórios vc, os metadados do projeto podem ser armazenados em SQLite, PostgreSQL ou outros bancos de dados suportados pelo SQLAlchemy.

Grandes mudanças:

  • É possível acessar o repositório usando SSH usando uma URL como “ssh://[email protegido]/nome/de/repositório". A autenticação ao acessar um repositório via SSH é baseada na chave pública do usuário (com ou sem proteção adicional por senha da chave, dependendo da preferência do usuário). O upload da chave (~/.ssh/id_rsa.pub) para o servidor é realizado através da interface web do Kallithea, que automatiza o salvamento da chave no arquivoauthorized_keys. Nota-se que o desempenho de trabalhar com o repositório via SSH é maior do que ao acessar o repositório via HTTPS.
  • Adicionado suporte para sistema de controle de versão distribuído Mercurial 5.2.
  • A função “Admin > Configurações > Visual > (HTTP) Clone URL” foi reformulada, cujo manipulador agora verifica explicitamente a presença das strings “{repo}” e “_{repoid}”.
  • O sistema de direitos de acesso foi limpo - os direitos de acesso são sempre considerados apenas como adicionais, ou seja, é garantido que qualquer usuário terá pelo menos os mesmos direitos que o usuário padrão.
  • O suporte para a configuração api_access_controllers_whitelist foi removido do arquivo de configuração. A autenticação por meio de uma chave de acesso de API agora concede automaticamente acesso a todas as APIs permitidas ao usuário.
  • O suporte para Python 2.6 foi descontinuado. Atualmente apenas o branch Python 2.7 é suportado, mas os desenvolvedores estão trabalhando para fornecer suporte completo para Python 3.x.
  • A função de bloqueio do repositório (pull-to-lock, push-to-unlock) foi removida.

Fonte: opennet.ru

Adicionar um comentário