Opening up LAVA development
============================

The LAVA software project has been developed in the open from its very beginning: Free Software licensing, public discussion spread across IRC and email, and open access to the software development repositories. The roadmap and planning behind LAVA development has also become increasingly open over time, with the use of publicly archived mailing lists and anonymous access to LAVA issue tracking.

A community of users and contributors has steadily grown up around LAVA. With the completion of the migration to the V2 codebase, the Linaro LAVA software team is now moving to a more open development model. We invite new and existing contributors to be directly involved in planning future development of the LAVA software project. To this end, Linaro has created the new LAVA Software Community Project (LSCP) to host and foster LAVA development with more input and control available to the community. This removes the need for contributors to register with Linaro, and provides much more flexibility for LAVA Software development.

The existing Linaro lab in Harston, UK, will remain entirely within Linaro, providing test infrastructure for Linaro and its members. The sole focus of the new community project will be LAVA software itself. This will allow the project to focus on priorities beyond just what Linaro needs, for example easier integration of devices and new/different use cases. The Linaro engineers working directly on LAVA software have migrated into a newly-formed Linaro LAVA Software Team and will act as the founding maintainers and contributors for the upstream LAVA Software Community Project. The Linaro LAVA Software Team will still retain access to the Linaro lab staging instance (https://staging.validation.linaro.org/) for functional testing using devices available within the Linaro lab.

A new home - https://www.lavasoftware.org

The LAVA Software Community Project (LSCP) has a new home at https://www.lavasoftware.org.
We have set up initial services there including:

https://www.lavasoftware.org/ - the main website

https://git.lavasoftware.org/ - a GitLab instance to which we have moved upstream LAVA development

https://master.lavasoftware.org/ - a LAVA master service, available for development use

Existing LAVA contributors will need to reconfigure their git checkouts accordingly. The new GitLab instance does not share credentials with the existing git.linaro.org service; new accounts will be needed - see the introductory contribution guide https://master.lavasoftware.org/static/docs/v2/contribution-intro.html  and the full https://master.lavasoftware.org/static/docs/v2/contribution.html for more details. The former location on git.linaro.org will be archived in due course.

New repositories exist for the nightly LAVA builds at https://apt.lavasoftware.org/debian/ (using our existing apt signing key) and the documentation is being updated to match. The primary location for test images used in LAVA software functional testing will now be https://files.lavasoftware.org/; a process to add more files to extend the functional tests will follow soon. URLs using http://images.validation.linaro.org/ will continue to be available for a transitional period.

New mailing lists will also be available soon on the lavasoftware.org site. There will be a separate announcement about this shortly; subscriptions are not yet open on the new site.

Contributing to the LSCP
========================

The LAVA Software Community Project has published a Contribution Guide https://master.lavasoftware.org/static/docs/v2/contribution.html; all contributors will be expected to adhere to this when submitting issues or merge requests. These guidelines are designed to clarify the requirements for contributions, to make contributing more efficient for all involved. The contribution guide also includes details of how to switch from the old development process to the new.

We have also adopted a Code of Conduct for the LSCP (https://www.lavasoftware.org/code-of-conduct.html). All participants in the LAVA Software Community Project will be expected to communicate and behave appropriately when working with us.

We request that contributors with currently unmerged Gerrit reviews on https://review.linaro.org/#/q/status:open+lava/lava should move these across into merge requests in the new system at https://git.lavasoftware.org/lava/lava. We will offer help here on request, but will not automatically migrate them ourselves.

All the outstanding LAVA JIRA stories have been converted into GitLab issues at https://git.lavasoftware.org/lava/lava/boards. We intend to use the GitLab workflow for easy integration between CI, issues and merge requests. At some point in the near future, Linaro will disable the LAVA projects on Gerrit (https://review.linaro.org/) and JIRA (https://projects.linaro.org/).

A new way of contributing to LAVA is also under development. A federated functional testing system for LAVA will allow multiple labs to contribute to distributed functional testing of LAVA Software, by running specially designed test jobs on a much wider range of hardware. More details of this will be announced in due course.

Please ensure that you abide by the Code of Conduct and please read the contribution guide https://master.lavasoftware.org/static/docs/v2/contribution.html alongside this announcement. Discussion of our new project structure is very welcome: please post to the existing lava-users mailing list at lava-users@lists.linaro.org. Please note that some details of the LSCP are not yet finalised, so not every question may be answered at this time.

LSCP governance
================

Options for the future governance of the LAVA Software Community Project are being prepared - more details will follow.

--

Neil Williams
=============
neil.williams@linaro.org
http://www.linux.codehelp.co.uk/