From: Luis Gomez Date: Fri, 27 Apr 2018 08:04:20 +0000 (-0700) Subject: Add int/dist documentation X-Git-Tag: release/fluorine~18 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F98%2F71498%2F2;p=integration%2Fdistribution.git Add int/dist documentation Change-Id: I75ea7552ac8ab49d3debd0b9a6ebfbff1ef8ee78 Signed-off-by: Luis Gomez --- diff --git a/docs/_static/logo.png b/docs/_static/logo.png new file mode 100644 index 00000000..861e1af6 Binary files /dev/null and b/docs/_static/logo.png differ diff --git a/docs/add-project-distribution.rst b/docs/add-project-distribution.rst new file mode 100644 index 00000000..dd1e6485 --- /dev/null +++ b/docs/add-project-distribution.rst @@ -0,0 +1,141 @@ +.. _add-proj-dist: + +Add Projects to distribution +============================ + +Managed Projects +---------------- + +Managed projects must be in the distribution. Follow the next steps below +to add your karaf features to distribution: + +#. Download int/dist repository: + +.. code-block:: bash + + git clone ssh://@git.opendaylight.org:29418/integration/distribution + +#. Make sure the projects you depend are already in the pom file: + +.. code-block:: bash + + features/repos/index/pom.xml + +#. Check your project version is correct in the file: + +.. code-block:: bash + + artifacts/upstream/properties/pom.xml + +#. Declare your feature repositories and user-facing features dependencies: + +If your project artifacts pom.xml contains your karaf feature repos and features, +just add your project artifacts dependency in: + +.. code-block:: bash + + artifacts/upstream/artifacts/pom.xml + +Otherwise add your project feature repositories and your user-facing features to: + +.. code-block:: bash + + artifacts/upstream/feature-repos/pom.xml + artifacts/upstream/single-features/pom.xml + +.. note:: Always add your maven dependencies in alphabethical order. + This also applies to the next steps. + +#. Add your feature repositories in: + +.. code-block:: bash + + features/repos/index/pom.xml + +#. Add your user facing features in either: + +.. code-block:: bash + + features/singles/odl-integration-compatible-with-all/pom.xml + +if your feature is compatible. + +.. code-block:: bash + + features/singles/odl-integration-all/pom.xml + +if your feature is not compatible. + +.. note:: You do not need to add a feature if it is already contained + in another feature you have already included. + +Remember compatible features are those that can co-exist with other features in ODL because: + +* They do not interfere with any other feature +* They are not network intrusive (e.g. configure network devices or push flows out-of-the-box) + +#. Push changes to int/dist and wait for patch verification and review. + +Once the patch is merged your project will be part of the OpenDaylight distribution +and join the distribution-check verification. + + +Self-Managed Projects +--------------------- + +Self-Managed projects must only be in the distribution if they want to be packaged in distrbution +and released at the same time as the Managed projects do. + +Follow the next steps to add your karaf features to the OpenDaylight distribution: + +#. Download int/dist repository: + +.. code-block:: bash + + git clone ssh://@git.opendaylight.org:29418/integration/distribution + +#. Add your feature reporsitory in: + +.. code-block:: bash + + opendaylight/pom.xml + +.. note:: Always add your maven dependencies in alphabethical order. + This also applies to the next steps. + +#. Download releng/builder repository: + +.. code-block:: bash + + git clone ssh://@git.opendaylight.org:29418/releng/builder + +#. Add your feature repo and user-facing features in: + +.. code-block:: bash + + jjb/releng-defaults.yaml + +See this example for the file section: + +.. code-block:: bash + + # Self-Managed projects features + sm-repos: > + mvn:org.opendaylight.sxp/features-sxp/1.7.0-SNAPSHOT/xml/features + + sm-features: > + odl-sxp-controller + +#. Push changes to int/dist and releng/builder and wait for patch verification and review. + +Once the patches are merged your project will be part of the OpenDaylight distribution +and join the distibution-sanity verification. + +.. note:: In order to install a Self-Managed feature, you have to first install the feature repository + in karaf, the example below shows how to install a repository from the karaf console. + +.. code-block:: bash + + opendayligt>feature:repo-add mvn:org.opendaylight.sxp/features-sxp/1.7.0-SNAPSHOT/xml/features + +.. note:: You can alternatively add the repository in the karaf boot file etc/org.apache.karaf.features.cfg diff --git a/docs/conf.py b/docs/conf.py new file mode 100644 index 00000000..925316ab --- /dev/null +++ b/docs/conf.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +# SPDX-License-Identifier: EPL-1.0 +############################################################################## +# Copyright (c) 2018 The Linux Foundation and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +############################################################################## + +from docs_conf.conf import * + diff --git a/docs/conf.yaml b/docs/conf.yaml new file mode 100644 index 00000000..d89613eb --- /dev/null +++ b/docs/conf.yaml @@ -0,0 +1,2 @@ +project_cfg: opendaylight +project: integration/distribution diff --git a/docs/index.rst b/docs/index.rst new file mode 100644 index 00000000..1d38cb01 --- /dev/null +++ b/docs/index.rst @@ -0,0 +1,13 @@ +.. _int-dist: + +Distribution Guide +================== + +This guide provides details about OpenDaylight distribution. + +Contents: + +.. toctree:: + :maxdepth: 2 + + add-project-distribution diff --git a/docs/requirements.txt b/docs/requirements.txt new file mode 100644 index 00000000..74a3b7a3 --- /dev/null +++ b/docs/requirements.txt @@ -0,0 +1 @@ +lfdocs-conf