Build Service
Origem: openSUSE, a enciclopédia livre.
Conteúdo |
Características
Acima descrevemos que o Serviço de Compilação é uma plataforma de desenvolvimento de distribuição completa fornecendo a infraestrutura requerida para o desenvolvimento de futuras distribuições baseadas em openSUSE.
Também oferece serviços que permitem a compilação e empacotamento para outras distribuições Linux, tais como Fedora, Debian, Ubuntu e muitas outras.
Utilizadores do openSUSE podem facilmente navegar pela interface web http://software.opensuse.org/ e transferir os últimos pacotes.
Interfaces abertas permitem serviços externos (ex: SourceForge) e páginas web para interagir com o Serviço de Compilação e os seus recursos.
Numa próxima fase, irá estar acessível a todos os utilizadores e terá tambem a oportunidade de criar outros alvos de compilação (ex: LSB, imagens Xen).
Vantagens
Para Programadores
- Não há necessidade de ter uma "fábrica de compilação" para diferentes hardwares de forma a compilar o pacote para diferentes arquitecturas.
- Produzir melhor software: alguns projectos de software ainda usam processos 16bit e questionam-se do porquê do seu código não compilar em plataformas 32bit ou 64bit.
- Resolução automática de dependências para outros pacotes. Se um pacote depender de outro pacote, esse pacote será chamado automaticamente a recompilar se o pacote-depentende for recompilado.
- Ligação para outros projectos: Correcções podem ser testadas com os novos pacotes de outros projectos. Por exemplo: um programador tem uma correcção para o Amarok e deseja testar num ambiente definido. Poderá criar uma ligação para o projecto KDE e usá-lo como ambiente para os seus próprios testes. O resultado: a versão corrigida do Amarok será sempre chamada a compilar quando o projecto KDE iniciar uma nova compilação.
Para Utilizadores
- Obtenha sempre as versões de software mais recentes para a sua distribuição. Através de um relacionamento de confiança no serviço de compilação, o utilizador pode declarar "Eu confio no Projecto xy" e pode posteriormente instalar pacotes apenas desse mesmo projecto.
- Obtenha actualizações de distribuições mais antigas. (Tipo obter o KDE 3.5.7 para o SL 10.0)
- Maior unificação entre diferentes distribuições. Pacotes do serviço de compilação podem juntar pessoas - por exemplo "Porquê que eles usam tais coisas? Porquê que usam estas directorias? - Eu também quero ter isso para a minha distribuição". (Mas isto é algo mais para o futuro... :-)
Como encontrar e instalar pacotes? Veja aqui.
Veja o video.
Para Distribuidores
- O Serviço de Compilação consegue criar uma distribuições completas ou alterar imagens facilmente de forma a serem usadas de diferentes maneiras. Uma primeira versão do Build_Service/KIWI/KIWI para criar imagens para arrancar via rede ou para ser utilizado como imagens Xen ou VMWare foi lançado.
Roteiro
Temos um Roteiro e também mantemos um registo de pequenas alterações assim como alguns Conceitos.
Como o usar
O serviço de compilação pode também ser usado pela Interface Web, pela Ferramenta de Linha de Comandos ou por outra qualquer ferramenta que use a API pública. Empacotadores podem ainda querer ler um tutorial de como empacotar para diferentes distribuições e o tutorial do Serviço de Compilação.
Por agora, só é dada uma conta a pessoas com experiência e a empacotadores conhecidos que conseguem lidar com o estado alpha do Serviço de Compilação. Para obter uma conta, por favor leia a secção notutorial do Serviço de Compilação.
Algumas sugestões podem ser encontradas no sítio Truques & Dicas do Serviço de Compilação
'Summer of the Code'
Existem inumeros projectos activos no Google Summer of the Code que têm como contexto o Serviço de Compilação do openSUSE:
Código Fonte do Serviço de Compilação
Repositório SVN
A fonte e documentação das ferramentas do Serviço de Compilação estão hospedadas em forge.novell.com. Este repositório contém as fontes das ferramentes de cliente assim como as fontes para os servidores.
Utilize este comando para transferir o códifo fonte actual: svn co https://forgesvn1.novell.com/svn/opensuse/trunk
Pacotes
Os pacotes estão por todo o lado no servidor de compilação, mas ainda não são totalmente prontos. Ainda há algum necessário antes que sejam declarados como terminados. Os pacotes podem ser encontrados no repositório openSUSE:/Tools. Procure por pacotes com o nome obs-* (openSUSE Build Server).
Como Contribuir
Tal como na maioria dos projectos de código aberto, comece por escrever correcções ou por escrever um conceito do que deseja desenvolver. As pessoas que provarem que são capazes de entregar o trabalho de código terão acesso de escrita do repositório SVN.
Existiram ainda projectos do Google Summer of Code no concurso do Serviço de Compilação do openSUSE:
Documentação
- O Tutorial do Serviço de Compilação mostra os primeiros passos para criar próprios projectos e pacotes.
- O Tutorial de Instalação do Serviço de Compilação explica como instalar o Serviço de Compilação num servidor local.
- Os Truques & Dicas explica algumas funcionalidades e truques.
- Poderá encontrar as últimas informações sítio das Notícias.
- Diponibilizamos duas palestras da FOSDEM sobre o Serviço de Compilação. A primeira palestra dá uma visão geral da ideia do Serviço de Compilação e a sua arquitectura. A segunda palestra descreve o modelo do projecto em detalhe e explica como construir para multiplas distribuições, incluíndo openSUSE, Fedora, Mandriva e Debian.
- Uma importante peça é a documentação para a API. A API é uma interface simples e genérica para trabalhar com o Serviço de Compilação. Poderá utilizá-la para integrar nas suas ferramentas para submeter actualizações de código, verificar o estado actual dos seus projectos ou fazer coisa qualquer diferente e diversita.
- Não gosta da nossa Interface Web ou da ferramenta de linha de comandos? Você poderá também melhorá-la ou escrever a sua própria. O código de ambos está disponível no repositório forge.
Contacto
Subscreva na lista de correio opensuse-buildservice (arquivo). Feedback é bem vindo, e ainda mais bem vindo são as correcções, novas ferramentas e ideias.
Alguns de nós estamos também pelo canal #openSUSE-buildservice na freenode.
A sua openSUSE Equipa do Serviço de Compilação
Clientes do Serviço de Compilação
A arquitectura baseada numa API REST permite escrever facilmente diferentes clientes. Isto dá-nos a oportunidade de manobrar melhor consoante as necessidades dos utilizadores com diferentes experiências. Os clientes podem ter diferentes ênfases em diferentes casos de utilização.
Cliente Web
Clientes de Linha de Comandos
Actualmente existem duas ferramentas de linha de comandos para o serviço de compilação. Ambas são descritas aqui:
Caso queira, se for um um programador do serviço de compilação, poderá estar interessado na utilização do resto da API do serviço de compilação directamente via curl

