This is an old revision of the document!
Release Engineering
Project description:
During the first OPNFV release “Arno”, releng is the repository where activities related to automation of the toolchains was implemented. During Arno, this repository did not have an associated project and coordination. Leading into release 2, the Release Engineering project is proposed to establish structure around these activities.
The Release Engineering project proposes to undertake all automation activities required by OPNFV projects to achieve E2E automation in order to make sure all repeating/day to day and release related activites are run in reliable fashion.
Scope:
OPNFV has several projects that require support for automating repeating tasks such as build, deployment, testing, document generation and so on which does not fall under the scope of existing projects. Each of these activities require identification and installation of the necessary tools, creation of corresponding scripts and deployment of Jenkins jobs that will be realized by this project.
Included activities are
propose ways to fully automate repeating tasks of different OPNFV projects and put requirements on them to achieve full automation.
realize the ideas presented by OPNFV projects by identifying and installing tools, creating scripts to automate repeating tasks so they can be re-executed and the results can be reproduced.
create scripts and Jenkins jobs in order to integrate project specific scripts into E2E automation and CI.
maintain automation tools, scripts, Jenkins jobs.
make sure the tools relied on by OPNFV is up and running at all times. (Git/Gerrit, Artifact Repository, Jenkins)
provide technical and educational support to OPNFV community.
identify and document automatic release process for OPNFV.
automate OPNFV release process in order to produce release artifacts and documents for all the projects that participate certain OPNFV release, store produced artifacts on OPNFV Artifact Repository in unified way, tag corresponding versions in SCM/Git repositories, and create stable branches.
create tools and Jenkins jobs to support stable branches.
evaluate and employ new tools in order to increase the efficiency of the automation framework.
Project specific/internal automation activities listed below are excluded from the scope of Release Engineering project.
Testability:
Dependencies:
Octopus/CI project provides the processes and descriptions of the wanted release engineering tasks to be implemented.
BGS/Genesis/Installer Specific projects, and testing projects provide project specific automation build/deployment/test tools/scripts.
Pharos project provides hardware resources to execute automation tools, scripts, and Jenkins Jobs.
Remaining OPNFV Projects provide list of activities to be automated on Jenkins and requirements to be fulfilled.
Committers and Contributors:
Project Leader
Committers
Fatih Degirmenci (Ericsson): fatih.degirmenci@ericsson.com
Aric Gardner (Linux Foundation): agardner@linuxfoundation.org
Tim Rozet (Red Hat): trozet@redhat.com
Morgan Richomme (Orange): morgan.richomme@orange.com
Victor Laza (CloudBase Solutions): vlaza@cloudbasesolutions.com
Contributors
Planned Deliverables:
Proposed Release Schedule:
Key Project Facts
Project Name: Release Engineering
Repo name: releng
Project Category: Integration & Testing
Lifecycle State: Proposal
Primary Contact: fatih.degirmenci@ericsson.com
Project Lead: fatih.degirmenci@ericsson.com
Jira Project Name: Release Engineering
Jira Project Prefix: RELENG
Mailing List Tag: [releng]
Committers:
Fatih Degirmenci (Ericsson): fatih.degirmenci@ericsson.com
Aric Gardner (Linux Foundation): agardner@linuxfoundation.org
Tim Rozet (Red Hat): trozet@redhat.com
Morgan Richomme (Orange): morgan.richomme@orange.com
Victor Laza (CloudBase Solutions): vlaza@cloudbasesolutions.com
Link to TSC approval: N/A
Link to approval of additional submitters: N/A