Developers: | STC IT Rosa |
Last Release Date: | April, 2013 |
Technology: | Development tools of applications |
In April, 2012 the ROSA company announced release of the beta of a system of the development of the open source ROSA ABF allowing to provide continuous development of popular distribution kits of free operating systems and application programs for them in a unified environment. Source codes of the project are available on the terms of license GPL v2.
ROSA ABF (Automatic Build Farm) is a unified environment of development for different distribution kits of the open source. Unlike analogs which work only with a limited set of operating systems based on Linux ROSA ABF allows developers to develop distribution kits practically on all existing package bases (Red Hat, Debian, OpenSuse, Ubuntu, Mandriva, ROSA, Alt Linux and dr).
Emergence of ROSA ABF is a logical development of ideology of development environments and assembly of the open source. Withdrawal from specialization policy on one distribution kit of Open Source and its derivatives and, as a result, creation of the mechanism of the automated approval of dependences at repacket assembly is the cornerstone of a system. It gives to developers confidence that available to them within ROSA ABF the softwares basic components are collected without the conflicts with each other. What increases quality of the developed software in general and allows significantly reduce t time and expenses on new product development.
The ROSA ABF project actively develops since 2010. In 2011 the first working results were handed over to the Ministry of Telecom and Mass Communications of the Russian Federation as a prototype of software development environment within the first stage on creation of the National software platform.
ROSA Automatic Build Farm (ABF) 2.0
A system received more than 100 different improvements which will help developers and meynteyner to manage more effectively lifecycle of distribution kits (from creation of the source code before assembly of an ISO images).
Lately development of ROSA ABF goes in two main directions: expansion of functionality of storage system of the source code and development of a subsystem of packet assembly. Among the main innovations of version 2.0. it is possible to note the following functions:
- REST API. Thanks to REST API, everyone can use ABF as the platform for the applications and services and also to automate routine transactions. You can find documentation on REST API on the special website for developers: http://abf-doc.rosalinux.ru/.
- Pull Request. The Pull Request function allows to offer changes in a git-repository of other participants. After sending such request, all interested participants can see, discuss and, if necessary, edit the code. And the tool is effective for projects of any scale. To use Pull Request, make a clone (fork) of the project, make in it changes, and then offer them in the main branch, having created a request for inclusion of changes from the project. At the same time no rights to the main project are granted and it is not required.
- Line-by-line commenting of the code. As during operation with the code it is impossible to do without discussions, ABF 2.0 include support of Github Flavored Markdown — a simple language of a marking. Together with an opportunity to discuss each line of the code, it provides to development team the good tool for discussions.
- The tracker with reaction to change of the code. We mean display in a problem of the following of data by reaction to changes of the source code:
- information on the made changes in the source code if in Comita number of a task was specified;
- information on other tasks and change requests of the source code if in them referred to this.
Now in a task it is possible to see all information on it: discussions, Comitas, connected tasks and change requests of the source code (Pull Request).
- Git through ssh. Probably, the most anticipated ROSA ABF function. First, it saves the developer from need to enter the password for commission of each transaction. Secondly, lifts a limit for the volume of transmitted data. And, thirdly, it is classical option of work with a remote server of Git.
- Packet assembly subsystem. The updated subsystem got full support of packet assembly under different distribution kits and the raised security level. Implicit dependences between assemblies as for each of them the net virtual machine is used now were eliminated. New features on work with assembly tasks are also added and unification of working tools is carried out. Now it became possible to cancel already gathering a task and the autoupdated general log of process became available.
That else new in ROSA ABF 2.0:
- possibility of comparison of any kommit and branches in the web interface;
- mail notifications on different aspects of a system and flexible opportunities of setup of such notifications;
- mechanism of mass assemblies;
- 1 official and 2 unofficial console client;
- page of releases of the source code of the project;
- newsletters;
- enhanced capabilities at personal repositories;
- detailed technical documentation.
It is pleasant to establish the fact that the community regularly fills up an ecosystem of Automatic Build Farm with the new tools allowing to reduce significantly routine transactions and to obtain detailed data about a status of package base. For example:
- URPM-Repoclosure (is responsible for isolation of a repository on dependences);
- ABI Compliance Checker (analyzes compatibility of versions of C/C ++ libraries);
- Upstream Tracker (the instrument of monitoring and the analysis of libraries in Upstream);
- Updates Tracker (defines outdated packets on comparison with Upstream or other distribution kits);
- PkgDiff (shows changes in packets);
ROSA ABF 2.0 is the open project and we invite everyone to take part in it. Developers can use extensive documentation on a system.