User Tools

Site Tools


genesis:genesis_project_proposal

Project Name: Genesis

  • Proposed name for the project: Genesis (GENEral System Installation Services)
  • Proposed name for the repository: genesisreq
  • Project Category: Requirements

Project description

Genesis aims at a common user experience for OPNFV. Genesis defines a common set of requirements for a set of deployment tools used to install OPNFV. It builds on and leverages results of the "Bootstrap/Get-Started" project. Requirements defined by Genesis have to be implemented by all installers which choose to participate in Genesis.

Scope

  • Define a common set of requirements, capabilities and common user-observable behavior of a deployed system that all projects participating in Genesis have to conform to.
  • Maintain common artifacts used by all deployment tools (e.g. build, deploy, or configuration scripts): Evolve and maintain “common” source tree in the existing genesis Gerrit / Git repository and binary artifacts repository. Changes to the common repository will be reviewed and approved by the genesis team in collaboration with the project teams. With a goal of leveraging as much common code as possible.
  • Source and binary files specific to an individual installer will be moved to a separate Gerrit / Git project and directory structure in the artifacts repository. These repositories will be reviewed and approved by the project team associated with the installer.
  • Work hand-in-hand and integrates with projects working on deployment tools ("installers") that have chosen to participate in Genesis.
  • Works hand-in-hand with test projects, release engineering, and CI/CD and define installer requirements for interaction with test projects, release engineering, CI/CD. Example: Definition of an entry point that CI/CD uses to trigger a deployment, such as a "deploy.sh" script (as is already done for Arno).
  • Genesis will serve as an interface for projects with OPNFV Platform dependencies to initiate and prioritize the requests for their requirements. The requesting project is responsible for the integration and implementation work of their requirements. Requesting projects and individual installers will collaborate on the implementation.

Dependencies

  • Deployment tool projects who choose to participate in Genesis (Apex, OpenSteak, Fuel@OPNFV, Compass4NFV, JOID, .. )
  • Testing related projects (Functest, Qtip, Yardstick, Vsperf,…)
  • CD/CI infrasturcture and release engineering (Octopus, Releng)
  • Hardware infrastructure (Pharos)

Committers and Contributors

Note: Genesis committers be lead committers / project leads of projects which have chosen to participate in Genesis. Details on Genesis project governance can be found on the following wiki. The associated statements of support from installer projects which intent to join Genesis are here.

  • Committers:
    • Tim Rozet (trozet@redhat.com) - representing Apex
    • Arnaud Morin (arnaud1.morin@orange.com) - representing OpenSteak
    • Jonas Bjurel (jonas.bjurel@ericsson.com) - representing Fuel@OPNFV
    • Weidong Shao (weidong.shao@huawei.com) - representing Compass4NFV
    • Artur Tyloch (artur.tyloch@canonical.com) - representing JOID
  • Additional contributors:
    • David Blaisonneau (david.blaisonneau@orange.com)

Planned deliverables

  • Requirements for OPNFV deployment tools. Documentation of common requirements can be done in multiple ways, e.g.:
    • Description of a requirement in normal English language (e.g. "Installer must support a deployment to bare metal").
    • Description of a requirement as code (e.g. see "common" part of the genesis repository)

Proposed Release Schedule

The Genesis project provides requirements for a set of projects which provide deployment tools. Genesis implicitly participates in OPNFV releases in that it defines requirements that deployment tools will meet for a specific release.

Key Project Facts

Project Name: genesis
Repo name: genesisreq
Project Category: requirements
Lifecycle State:
Primary Contact: Frank Brockners
Project Lead: Frank Brockners
Jira Project Name: Genesis
Jira Project Prefix: [GENESIS]
mailing list tag [genesis]
Committers:
Tim Rozet (trozet@redhat.com)
Arnaud Morin (arnaud1.morin@orange.com)
Jonas Bjurel (jonas.bjurel@ericsson.com)
Weidong Shao (weidong.shao@huawei.com)
Artur Tyloch (artur.tyloch@canonical.com)
Frank Brockners (fbrockne@cisco.com)

Link to TSC approval: TBD
Link to approval of additional submitters: TBD

genesis/genesis_project_proposal.txt · Last modified: 2015/08/11 09:26 by Frank Brockners